{
    "ready": true,
    "site": {
        "id": 0,
        "domain": "toolforge.org",
        "display_name": "Portal:Toolforge",
        "primary_country_code": "",
        "category_name": "Lifestyle"
    },
    "metrics": {
        "global_rank": 15980,
        "country_rank": 8373,
        "category_rank": 110,
        "daily_pageviews_per_visitor": 3.71,
        "daily_time_on_site_seconds": 330,
        "bounce_rate": 35.56,
        "search_visits_percent": 36.71,
        "total_sites_linking_in": 9,
        "monthly_unique_visitors": 147,
        "recorded_at": "2026-04-17 07:49:57"
    },
    "audit": {
        "score": 66
    },
    "traffic_sources": {
        "direct_percent": 29.02,
        "search_percent": 32.92,
        "social_percent": 6.97,
        "referral_percent": 14.87,
        "email_percent": 6.97,
        "paid_percent": 9.25
    },
    "seo_profile": {
        "backlinks_total": 9,
        "referring_domains": 9,
        "dofollow_backlinks_percent": 88.89,
        "organic_keywords": 70,
        "indexed_pages": 20,
        "page_speed_score": 70,
        "mobile_friendliness_score": 68,
        "authority_score": 43,
        "spam_risk_score": 14
    },
    "crawl_report": {
        "robots_status": 0,
        "sitemap_status": 0,
        "sitemap_total_urls": 0,
        "crawl_blocked": false,
        "crawl_blocked_by": "",
        "crawl_blocked_reason": "",
        "notes": [
            "Meta description is missing.",
            "robots.txt could not be confirmed.",
            "Sitemap could not be confirmed."
        ],
        "created_at": "2026-04-17 07:49:57"
    },
    "keywords": [
        {
            "keyword": "Portal:Toolforge",
            "position": 20,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 15:10:22",
            "is_estimated": true
        },
        {
            "keyword": "Portal:Toolforge lifestyle",
            "position": 22,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 15:10:22",
            "is_estimated": true
        },
        {
            "keyword": "Portal:Toolforge reviews",
            "position": 24,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 15:10:22",
            "is_estimated": true
        },
        {
            "keyword": "portal",
            "position": 26,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 15:10:22",
            "is_estimated": true
        },
        {
            "keyword": "toolforge",
            "position": 28,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 15:10:22",
            "is_estimated": true
        },
        {
            "keyword": "wikitech",
            "position": 30,
            "search_engine": "Estimated",
            "checked_at": "2026-04-19 15:10:22",
            "is_estimated": true
        }
    ],
    "rating": {
        "overall": 62,
        "label": "Healthy",
        "breakdown": [
            {
                "label": "Technical foundation",
                "score": 8,
                "max": 18
            },
            {
                "label": "Authority & trust",
                "score": 13,
                "max": 30
            },
            {
                "label": "Reach & market presence",
                "score": 3,
                "max": 18
            },
            {
                "label": "Search visibility",
                "score": 3,
                "max": 12
            },
            {
                "label": "Engagement & retention",
                "score": 9,
                "max": 10
            },
            {
                "label": "Channels & diversification",
                "score": 4,
                "max": 6
            },
            {
                "label": "Registry stability",
                "score": 4,
                "max": 6
            },
            {
                "label": "Quality system",
                "score": 44,
                "max": 100
            },
            {
                "label": "Reputation system",
                "score": 44,
                "max": 100
            },
            {
                "label": "Safety system",
                "score": 100,
                "max": 100
            },
            {
                "label": "Evidence confidence",
                "score": 51,
                "max": 100
            },
            {
                "label": "External intelligence",
                "score": 50,
                "max": 100
            }
        ],
        "authority_score": 43,
        "quality_score": 44,
        "reputation_score": 44,
        "safety_score": 100,
        "confidence_score": 51,
        "fraud_score": 0,
        "authority_signals": {
            "backlinks": 9,
            "referring_domains": 9,
            "organic_keywords": 70,
            "indexed_pages": 20,
            "monthly_visitors": 147,
            "global_rank": 15980,
            "engagement_score": 77,
            "crawl_quality_score": 77,
            "brand_completeness_score": 63,
            "link_diversity_score": 96,
            "technical_reliability_score": 62,
            "whois_score": 56,
            "whois_age_years": 8.9,
            "whois_stability_score": 91,
            "spam_penalty": 0
        },
        "whois_signals": {
            "age_years": 8.9,
            "days_to_expiry": 49,
            "days_since_last_registry_update": 343,
            "stability_score": 91,
            "registrar_changes": 0,
            "ownership_changes": 0,
            "nameserver_changes": 0,
            "status_changes": 0,
            "history_entries": 2,
            "privacy_protected": false,
            "dnssec_enabled": false,
            "has_registrant_country": false,
            "registrant_country": "",
            "nameserver_count": 2,
            "status_count": 3
        }
    },
    "authority_score": 43,
    "trust_score": 66,
    "domain_tags": {
        "primary_tag": "T",
        "primary_tag_score": 77,
        "primary_candidate": "T",
        "primary_candidate_score": 77,
        "tag_codes": "T,Uncertain",
        "tags": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good",
                "description": "Strong trust, stability, and low-risk signals were detected.",
                "reason": "Low spam indicators plus strong trust, quality, registry, and stability signals were detected.",
                "message": "The site shows a reasonably trustworthy and stable profile.",
                "priority": 77,
                "score": 77,
                "match_percent": 77,
                "threshold_band": "strong"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown",
                "description": "External checks stayed inconclusive, so the model avoided a harder verdict.",
                "reason": "The evidence is mixed or only partially corroborated, so the system avoided a harder automated verdict.",
                "message": "The evidence is materially mixed or partially corroborated, so the model is avoiding a harder verdict.",
                "priority": 68,
                "score": 68,
                "match_percent": 68,
                "threshold_band": "strong"
            }
        ],
        "tag_breakdown": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good",
                "description": "Strong trust, stability, and low-risk signals were detected.",
                "reason": "Low spam indicators plus strong trust, quality, registry, and stability signals were detected.",
                "message": "The site shows a reasonably trustworthy and stable profile.",
                "priority": 77,
                "score": 77,
                "match_percent": 77,
                "threshold_band": "strong"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown",
                "description": "External checks stayed inconclusive, so the model avoided a harder verdict.",
                "reason": "The evidence is mixed or only partially corroborated, so the system avoided a harder automated verdict.",
                "message": "The evidence is materially mixed or partially corroborated, so the model is avoiding a harder verdict.",
                "priority": 68,
                "score": 68,
                "match_percent": 68,
                "threshold_band": "strong"
            },
            {
                "code": "Infra",
                "label": "Risky infrastructure",
                "tone": "caution",
                "description": "The hosting / registrar / nameserver neighbourhood looks unusually risky.",
                "reason": "The infrastructure neighbourhood looks riskier than normal.",
                "message": "Infrastructure risk does not currently stand out.",
                "priority": 2,
                "score": 2,
                "match_percent": 2,
                "threshold_band": "none"
            },
            {
                "code": "C",
                "label": "Caution",
                "tone": "caution",
                "description": "Signals are mixed or weak, so this domain should be treated carefully.",
                "reason": "Review carefully: mixed trust signals.",
                "message": "The current crawl does not show a meaningful caution match.",
                "priority": 0,
                "score": 0,
                "match_percent": 0,
                "threshold_band": "none"
            },
            {
                "code": "Crypto",
                "label": "Crypto drainer risk",
                "tone": "toxic",
                "description": "Wallet-connect or seed-phrase theft patterns were detected.",
                "reason": "Wallet-connect or seed-phrase theft patterns were detected.",
                "message": "No meaningful crypto-drainer signals were detected.",
                "priority": 0,
                "score": 0,
                "match_percent": 0,
                "threshold_band": "none"
            }
        ],
        "nsfw_score": 0,
        "trust_score": 67,
        "manual": {
            "has_changes": false,
            "verified_status": "",
            "tag_codes": "",
            "rating_delta": 0,
            "authority_delta": 0,
            "trust_delta": 0,
            "note": "",
            "adjusted_by": 0,
            "adjusted_at": "",
            "lock_scores": false,
            "lock_flags": false
        },
        "summary": "Trusted (77% match) because low spam indicators plus strong trust, quality, registry, and stability signals were detected.",
        "external_intel": [],
        "external_decision": [],
        "signal_scores": [
            {
                "label": "Strongest tag heuristic",
                "value": "T · 77%",
                "tone": "good",
                "detail": "The highest raw tag match from the heuristic engine before visibility thresholds and manual overrides."
            },
            {
                "label": "Trust score",
                "value": "67/100",
                "tone": "caution",
                "detail": "Confidence derived from authority, crawl quality, stability, and risk signals."
            },
            {
                "label": "Authority score",
                "value": "43/100",
                "tone": "caution",
                "detail": "A higher authority score usually means broader reputation and backlink confidence."
            },
            {
                "label": "Spam risk",
                "value": "3/100",
                "tone": "good",
                "detail": "Lower is better. This blends spam indicators with false-positive protections for legitimate sites."
            },
            {
                "label": "Quality score",
                "value": "67/100",
                "tone": "good",
                "detail": "Based on crawl quality, content completeness, and technical evidence."
            },
            {
                "label": "Safety score",
                "value": "100/100",
                "tone": "good",
                "detail": "Higher is safer. Direct fraud signals can heavily cap this even when SEO signals look strong."
            },
            {
                "label": "Fraud score",
                "value": "0/100",
                "tone": "good",
                "detail": "Lower is better. This reflects phishing, drainer, fake-support, fake-shop, and malware signals."
            },
            {
                "label": "Infrastructure risk",
                "value": "2/100",
                "tone": "good",
                "detail": "Lower is better. This reflects the IP, registrar, and nameserver neighbourhood seen by the crawler."
            },
            {
                "label": "Evidence confidence",
                "value": "53/100",
                "tone": "caution",
                "detail": "Higher means the crawler had enough pages and registry evidence to make a stronger call."
            },
            {
                "label": "External evidence",
                "value": "Low",
                "tone": "unknown",
                "detail": "Quality of the structured search and review evidence cluster."
            },
            {
                "label": "External decision",
                "value": "Inconclusive",
                "tone": "unknown",
                "detail": "How third-party evidence compares with the current candidate tag."
            },
            {
                "label": "NSFW score",
                "value": "0/100",
                "tone": "good",
                "detail": "Context-aware adult-content detection with medical / educational false-positive reduction."
            },
            {
                "label": "Registry stability",
                "value": "91/100",
                "tone": "good",
                "detail": "Based on age, expiry runway, and the amount of ownership / registrar churn."
            }
        ],
        "signal_sections": [
            {
                "title": "Registry & ownership",
                "items": [
                    {
                        "label": "Domain age",
                        "value": "8.9 years",
                        "tone": "good",
                        "detail": "Older domains generally carry more historical trust than very new ones."
                    },
                    {
                        "label": "Stability score",
                        "value": "91/100",
                        "tone": "good",
                        "detail": "Penalised by registrar, ownership, and nameserver churn."
                    },
                    {
                        "label": "Days to expiry",
                        "value": "49",
                        "tone": "caution",
                        "detail": "Very short renewal windows can be a weak trust signal."
                    },
                    {
                        "label": "Registrar / ownership changes",
                        "value": "0 / 0",
                        "tone": "good",
                        "detail": "Frequent ownership churn can weaken trust."
                    },
                    {
                        "label": "Nameserver changes",
                        "value": "0",
                        "tone": "good",
                        "detail": "Repeated infrastructure changes can indicate instability."
                    },
                    {
                        "label": "DNSSEC / privacy",
                        "value": "DNSSEC off · privacy off",
                        "tone": "caution",
                        "detail": "DNSSEC strengthens DNS trust; privacy is neutral on its own."
                    }
                ]
            },
            {
                "title": "Reputation & search evidence",
                "items": [
                    {
                        "label": "Backlinks",
                        "value": "9",
                        "tone": "unknown",
                        "detail": "Broader backlink evidence usually improves confidence."
                    },
                    {
                        "label": "Referring domains",
                        "value": "9",
                        "tone": "caution",
                        "detail": "Unique linking domains are more useful than raw link volume."
                    },
                    {
                        "label": "Organic keywords",
                        "value": "70",
                        "tone": "caution",
                        "detail": "Search footprint helps distinguish real sites from thin shells."
                    },
                    {
                        "label": "Indexed pages",
                        "value": "20",
                        "tone": "caution",
                        "detail": "Larger index coverage usually means more evidence to classify from."
                    },
                    {
                        "label": "Brand strength",
                        "value": "63/100",
                        "tone": "good",
                        "detail": "Stronger brand signals reduce false positives for legitimate sites."
                    },
                    {
                        "label": "Risk label",
                        "value": "GOOD",
                        "tone": "unknown",
                        "detail": "This is the raw crawl / heuristic risk label feeding the tag model."
                    }
                ]
            },
            {
                "title": "Crawl, content & technicals",
                "items": [
                    {
                        "label": "HTTP status",
                        "value": "200",
                        "tone": "good",
                        "detail": "Healthy responses make classification more reliable."
                    },
                    {
                        "label": "HTTPS / speed",
                        "value": "HTTPS OK · 1,205 ms",
                        "tone": "good",
                        "detail": "Slow or broken technical signals weaken confidence."
                    },
                    {
                        "label": "Content words",
                        "value": "574",
                        "tone": "caution",
                        "detail": "Thin pages are harder to trust and easier to manipulate."
                    },
                    {
                        "label": "Schema / structure",
                        "value": "0 schema · no meta · H1",
                        "tone": "caution",
                        "detail": "Structured markup and basic on-page hygiene improve quality confidence."
                    },
                    {
                        "label": "Links on page",
                        "value": "22 internal · 5 external",
                        "tone": "good",
                        "detail": "Link patterns help detect thin directories and promo pages."
                    },
                    {
                        "label": "Page speed / mobile",
                        "value": "70/100 · 68/100",
                        "tone": "good",
                        "detail": "Better technical quality generally reduces low-effort site patterns."
                    },
                    {
                        "label": "Crawl access",
                        "value": "Open",
                        "tone": "good",
                        "detail": "The crawler reached the site without an anti-bot challenge."
                    }
                ]
            },
            {
                "title": "External evidence & explainability",
                "items": [
                    {
                        "label": "Decision state",
                        "value": "Inconclusive",
                        "tone": "unknown",
                        "detail": "Structured third-party evidence is still too thin, mixed, or unqualified to force a harder verdict."
                    },
                    {
                        "label": "Evidence quality",
                        "value": "Low",
                        "tone": "unknown",
                        "detail": "Blends source trust, domain matching, evidence diversity, and freshness."
                    },
                    {
                        "label": "Support vs contradiction",
                        "value": "0 / 0",
                        "tone": "unknown",
                        "detail": "Compares how much structured external evidence supports the candidate tag against evidence that contradicts it."
                    },
                    {
                        "label": "Qualified risk sources",
                        "value": "No",
                        "tone": "good",
                        "detail": "Risk tags only promote from external evidence when source diversity or source trust thresholds are met."
                    },
                    {
                        "label": "Uncertainty buffer",
                        "value": "Clear",
                        "tone": "good",
                        "detail": "Prevents thin or mixed external evidence from forcing a stronger tag than the evidence can justify."
                    }
                ]
            }
        ],
        "positives": [
            "Established domain age: 8.9 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness."
        ],
        "risks": []
    },
    "traffic_confidence": 47,
    "whois": {
        "current": {
            "id": 6644,
            "domain": "toolforge.org",
            "source_type": "rdap",
            "rdap_url": "https://rdap.publicinterestregistry.org/rdap/domain/toolforge.org",
            "registrar_name": "MarkMonitor Inc.",
            "registrar_handle": "292",
            "registrant_name": "",
            "registrant_org": "",
            "registrant_country": "",
            "registrant_email": "",
            "abuse_email": "abusecomplaints@markmonitor.com",
            "created_date": "2017-06-07 22:58:08",
            "updated_date": "2025-05-11 09:37:53",
            "expires_date": "2026-06-07 22:58:08",
            "nameservers_json": "[\"ns0.openstack.eqiad1.wikimediacloud.org\",\"ns1.openstack.eqiad1.wikimediacloud.org\"]",
            "status_json": "[\"client delete prohibited\",\"client transfer prohibited\",\"client update prohibited\"]",
            "dnssec": "unsigned",
            "privacy_protected": 0,
            "content_hash": "8c20efdfd82469dc35d5ac5f58e13597b033c06f50a32fcef92be849829be533",
            "history_count": 2,
            "last_checked_at": "2026-04-17 07:49:49",
            "last_changed_at": "2026-03-31 03:36:59",
            "created_at": "2026-03-17 02:10:10",
            "updated_at": "2026-04-17 07:49:49"
        },
        "history": [
            {
                "id": 73525,
                "domain": "toolforge.org",
                "source_type": "rdap",
                "registrar_name": "MarkMonitor Inc.",
                "registrar_handle": "292",
                "registrant_name": "",
                "registrant_org": "",
                "registrant_country": "",
                "registrant_email": "",
                "abuse_email": "abusecomplaints@markmonitor.com",
                "created_date": "2017-06-07 22:58:08",
                "updated_date": "2025-05-11 09:37:53",
                "expires_date": "2026-06-07 22:58:08",
                "nameservers_json": "[\"ns0.openstack.eqiad1.wikimediacloud.org\",\"ns1.openstack.eqiad1.wikimediacloud.org\"]",
                "status_json": "[\"client delete prohibited\",\"client transfer prohibited\",\"client update prohibited\"]",
                "dnssec": "unsigned",
                "privacy_protected": 0,
                "content_hash": "8c20efdfd82469dc35d5ac5f58e13597b033c06f50a32fcef92be849829be533",
                "checked_at": "2026-03-31 03:36:59",
                "change_summary": "Periodic WHOIS snapshot refreshed with no major field changes.",
                "created_at": "2026-03-31 03:36:59"
            },
            {
                "id": 6957,
                "domain": "toolforge.org",
                "source_type": "rdap",
                "registrar_name": "MarkMonitor Inc.",
                "registrar_handle": "292",
                "registrant_name": "",
                "registrant_org": "",
                "registrant_country": "",
                "registrant_email": "",
                "abuse_email": "",
                "created_date": "2017-06-07 22:58:08",
                "updated_date": "2025-05-11 09:37:53",
                "expires_date": "2026-06-07 22:58:08",
                "nameservers_json": "[\"ns0.openstack.eqiad1.wikimediacloud.org\",\"ns1.openstack.eqiad1.wikimediacloud.org\"]",
                "status_json": "[\"client delete prohibited\",\"client transfer prohibited\",\"client update prohibited\"]",
                "dnssec": "unsigned",
                "privacy_protected": 0,
                "content_hash": "12fff51e18337ba56d11c2a21507ef438c5620ecb125dcd055bc2f018995a2eb",
                "checked_at": "2026-03-17 02:10:10",
                "change_summary": "Initial WHOIS snapshot captured.",
                "created_at": "2026-03-17 02:10:10"
            }
        ],
        "signals": {
            "age_years": 8.9,
            "days_to_expiry": 49,
            "days_since_last_registry_update": 343,
            "stability_score": 91,
            "registrar_changes": 0,
            "ownership_changes": 0,
            "nameserver_changes": 0,
            "status_changes": 0,
            "history_entries": 2,
            "privacy_protected": false,
            "dnssec_enabled": false,
            "has_registrant_country": false,
            "registrant_country": "",
            "nameserver_count": 2,
            "status_count": 3
        }
    },
    "discovered_domain": {
        "id": 42621,
        "domain": "toolforge.org",
        "first_seen_at": "2026-03-15 15:27:02",
        "last_crawled_at": "2026-04-17 07:49:57",
        "last_title": "Portal:Toolforge - Wikitech",
        "last_http_status": 200,
        "discovered_from_domain": "wikilovesearth.org",
        "depth": 0,
        "backlinks_count": 9,
        "rating_cache": 42,
        "spam_score": 14,
        "risk_label": "good",
        "category_name": "Lifestyle",
        "primary_country_code": "",
        "internal_links_count": 22,
        "external_links_count": 5,
        "social_profiles_count": 1,
        "content_word_count": 574,
        "title_quality_score": 93,
        "has_meta_description": 0,
        "has_h1": 1,
        "language_code": "en",
        "response_time_ms": 1205,
        "robots_status": 0,
        "sitemap_status": 0,
        "sitemap_total_urls": 0,
        "quality_score": 67,
        "site_name": "",
        "canonical_domain": "wikimedia.org",
        "favicon_present": 1,
        "schema_org_count": 0,
        "noindex_detected": 0,
        "feed_links_count": 1,
        "https_working": 1,
        "estimated_authority_score": 33,
        "trust_score": 63,
        "nsfw_score": 0,
        "overall_rank_estimate": 4175395,
        "primary_tag": "C",
        "tag_codes": "C,Uncertain",
        "manual_verified_status": "",
        "manual_tag_codes": "",
        "manual_rating_delta": 0,
        "manual_authority_delta": 0,
        "manual_trust_delta": 0,
        "manual_note": null,
        "manual_adjusted_by": null,
        "manual_adjusted_at": null,
        "manual_lock_scores": 0,
        "manual_lock_flags": 0,
        "crawl_blocked": 0,
        "crawl_blocked_by": "",
        "crawl_blocked_reason": null,
        "safety_score": 100,
        "fraud_score": 0,
        "legitimacy_score": 47,
        "infrastructure_risk_score": 2,
        "score_confidence": 51,
        "tag_confidence": 26,
        "category_confidence": 12,
        "deep_crawl_pages": 0,
        "resolved_ip": "185.15.56.88",
        "category_candidates_json": "[{\"category\":\"Lifestyle\",\"score\":11}]",
        "page_signals_json": "[]",
        "score_reasons_json": "[\"Category confidence was reduced, so the classifier fell back to the broader parent category.\",\"Category evidence stayed thin, so the output was softened to a broader classification.\",\"Trusted status now requires clean crawl access and stronger confidence, so this result was downgraded to caution.\"]",
        "route_domain": "toolforge.org",
        "display_domain": "toolforge.org"
    },
    "explainability": {
        "summary": "toolforge.org currently scores 62/100. The score is being shaped by a mixed signal profile rather than one dominant factor. Evidence confidence is moderate, so the score should settle further after more crawl depth or registry checks. This is an estimated profile rather than a manually tracked one. Crawler access looks clean.",
        "badges": [
            {
                "label": "Profile",
                "value": "Estimated profile",
                "tone": "unknown",
                "detail": null
            },
            {
                "label": "Evidence confidence",
                "value": "Moderate confidence",
                "tone": "caution",
                "detail": "51/100"
            },
            {
                "label": "Traffic confidence",
                "value": "Moderate confidence",
                "tone": "caution",
                "detail": "47/100"
            },
            {
                "label": "Crawler access",
                "value": "Clean visibility",
                "tone": "good",
                "detail": null
            }
        ],
        "weighted_contributions": [
            {
                "label": "Quality system",
                "points": "+15.0",
                "tone": "caution",
                "detail": "Technical quality, crawl depth, page structure, and implementation hygiene. Current subsystem score: 44/100."
            },
            {
                "label": "Reputation system",
                "points": "+15.0",
                "tone": "caution",
                "detail": "Authority, search visibility, reach, engagement, and registry stability. Current subsystem score: 44/100."
            },
            {
                "label": "Safety system",
                "points": "+32.0",
                "tone": "good",
                "detail": "Fraud, spam, and trust signals from infrastructure, crawl, and registry evidence. Current subsystem score: 100/100."
            }
        ],
        "evidence_cards": [
            {
                "label": "Authority and trust",
                "value": "43/100 · trust 66/100",
                "tone": "caution",
                "detail": "147 monthly visitors, 70 organic keywords, brand completeness 63/100, engagement 77/100."
            },
            {
                "label": "Backlink and search evidence",
                "value": "9 referring domains",
                "tone": "good",
                "detail": "9 backlinks across 9 referring domains. Diversity 96/100; spam penalty 0."
            },
            {
                "label": "Registry and domain stability",
                "value": "8.9 years old",
                "tone": "good",
                "detail": "Stability 91/100 · age 8.9 years · registrar MarkMonitor Inc. · expires in 49 days."
            },
            {
                "label": "Safety and fraud posture",
                "value": "Safety 100/100 · fraud 0/100",
                "tone": "good",
                "detail": "Primary tag T · safety 100/100 · fraud 0/100."
            }
        ],
        "positives": [
            "Established domain age: 8.9 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "Registry history looks stable, which supports legitimacy and trust.",
            "The domain has been registered for years, which usually improves trust confidence.",
            "HTTPS is working, so the site clears a basic transport-security check."
        ],
        "risks": [],
        "freshness": [
            {
                "label": "Crawl evidence",
                "value": "2026-04-17 07:49:57",
                "tone": "caution",
                "detail": "Crawl and page content sample. Age: 2d ago."
            },
            {
                "label": "WHOIS snapshot",
                "value": "2026-04-17 07:49:49",
                "tone": "caution",
                "detail": "Registry profile and stability signals. Age: 2d ago."
            },
            {
                "label": "Keyword view",
                "value": "2026-04-19 15:10:22",
                "tone": "good",
                "detail": "Estimated visibility until tracked keyword snapshots exist. Age: 0s ago."
            },
            {
                "label": "Rank history",
                "value": "2026-04-19 15:10:22",
                "tone": "good",
                "detail": "Estimated trend derived from current profile and crawl signals. Age: 0s ago."
            },
            {
                "label": "Audience geography",
                "value": "Not captured yet",
                "tone": "unknown",
                "detail": "Audience mix is estimated from available signals rather than first-party audience logs."
            }
        ],
        "section_notes": {
            "audience": "Audience geography is estimated from category, country, traffic mix, and brand signals until first-party audience data is collected.",
            "keywords": "Top keywords are estimated from crawl language, brand, category, and visibility signals until tracked keyword snapshots are stored.",
            "history": "Rank history is estimated from the current profile because no stored history exists for this domain yet."
        },
        "base_weighted_score": 62,
        "fraud_clamp_penalty": 0,
        "final_score": 62
    },
    "insight_snapshot": {
        "version": 1,
        "generated_at": "2026-04-19T15:10:22+00:00",
        "domain": "toolforge.org",
        "display_name": "Portal:Toolforge",
        "is_tracked": false,
        "is_estimated": true,
        "overall_score": 62,
        "authority_score": 43,
        "trust_score": 66,
        "safety_score": 100,
        "fraud_score": 0,
        "confidence_score": 51,
        "traffic_confidence": 47,
        "last_crawled_at": "2026-04-17 07:49:57",
        "crawl_blocked": false,
        "summary": "toolforge.org currently scores 62/100. The score is being shaped by a mixed signal profile rather than one dominant factor. Evidence confidence is moderate, so the score should settle further after more crawl depth or registry checks. This is an estimated profile rather than a manually tracked one. Crawler access looks clean.",
        "badges": [
            {
                "label": "Profile",
                "value": "Estimated profile",
                "tone": "unknown",
                "detail": null
            },
            {
                "label": "Evidence confidence",
                "value": "Moderate confidence",
                "tone": "caution",
                "detail": "51/100"
            },
            {
                "label": "Traffic confidence",
                "value": "Moderate confidence",
                "tone": "caution",
                "detail": "47/100"
            },
            {
                "label": "Crawler access",
                "value": "Clean visibility",
                "tone": "good",
                "detail": null
            }
        ],
        "top_positive_signals": [
            "Established domain age: 8.9 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "Registry history looks stable, which supports legitimacy and trust.",
            "The domain has been registered for years, which usually improves trust confidence."
        ],
        "top_risk_signals": [],
        "freshness": [
            {
                "label": "Crawl evidence",
                "value": "2026-04-17 07:49:57",
                "tone": "caution",
                "detail": "Crawl and page content sample. Age: 2d ago."
            },
            {
                "label": "WHOIS snapshot",
                "value": "2026-04-17 07:49:49",
                "tone": "caution",
                "detail": "Registry profile and stability signals. Age: 2d ago."
            },
            {
                "label": "Keyword view",
                "value": "2026-04-19 15:10:22",
                "tone": "good",
                "detail": "Estimated visibility until tracked keyword snapshots exist. Age: 0s ago."
            },
            {
                "label": "Rank history",
                "value": "2026-04-19 15:10:22",
                "tone": "good",
                "detail": "Estimated trend derived from current profile and crawl signals. Age: 0s ago."
            },
            {
                "label": "Audience geography",
                "value": "Not captured yet",
                "tone": "unknown",
                "detail": "Audience mix is estimated from available signals rather than first-party audience logs."
            }
        ],
        "top_tags": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown"
            }
        ]
    },
    "is_tracked": false,
    "is_estimated": true,
    "live_state": {
        "status": "processing",
        "status_label": "Cache build running",
        "message": "The refreshed page cache is still being built for this domain.",
        "updated_at": "2026-04-19T19:25:30+00:00"
    },
    "refresh_state": {
        "canRequest": false,
        "queued": true,
        "processing": true,
        "stageKey": "cache-queued",
        "stageLabel": "Cache build running",
        "cooldownUntil": null,
        "message": "The refreshed page cache is still being built for this domain.",
        "action": "/domain/toolforge.org/refresh",
        "isGuestCooldown": false,
        "cooldownSeconds": 0
    },
    "urlscan_report": {
        "domain": "toolforge.org",
        "status": "complete",
        "submitted_at": "2026-03-19T02:50:31+00:00",
        "last_checked_at": "2026-03-23T20:40:12+00:00",
        "last_error": "",
        "submitted_url": "https://toolforge.org/",
        "summary": "urlscan.io report is ready.",
        "uuid": "019d0400-72ee-71b5-905a-7ef239549236",
        "result_url": "https://urlscan.io/result/019d0400-72ee-71b5-905a-7ef239549236/",
        "api_result_url": "https://urlscan.io/api/v1/result/019d0400-72ee-71b5-905a-7ef239549236/",
        "visibility": "public",
        "raw_submit_response": {
            "message": "Submission successful",
            "uuid": "019d0400-72ee-71b5-905a-7ef239549236",
            "result": "https://urlscan.io/result/019d0400-72ee-71b5-905a-7ef239549236/",
            "api": "https://urlscan.io/api/v1/result/019d0400-72ee-71b5-905a-7ef239549236/",
            "visibility": "public",
            "options": [],
            "url": "https://toolforge.org/"
        },
        "report": {
            "data": {
                "requests": [
                    {
                        "request": {
                            "requestId": "F676D12876CEC23674490713BEDFBF59",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                                "method": "GET",
                                "headers": {
                                    "Upgrade-Insecure-Requests": "1",
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "VeryHigh",
                                "referrerPolicy": "strict-origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020809.579564,
                            "wallTime": 1773888632.432501,
                            "initiator": {
                                "type": "other"
                            },
                            "redirectHasExtraInfo": true,
                            "redirectResponse": {
                                "url": "https://www.toolforge.org/",
                                "status": 308,
                                "statusText": "",
                                "headers": {
                                    "content-length": "88",
                                    "content-security-policy-report-only": "default-src 'self' 'unsafe-eval' 'unsafe-inline' blob: data: filesystem: mediastream: *.toolforge.org wikibooks.org *.wikibooks.org wikidata.org *.wikidata.org wikimedia.org *.wikimedia.org wikinews.org *.wikinews.org wikipedia.org *.wikipedia.org wikiquote.org *.wikiquote.org wikisource.org *.wikisource.org wikiversity.org *.wikiversity.org wikivoyage.org *.wikivoyage.org wiktionary.org *.wiktionary.org *.wmcloud.org *.wmflabs.org wikimediafoundation.org mediawiki.org *.mediawiki.org wss://www.toolforge.org; report-uri https://csp-report.toolforge.org/collect;",
                                    "content-type": "text/html; charset=utf-8",
                                    "date": "Thu, 19 Mar 2026 02:50:32 GMT",
                                    "location": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                                    "nel": "{\"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "permissions-policy": "browsing-topics=()",
                                    "report-to": "{\"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{\"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\"}]}",
                                    "strict-transport-security": "max-age=31622400",
                                    "x-clacks-overhead": "GNU Terry Pratchett"
                                },
                                "mimeType": "text/html",
                                "charset": "utf-8",
                                "remoteIPAddress": "[2a02:ec80:a000:1::2bc]",
                                "remotePort": 443,
                                "encodedDataLength": 1241,
                                "timing": {
                                    "requestTime": 41020809.173784,
                                    "proxyStart": -1,
                                    "proxyEnd": -1,
                                    "dnsStart": 0.108,
                                    "dnsEnd": 94.794,
                                    "connectStart": 94.859,
                                    "connectEnd": 298.323,
                                    "sslStart": 194.095,
                                    "sslEnd": 298.317,
                                    "workerStart": -1,
                                    "workerReady": -1,
                                    "workerFetchStart": -1,
                                    "workerRespondWithSettled": -1,
                                    "sendStart": 298.406,
                                    "sendEnd": 298.467,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 404.122,
                                    "receiveHeadersEnd": 405.327
                                },
                                "responseTime": 1773888632430.83,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_256_GCM",
                                    "certificateId": 0,
                                    "subjectName": "toolforge.org",
                                    "sanList": [
                                        "*.svc.toolforge.org",
                                        "*.toolforge.org",
                                        "*.tools.wmflabs.org",
                                        "toolforge.org",
                                        "tools.wmflabs.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770545066,
                                    "validTo": 1778321065,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770548576826,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "30440220657EB93FCA54154D18E31F8EE5CEE878A9DC512C56111C44F761069A85AFB1C802202655BCD391C5A2B00EF985270CB96273D9393B6DC7CD7EA8B946DB48BDEFB979"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "IPng Networks 'Gouda2026h1'",
                                            "logId": "1A8B9D694A5798C899A0CA88BDF48FC0B45660CCC3600D1F71F469FFC7D1ACA3",
                                            "timestamp": 1770548577740,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3045022100D017B95781958F44C88B7EF3572C5908F4CF0A99450338DAF329CB854B05604B02202689953826DF13850F6F34B2EF74EC4010C1AE21FB9325B5C9B2F47D0E7BAF52"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                }
                            },
                            "type": "Document",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false,
                            "primaryRequest": true
                        },
                        "requests": [
                            {
                                "requestId": "F676D12876CEC23674490713BEDFBF59",
                                "loaderId": "F676D12876CEC23674490713BEDFBF59",
                                "documentURL": "https://toolforge.org/",
                                "request": {
                                    "url": "https://toolforge.org/",
                                    "method": "GET",
                                    "headers": {
                                        "Upgrade-Insecure-Requests": "1",
                                        "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36"
                                    },
                                    "mixedContentType": "none",
                                    "initialPriority": "VeryHigh",
                                    "referrerPolicy": "strict-origin-when-cross-origin",
                                    "isSameSite": true
                                },
                                "timestamp": 41020808.774198,
                                "wallTime": 1773888631.627113,
                                "initiator": {
                                    "type": "other"
                                },
                                "redirectHasExtraInfo": false,
                                "type": "Document",
                                "frameId": "987BD5B74F87565524BACCA739680A44",
                                "hasUserGesture": false
                            },
                            {
                                "requestId": "F676D12876CEC23674490713BEDFBF59",
                                "loaderId": "F676D12876CEC23674490713BEDFBF59",
                                "documentURL": "https://www.toolforge.org/",
                                "request": {
                                    "url": "https://www.toolforge.org/",
                                    "method": "GET",
                                    "headers": {
                                        "Upgrade-Insecure-Requests": "1",
                                        "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36"
                                    },
                                    "mixedContentType": "none",
                                    "initialPriority": "VeryHigh",
                                    "referrerPolicy": "strict-origin-when-cross-origin",
                                    "isSameSite": true
                                },
                                "timestamp": 41020809.173634,
                                "wallTime": 1773888632.026564,
                                "initiator": {
                                    "type": "other"
                                },
                                "redirectHasExtraInfo": true,
                                "redirectResponse": {
                                    "url": "https://toolforge.org/",
                                    "status": 301,
                                    "statusText": "",
                                    "headers": {
                                        "content-length": "0",
                                        "content-security-policy-report-only": "default-src 'self' 'unsafe-eval' 'unsafe-inline' blob: data: filesystem: mediastream: *.toolforge.org wikibooks.org *.wikibooks.org wikidata.org *.wikidata.org wikimedia.org *.wikimedia.org wikinews.org *.wikinews.org wikipedia.org *.wikipedia.org wikiquote.org *.wikiquote.org wikisource.org *.wikisource.org wikiversity.org *.wikiversity.org wikivoyage.org *.wikivoyage.org wiktionary.org *.wiktionary.org *.wmcloud.org *.wmflabs.org wikimediafoundation.org mediawiki.org *.mediawiki.org wss://toolforge.org; report-uri https://csp-report.toolforge.org/collect;",
                                        "location": "https://www.toolforge.org",
                                        "nel": "{\"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                        "permissions-policy": "browsing-topics=()",
                                        "report-to": "{\"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{\"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\"}]}",
                                        "strict-transport-security": "max-age=31622400",
                                        "x-clacks-overhead": "GNU Terry Pratchett"
                                    },
                                    "mimeType": "",
                                    "charset": "",
                                    "remoteIPAddress": "2a02:ec80:a000:1::2bc",
                                    "remotePort": 443,
                                    "encodedDataLength": 1055,
                                    "timing": {
                                        "requestTime": 41020808.77454,
                                        "proxyStart": -1,
                                        "proxyEnd": -1,
                                        "dnsStart": 0,
                                        "dnsEnd": 94.567,
                                        "connectStart": 94.639,
                                        "connectEnd": 297.94,
                                        "sslStart": 195.847,
                                        "sslEnd": 297.933,
                                        "workerStart": -1,
                                        "workerReady": -1,
                                        "workerFetchStart": -1,
                                        "workerRespondWithSettled": -1,
                                        "sendStart": 298.034,
                                        "sendEnd": 298.108,
                                        "pushStart": 0,
                                        "pushEnd": 0,
                                        "receiveHeadersStart": 397.525,
                                        "receiveHeadersEnd": 398.663
                                    },
                                    "responseTime": 1773888632024.983,
                                    "protocol": "h2",
                                    "alternateProtocolUsage": "unspecifiedReason",
                                    "securityState": "secure",
                                    "securityDetails": {
                                        "protocol": "TLS 1.3",
                                        "keyExchange": "",
                                        "keyExchangeGroup": "X25519MLKEM768",
                                        "cipher": "AES_256_GCM",
                                        "certificateId": 0,
                                        "subjectName": "toolforge.org",
                                        "sanList": [
                                            "*.svc.toolforge.org",
                                            "*.toolforge.org",
                                            "*.tools.wmflabs.org",
                                            "toolforge.org",
                                            "tools.wmflabs.org"
                                        ],
                                        "issuer": "E8",
                                        "validFrom": 1770545066,
                                        "validTo": 1778321065,
                                        "signedCertificateTimestampList": [
                                            {
                                                "status": "Verified",
                                                "origin": "Embedded in certificate",
                                                "logDescription": "DigiCert 'Wyvern2026h1'",
                                                "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                                "timestamp": 1770548576826,
                                                "hashAlgorithm": "SHA-256",
                                                "signatureAlgorithm": "ECDSA",
                                                "signatureData": "30440220657EB93FCA54154D18E31F8EE5CEE878A9DC512C56111C44F761069A85AFB1C802202655BCD391C5A2B00EF985270CB96273D9393B6DC7CD7EA8B946DB48BDEFB979"
                                            },
                                            {
                                                "status": "Verified",
                                                "origin": "Embedded in certificate",
                                                "logDescription": "IPng Networks 'Gouda2026h1'",
                                                "logId": "1A8B9D694A5798C899A0CA88BDF48FC0B45660CCC3600D1F71F469FFC7D1ACA3",
                                                "timestamp": 1770548577740,
                                                "hashAlgorithm": "SHA-256",
                                                "signatureAlgorithm": "ECDSA",
                                                "signatureData": "3045022100D017B95781958F44C88B7EF3572C5908F4CF0A99450338DAF329CB854B05604B02202689953826DF13850F6F34B2EF74EC4010C1AE21FB9325B5C9B2F47D0E7BAF52"
                                            }
                                        ],
                                        "certificateTransparencyCompliance": "compliant",
                                        "serverSignatureAlgorithm": 1027,
                                        "encryptedClientHello": false
                                    },
                                    "asn": {
                                        "ip": "2a02:ec80:a000:1::2bc",
                                        "asn": "14907",
                                        "country": "US",
                                        "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                        "name": "Wikimedia Foundation Inc.",
                                        "route": "2a02:ec80:a000::/48"
                                    },
                                    "geoip": {
                                        "country": "US",
                                        "region": "",
                                        "timezone": "America/Chicago",
                                        "city": "",
                                        "ll": [
                                            37.751,
                                            -97.822
                                        ],
                                        "country_name": "United States",
                                        "metro": 0
                                    }
                                },
                                "type": "Document",
                                "frameId": "987BD5B74F87565524BACCA739680A44",
                                "hasUserGesture": false
                            },
                            {
                                "requestId": "F676D12876CEC23674490713BEDFBF59",
                                "loaderId": "F676D12876CEC23674490713BEDFBF59",
                                "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                                "request": {
                                    "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                                    "method": "GET",
                                    "headers": {
                                        "Upgrade-Insecure-Requests": "1",
                                        "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36"
                                    },
                                    "mixedContentType": "none",
                                    "initialPriority": "VeryHigh",
                                    "referrerPolicy": "strict-origin-when-cross-origin",
                                    "isSameSite": true
                                },
                                "timestamp": 41020809.579564,
                                "wallTime": 1773888632.432501,
                                "initiator": {
                                    "type": "other"
                                },
                                "redirectHasExtraInfo": true,
                                "redirectResponse": {
                                    "url": "https://www.toolforge.org/",
                                    "status": 308,
                                    "statusText": "",
                                    "headers": {
                                        "content-length": "88",
                                        "content-security-policy-report-only": "default-src 'self' 'unsafe-eval' 'unsafe-inline' blob: data: filesystem: mediastream: *.toolforge.org wikibooks.org *.wikibooks.org wikidata.org *.wikidata.org wikimedia.org *.wikimedia.org wikinews.org *.wikinews.org wikipedia.org *.wikipedia.org wikiquote.org *.wikiquote.org wikisource.org *.wikisource.org wikiversity.org *.wikiversity.org wikivoyage.org *.wikivoyage.org wiktionary.org *.wiktionary.org *.wmcloud.org *.wmflabs.org wikimediafoundation.org mediawiki.org *.mediawiki.org wss://www.toolforge.org; report-uri https://csp-report.toolforge.org/collect;",
                                        "content-type": "text/html; charset=utf-8",
                                        "date": "Thu, 19 Mar 2026 02:50:32 GMT",
                                        "location": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                                        "nel": "{\"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                        "permissions-policy": "browsing-topics=()",
                                        "report-to": "{\"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{\"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\"}]}",
                                        "strict-transport-security": "max-age=31622400",
                                        "x-clacks-overhead": "GNU Terry Pratchett"
                                    },
                                    "mimeType": "text/html",
                                    "charset": "utf-8",
                                    "remoteIPAddress": "2a02:ec80:a000:1::2bc",
                                    "remotePort": 443,
                                    "encodedDataLength": 1241,
                                    "timing": {
                                        "requestTime": 41020809.173784,
                                        "proxyStart": -1,
                                        "proxyEnd": -1,
                                        "dnsStart": 0.108,
                                        "dnsEnd": 94.794,
                                        "connectStart": 94.859,
                                        "connectEnd": 298.323,
                                        "sslStart": 194.095,
                                        "sslEnd": 298.317,
                                        "workerStart": -1,
                                        "workerReady": -1,
                                        "workerFetchStart": -1,
                                        "workerRespondWithSettled": -1,
                                        "sendStart": 298.406,
                                        "sendEnd": 298.467,
                                        "pushStart": 0,
                                        "pushEnd": 0,
                                        "receiveHeadersStart": 404.122,
                                        "receiveHeadersEnd": 405.327
                                    },
                                    "responseTime": 1773888632430.83,
                                    "protocol": "h2",
                                    "alternateProtocolUsage": "unspecifiedReason",
                                    "securityState": "secure",
                                    "securityDetails": {
                                        "protocol": "TLS 1.3",
                                        "keyExchange": "",
                                        "keyExchangeGroup": "X25519MLKEM768",
                                        "cipher": "AES_256_GCM",
                                        "certificateId": 0,
                                        "subjectName": "toolforge.org",
                                        "sanList": [
                                            "*.svc.toolforge.org",
                                            "*.toolforge.org",
                                            "*.tools.wmflabs.org",
                                            "toolforge.org",
                                            "tools.wmflabs.org"
                                        ],
                                        "issuer": "E8",
                                        "validFrom": 1770545066,
                                        "validTo": 1778321065,
                                        "signedCertificateTimestampList": [
                                            {
                                                "status": "Verified",
                                                "origin": "Embedded in certificate",
                                                "logDescription": "DigiCert 'Wyvern2026h1'",
                                                "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                                "timestamp": 1770548576826,
                                                "hashAlgorithm": "SHA-256",
                                                "signatureAlgorithm": "ECDSA",
                                                "signatureData": "30440220657EB93FCA54154D18E31F8EE5CEE878A9DC512C56111C44F761069A85AFB1C802202655BCD391C5A2B00EF985270CB96273D9393B6DC7CD7EA8B946DB48BDEFB979"
                                            },
                                            {
                                                "status": "Verified",
                                                "origin": "Embedded in certificate",
                                                "logDescription": "IPng Networks 'Gouda2026h1'",
                                                "logId": "1A8B9D694A5798C899A0CA88BDF48FC0B45660CCC3600D1F71F469FFC7D1ACA3",
                                                "timestamp": 1770548577740,
                                                "hashAlgorithm": "SHA-256",
                                                "signatureAlgorithm": "ECDSA",
                                                "signatureData": "3045022100D017B95781958F44C88B7EF3572C5908F4CF0A99450338DAF329CB854B05604B02202689953826DF13850F6F34B2EF74EC4010C1AE21FB9325B5C9B2F47D0E7BAF52"
                                            }
                                        ],
                                        "certificateTransparencyCompliance": "compliant",
                                        "serverSignatureAlgorithm": 1027,
                                        "encryptedClientHello": false
                                    },
                                    "asn": {
                                        "ip": "2a02:ec80:a000:1::2bc",
                                        "asn": "14907",
                                        "country": "US",
                                        "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                        "name": "Wikimedia Foundation Inc.",
                                        "route": "2a02:ec80:a000::/48"
                                    },
                                    "geoip": {
                                        "country": "US",
                                        "region": "",
                                        "timezone": "America/Chicago",
                                        "city": "",
                                        "ll": [
                                            37.751,
                                            -97.822
                                        ],
                                        "country_name": "United States",
                                        "metro": 0
                                    }
                                },
                                "type": "Document",
                                "frameId": "987BD5B74F87565524BACCA739680A44",
                                "hasUserGesture": false
                            }
                        ],
                        "response": {
                            "encodedDataLength": 16624,
                            "dataLength": 52946,
                            "requestId": "F676D12876CEC23674490713BEDFBF59",
                            "type": "Document",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "accept-ch": "",
                                    "accept-ranges": "bytes",
                                    "age": "32644",
                                    "cache-control": "private, s-maxage=0, max-age=0, must-revalidate, no-transform",
                                    "content-encoding": "gzip",
                                    "content-language": "en",
                                    "content-length": "12534",
                                    "content-security-policy": "default-src 'unsafe-eval' 'unsafe-inline' 'self' data: blob: *.wikimedia.org *.wikipedia.org *.wikinews.org *.wiktionary.org *.wikibooks.org *.wikiversity.org *.wikisource.org wikisource.org *.wikiquote.org *.wikidata.org *.wikifunctions.org *.wikivoyage.org *.mediawiki.org mediawiki.org wikimedia.org *.wmflabs.org *.wmcloud.org *.toolforge.org *.jsdelivr.net unpkg.com cdnjs.cloudflare.com raw.githubusercontent.com *.github.com code.jquery.com cdn.mathjax.org use.typekit.net fonts.cdnfonts.com use.fontawesome.com i.ytimg.com rsms.me doi.org localhost https://localhost:* http://localhost:* *.google.com *.gstatic.com *.googleapis.com *.translate.yandex.net yastatic.net ya.ru radically.github.io cdn.sammdot.ca cdn.fontshare.com viaf.org publicai-proxy.alaexis.workers.dev iiif.archive.org api.flickr.com live.staticflickr.com api.anthropic.com api.openai.com api.publicai.co catalogo.pusc.it parsifal.urbe.it opac.sbn.it overpass-api.de api.openrouteservice.org archive.org *.openstreetmap.org *.waymarkedtrails.org *.thunderforest.com registry.ipe.wiki analytics.ipe.wiki qlever.dev app.goacoustic.com wikipedia-archive.ourworldindata.org api.inaturalist.org; object-src 'none'; report-uri /w/api.php?action=cspreport&format=json",
                                    "content-security-policy-report-only": "script-src 'unsafe-eval' blob: 'self' meta.wikimedia.org *.wikimedia.org *.wikipedia.org *.wikinews.org *.wiktionary.org *.wikibooks.org *.wikiversity.org *.wikisource.org wikisource.org *.wikiquote.org *.wikidata.org *.wikifunctions.org *.wikivoyage.org *.mediawiki.org 'unsafe-inline' auth.wikimedia.org; default-src 'self' data: blob: upload.wikimedia.org https://commons.wikimedia.org meta.wikimedia.org *.wikimedia.org *.wikipedia.org *.wikinews.org *.wiktionary.org *.wikibooks.org *.wikiversity.org *.wikisource.org wikisource.org *.wikiquote.org *.wikidata.org *.wikifunctions.org *.wikivoyage.org *.mediawiki.org wikimedia.org en.wikibooks.org en.wikinews.org en.wikiquote.org en.wikisource.org en.wikiversity.org en.wikivoyage.org en.wiktionary.org www.mediawiki.org api.wikimedia.org commons.wikimedia.org foundation.wikimedia.org incubator.wikimedia.org species.wikimedia.org wikimania.wikimedia.org www.wikidata.org www.wikifunctions.org auth.wikimedia.org; style-src 'self' data: blob: upload.wikimedia.org https://commons.wikimedia.org meta.wikimedia.org *.wikimedia.org *.wikipedia.org *.wikinews.org *.wiktionary.org *.wikibooks.org *.wikiversity.org *.wikisource.org wikisource.org *.wikiquote.org *.wikidata.org *.wikifunctions.org *.wikivoyage.org *.mediawiki.org wikimedia.org 'unsafe-inline'; object-src 'none'; report-uri /w/api.php?action=cspreport&format=json&reportonly=1",
                                    "content-type": "text/html; charset=UTF-8",
                                    "date": "Wed, 18 Mar 2026 17:46:28 GMT",
                                    "last-modified": "Thu, 05 Mar 2026 20:27:09 GMT",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "server": "ATS/9.2.11",
                                    "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3067\"",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "vary": "Accept-Encoding,X-Subdomain,Cookie,Authorization,User-Agent",
                                    "x-analytics": "",
                                    "x-cache": "cp3067 hit, cp3067 hit/142",
                                    "x-cache-status": "hit-front",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-content-type-options": "nosniff",
                                    "x-request-id": "af76e95c-ee3d-4341-8f18-0c4557b45a4d"
                                },
                                "mimeType": "text/html",
                                "charset": "utf-8",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 14482,
                                "timing": {
                                    "requestTime": 41020809.579727,
                                    "proxyStart": -1,
                                    "proxyEnd": -1,
                                    "dnsStart": 0.128,
                                    "dnsEnd": 121.221,
                                    "connectStart": 121.311,
                                    "connectEnd": 174.693,
                                    "sslStart": 147.997,
                                    "sslEnd": 174.686,
                                    "workerStart": -1,
                                    "workerReady": -1,
                                    "workerFetchStart": -1,
                                    "workerRespondWithSettled": -1,
                                    "sendStart": 174.79,
                                    "sendEnd": 174.873,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 208.936,
                                    "receiveHeadersEnd": 210.01
                                },
                                "responseTime": 1773888632641.603,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Content-Security-Policy",
                                        "value": "default-src 'unsafe-eval' 'unsafe-inline' 'self' data: blob: *.wikimedia.org *.wikipedia.org *.wikinews.org *.wiktionary.org *.wikibooks.org *.wikiversity.org *.wikisource.org wikisource.org *.wikiquote.org *.wikidata.org *.wikifunctions.org *.wikivoyage.org *.mediawiki.org mediawiki.org wikimedia.org *.wmflabs.org *.wmcloud.org *.toolforge.org *.jsdelivr.net unpkg.com cdnjs.cloudflare.com raw.githubusercontent.com *.github.com code.jquery.com cdn.mathjax.org use.typekit.net fonts.cdnfonts.com use.fontawesome.com i.ytimg.com rsms.me doi.org localhost https://localhost:* http://localhost:* *.google.com *.gstatic.com *.googleapis.com *.translate.yandex.net yastatic.net ya.ru radically.github.io cdn.sammdot.ca cdn.fontshare.com viaf.org publicai-proxy.alaexis.workers.dev iiif.archive.org api.flickr.com live.staticflickr.com api.anthropic.com api.openai.com api.publicai.co catalogo.pusc.it parsifal.urbe.it opac.sbn.it overpass-api.de api.openrouteservice.org archive.org *.openstreetmap.org *.waymarkedtrails.org *.thunderforest.com registry.ipe.wiki analytics.ipe.wiki qlever.dev app.goacoustic.com wikipedia-archive.ourworldindata.org api.inaturalist.org; object-src 'none'; report-uri /w/api.php?action=cspreport&format=json"
                                    },
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    },
                                    {
                                        "name": "X-Content-Type-Options",
                                        "value": "nosniff"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "545e1241a88187028fc7cf2f8f8edcdf71f30f6b519c5535e499cbbdfa866f60",
                            "size": 52928,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.2",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.init.styles%7Cext.dismissableSiteNotice.styles%7Cext.uls.pt%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.ui.button%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "VeryHigh",
                                "referrerPolicy": "strict-origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020809.810225,
                            "wallTime": 1773888632.663171,
                            "initiator": {
                                "type": "parser",
                                "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                                "lineNumber": 9,
                                "columnNumber": 431
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Stylesheet",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false,
                            "renderBlockingBehavior": "Blocking"
                        },
                        "response": {
                            "encodedDataLength": 36568,
                            "dataLength": 305594,
                            "requestId": "1405438.2",
                            "type": "Stylesheet",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.init.styles%7Cext.dismissableSiteNotice.styles%7Cext.uls.pt%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.ui.button%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "c2347f3c-a499-43d1-9a72-ae56dd54e193",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "etag": "W/\"ae8tl\"",
                                    "age": "0",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "x-content-type-options": "nosniff",
                                    "expires": "Thu, 19 Mar 2026 02:55:32 GMT",
                                    "server-timing": "cache;desc=\"hit-local\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 hit, cp3067 miss",
                                    "date": "Thu, 19 Mar 2026 02:50:32 GMT",
                                    "content-type": "text/css; charset=utf-8",
                                    "vary": "Accept-Encoding,User-Agent",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-local",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "public, max-age=300, s-maxage=300, stale-while-revalidate=60",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "accept-ranges": "bytes",
                                    "access-control-allow-origin": "*",
                                    "server": "mw-web.eqiad.main-98b584fdd-pz5lk"
                                },
                                "mimeType": "text/css",
                                "charset": "utf-8",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 1047,
                                "timing": {
                                    "requestTime": 41020809.810718,
                                    "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": 0.693,
                                    "sendEnd": 2.32,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 155.173,
                                    "receiveHeadersEnd": 155.262
                                },
                                "responseTime": 1773888632818.811,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    },
                                    {
                                        "name": "X-Content-Type-Options",
                                        "value": "nosniff"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "ea4261dc30d40b295c9793d0fa67effafd3b9f6fd3ea6a083edd26339eb49dfc",
                            "size": 305594,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "host": "wikitech.wikimedia.org",
                            "type": "parser"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.3",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "strict-origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020809.810444,
                            "wallTime": 1773888632.663366,
                            "initiator": {
                                "type": "parser",
                                "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                                "lineNumber": 10,
                                "columnNumber": 111
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Script",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false,
                            "renderBlockingBehavior": "PotentiallyBlocking"
                        },
                        "response": {
                            "encodedDataLength": 18518,
                            "dataLength": 54899,
                            "requestId": "1405438.3",
                            "type": "Script",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "e6c5812b-cc78-4db4-9334-7b841d3282b9",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "etag": "W/\"xey9d\"",
                                    "age": "0",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "x-content-type-options": "nosniff",
                                    "expires": "Thu, 19 Mar 2026 02:55:32 GMT",
                                    "server-timing": "cache;desc=\"hit-local\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 hit, cp3067 miss",
                                    "date": "Thu, 19 Mar 2026 02:50:32 GMT",
                                    "content-type": "text/javascript; charset=utf-8",
                                    "vary": "X-Subdomain, Accept-Encoding,User-Agent",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-local",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "public, max-age=300, s-maxage=300, stale-while-revalidate=60",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "sourcemap": "/w/load.php?lang=en&modules=startup&only=scripts&skin=vector-2022&sourcemap=1&version=xey9d",
                                    "accept-ranges": "bytes",
                                    "server": "mw-web.eqiad.main-98b584fdd-nb68n"
                                },
                                "mimeType": "text/javascript",
                                "charset": "utf-8",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 1186,
                                "timing": {
                                    "requestTime": 41020809.810959,
                                    "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.791,
                                    "sendEnd": 2.081,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 364.535,
                                    "receiveHeadersEnd": 365.379
                                },
                                "responseTime": 1773888633028.441,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    },
                                    {
                                        "name": "X-Content-Type-Options",
                                        "value": "nosniff"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "f637e2cfcee169507265b232704019c6d1c41971eefc22729dbabe6e6d76d78c",
                            "size": 54899,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "host": "wikitech.wikimedia.org",
                            "type": "parser"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.4",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=site.styles&only=styles&skin=vector-2022",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "VeryHigh",
                                "referrerPolicy": "strict-origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020809.81049,
                            "wallTime": 1773888632.663415,
                            "initiator": {
                                "type": "parser",
                                "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                                "lineNumber": 12,
                                "columnNumber": 111
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Stylesheet",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false,
                            "renderBlockingBehavior": "Blocking"
                        },
                        "response": {
                            "encodedDataLength": 2822,
                            "dataLength": 6072,
                            "requestId": "1405438.4",
                            "type": "Stylesheet",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=site.styles&only=styles&skin=vector-2022",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "2f972f04-01d4-4830-8578-253977ceb5ac",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "etag": "W/\"12g0i\"",
                                    "age": "0",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "x-content-type-options": "nosniff",
                                    "expires": "Thu, 19 Mar 2026 02:55:32 GMT",
                                    "server-timing": "cache;desc=\"hit-local\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 hit, cp3067 miss",
                                    "date": "Thu, 19 Mar 2026 02:50:32 GMT",
                                    "content-type": "text/css; charset=utf-8",
                                    "vary": "X-Subdomain, Accept-Encoding,User-Agent",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-local",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "public, max-age=300, s-maxage=300, stale-while-revalidate=60",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "accept-ranges": "bytes",
                                    "access-control-allow-origin": "*",
                                    "server": "mw-web.eqiad.main-98b584fdd-zdpz2"
                                },
                                "mimeType": "text/css",
                                "charset": "utf-8",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 1060,
                                "timing": {
                                    "requestTime": 41020809.811143,
                                    "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": 0.334,
                                    "sendEnd": 1.896,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 136.086,
                                    "receiveHeadersEnd": 136.406
                                },
                                "responseTime": 1773888632800.157,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    },
                                    {
                                        "name": "X-Content-Type-Options",
                                        "value": "nosniff"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "49b01b933057426c18aaa713ef0871b2a45b092e59c657edc2a6762dbe626350",
                            "size": 6071,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "host": "wikitech.wikimedia.org",
                            "type": "parser"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.5",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/static/images/icons/wikitech.svg",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020809.810544,
                            "wallTime": 1773888632.663462,
                            "initiator": {
                                "type": "parser",
                                "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                                "lineNumber": 116,
                                "columnNumber": 116
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Image",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false
                        },
                        "response": {
                            "encodedDataLength": 6414,
                            "dataLength": 16973,
                            "requestId": "1405438.5",
                            "type": "Image",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/static/images/icons/wikitech.svg",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "13233abe-3c15-4ca6-a79f-72f94a9afcf3",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "etag": "W/\"424d-6426794eeb300\"",
                                    "age": "24415",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "expires": "Wed, 17 Mar 2027 20:05:56 GMT",
                                    "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 hit, cp3067 hit/9",
                                    "date": "Wed, 18 Mar 2026 20:03:37 GMT",
                                    "last-modified": "Thu, 30 Oct 2025 22:15:08 GMT",
                                    "content-type": "image/svg+xml",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-front",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "max-age=31536000",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "accept-ranges": "bytes",
                                    "access-control-allow-origin": "*",
                                    "content-length": "5440",
                                    "server": "ATS/9.2.11"
                                },
                                "mimeType": "image/svg+xml",
                                "charset": "",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 6414,
                                "timing": {
                                    "requestTime": 41020809.823627,
                                    "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": 0.507,
                                    "sendEnd": 3.828,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 31.252,
                                    "receiveHeadersEnd": 32.521
                                },
                                "responseTime": 1773888632707.809,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "e5a67c19d54d2bbdc8ac244c1c269bc8bcf4d3663835059da7f4842912ff2864",
                            "size": 22632,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "host": "wikitech.wikimedia.org",
                            "type": "parser"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.6",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/static/images/mobile/copyright/wikitech-wordmark.svg",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Medium",
                                "referrerPolicy": "origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020809.810587,
                            "wallTime": 1773888632.663505,
                            "initiator": {
                                "type": "parser",
                                "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                                "lineNumber": 118,
                                "columnNumber": 148
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Image",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false
                        },
                        "response": {
                            "encodedDataLength": 2096,
                            "dataLength": 2377,
                            "requestId": "1405438.6",
                            "type": "Image",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/static/images/mobile/copyright/wikitech-wordmark.svg",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "9dbd41d0-74d7-4030-a06d-23af4cb8dd0c",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "etag": "W/\"949-6426794eeb300\"",
                                    "age": "26770",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "expires": "Thu, 18 Mar 2027 19:24:21 GMT",
                                    "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 hit, cp3067 hit/17",
                                    "date": "Wed, 18 Mar 2026 19:24:21 GMT",
                                    "last-modified": "Thu, 30 Oct 2025 22:15:08 GMT",
                                    "content-type": "image/svg+xml",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-front",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "max-age=31536000",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "accept-ranges": "bytes",
                                    "access-control-allow-origin": "*",
                                    "content-length": "1122",
                                    "server": "ATS/9.2.11"
                                },
                                "mimeType": "image/svg+xml",
                                "charset": "",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 2096,
                                "timing": {
                                    "requestTime": 41020809.811289,
                                    "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.527,
                                    "sendEnd": 1.751,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 29.314,
                                    "receiveHeadersEnd": 30.525
                                },
                                "responseTime": 1773888632693.531,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "cde4d6dfbbac109d8267b2d3a5000b561f2eed814f4e0e98b67ae9ec9a4c8c81",
                            "size": 3172,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "host": "wikitech.wikimedia.org",
                            "type": "parser"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.7",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://upload.wikimedia.org/wikipedia/commons/thumb/b/b3/Ambox_PR.svg/40px-Ambox_PR.svg.png",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://wikitech.wikimedia.org/"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020809.810633,
                            "wallTime": 1773888632.663554,
                            "initiator": {
                                "type": "parser",
                                "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                                "lineNumber": 459,
                                "columnNumber": 2180
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Image",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false
                        },
                        "response": {
                            "encodedDataLength": 3758,
                            "dataLength": 2640,
                            "requestId": "1405438.7",
                            "type": "Image",
                            "response": {
                                "url": "https://upload.wikimedia.org/wikipedia/commons/thumb/b/b3/Ambox_PR.svg/40px-Ambox_PR.svg.png",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "0bb02d90-c019-41e1-a5af-eb9f5c405491",
                                    "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache",
                                    "x-analytics": "",
                                    "etag": "7603d1fe70a2e1d1e4fca9115c09f387",
                                    "age": "31902",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "x-content-type-options": "nosniff",
                                    "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3075\"",
                                    "x-cache": "cp3075 miss, cp3075 hit/4",
                                    "date": "Wed, 18 Mar 2026 17:58:49 GMT",
                                    "content-type": "image/png",
                                    "content-disposition": "inline;filename*=UTF-8''Ambox_PR.svg.png",
                                    "last-modified": "Thu, 20 Jun 2024 06:53:50 GMT",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-front",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "timing-allow-origin": "*",
                                    "accept-ranges": "bytes",
                                    "access-control-allow-origin": "*",
                                    "content-length": "2640",
                                    "server": "envoy"
                                },
                                "mimeType": "image/png",
                                "charset": "",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::2:b",
                                "remotePort": 443,
                                "encodedDataLength": 3758,
                                "timing": {
                                    "requestTime": 41020809.823778,
                                    "proxyStart": -1,
                                    "proxyEnd": -1,
                                    "dnsStart": 0.047,
                                    "dnsEnd": 94.996,
                                    "connectStart": 95.098,
                                    "connectEnd": 146.738,
                                    "sslStart": 119.796,
                                    "sslEnd": 146.733,
                                    "workerStart": -1,
                                    "workerReady": -1,
                                    "workerFetchStart": -1,
                                    "workerRespondWithSettled": -1,
                                    "sendStart": 146.843,
                                    "sendEnd": 146.911,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 173.02,
                                    "receiveHeadersEnd": 174.245
                                },
                                "responseTime": 1773888632849.727,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "upload.wikimedia.org",
                                    "sanList": [
                                        "maps.wikimedia.org",
                                        "upload.wikimedia.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770878691,
                                    "validTo": 1778654690,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Google 'Xenon2026h1' log",
                                            "logId": "969764BF555897ADF743876837084277E9F03AD5F6A4F3366E46A43F0FCAA9C6",
                                            "timestamp": 1770882201891,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "304502206705E99EA05156B9D857D4308218402BF259FFB270E2CB727C75E335D92AC12B0221008D8C10D5E76C492E6437A67FC0483F6976B8D514D5D9EB8150388018849ED159"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Sectigo 'Elephant2026h1'",
                                            "logId": "D16EA9A568077E6635A03F37A5DDBC03A53C411214D48818F5E931B323CB9504",
                                            "timestamp": 1770882202086,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "304502207866D1BF5D41CF9774310A95853DA8903CC2E83EE3EAD4A6FD338DBB276B8562022100FB6FD8BA017EDCE9F1DDD8041B648E926BB124E95908087487043B3106F4F966"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    },
                                    {
                                        "name": "X-Content-Type-Options",
                                        "value": "nosniff"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "4476fd51cbb5ea255c8fb20df06bc59d3143b82f7a02907376380189a93a6423",
                            "size": 3520,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::2:b",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "host": "wikitech.wikimedia.org",
                            "type": "parser"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.13",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons&image=menu&format=original&lang=en&skin=vector-2022&version=94rrm",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Origin": "https://wikitech.wikimedia.org",
                                    "Referer": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.init.styles%7Cext.dismissableSiteNotice.styles%7Cext.uls.pt%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.ui.button%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "strict-origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020810.001028,
                            "wallTime": 1773888632.853955,
                            "initiator": {
                                "type": "parser",
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.init.styles%7Cext.dismissableSiteNotice.styles%7Cext.uls.pt%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.ui.button%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022"
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Image",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false
                        },
                        "response": {
                            "encodedDataLength": 1111,
                            "dataLength": 221,
                            "requestId": "1405438.13",
                            "type": "Image",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons&image=menu&format=original&lang=en&skin=vector-2022&version=94rrm",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "7f238a0c-d4f9-4f56-9525-741b448cc4b9",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "etag": "W/\"94rrm\"",
                                    "age": "0",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "x-content-type-options": "nosniff",
                                    "expires": "Fri, 17 Apr 2026 08:22:20 GMT",
                                    "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 miss, cp3067 hit/32",
                                    "date": "Wed, 18 Mar 2026 08:22:20 GMT",
                                    "content-disposition": "inline;filename*=UTF-8''menu.svg",
                                    "content-type": "image/svg+xml",
                                    "vary": "Accept-Encoding,User-Agent",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-front",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "public, max-age=2592000, s-maxage=2592000, stale-while-revalidate=60",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "accept-ranges": "bytes",
                                    "access-control-allow-origin": "*",
                                    "content-length": "195",
                                    "server": "mw-web.eqiad.main-55cb4c7796-77kw2"
                                },
                                "mimeType": "image/svg+xml",
                                "charset": "",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 1111,
                                "timing": {
                                    "requestTime": 41020810.001206,
                                    "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": 0.156,
                                    "sendEnd": 0.243,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 25.8,
                                    "receiveHeadersEnd": 26.053
                                },
                                "responseTime": 1773888632879.937,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    },
                                    {
                                        "name": "X-Content-Type-Options",
                                        "value": "nosniff"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "4de5f25341a457e9fbcf7c29c44158d94ce7f74e91f92ae30b03fe7606716d08",
                            "size": 296,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.init.styles%7Cext.dismissableSiteNotice.styles%7Cext.uls.pt%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.ui.button%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022",
                            "host": "wikitech.wikimedia.org",
                            "type": "parser"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.14",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "data:truncated",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Origin": "https://wikitech.wikimedia.org",
                                    "Referer": ""
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "strict-origin-when-cross-origin",
                                "isSameSite": false
                            },
                            "timestamp": 41020810.002472,
                            "wallTime": 1773888632.855401,
                            "initiator": {
                                "type": "parser",
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.init.styles%7Cext.dismissableSiteNotice.styles%7Cext.uls.pt%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.ui.button%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022"
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Image",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false
                        },
                        "response": {
                            "encodedDataLength": 0,
                            "dataLength": 185,
                            "requestId": "1405438.14",
                            "type": "Image",
                            "response": {
                                "url": "data:truncated",
                                "status": 200,
                                "statusText": "OK",
                                "headers": {
                                    "Content-Type": "image/svg+xml"
                                },
                                "mimeType": "image/svg+xml",
                                "charset": "",
                                "encodedDataLength": 0,
                                "protocol": "data",
                                "securityState": "unknown"
                            },
                            "hasExtraInfo": false,
                            "hash": "7a85a9bbf014ed6489d73fd297ed80c2d04fee0936360a469b4fe82fd72c42fe",
                            "size": 248
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.15",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons&image=language&format=original&lang=en&skin=vector-2022&version=94rrm",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Origin": "https://wikitech.wikimedia.org",
                                    "Referer": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.init.styles%7Cext.dismissableSiteNotice.styles%7Cext.uls.pt%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.ui.button%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "strict-origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020810.002794,
                            "wallTime": 1773888632.855719,
                            "initiator": {
                                "type": "parser",
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.init.styles%7Cext.dismissableSiteNotice.styles%7Cext.uls.pt%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.ui.button%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022"
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Image",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false
                        },
                        "response": {
                            "encodedDataLength": 1364,
                            "dataLength": 704,
                            "requestId": "1405438.15",
                            "type": "Image",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons&image=language&format=original&lang=en&skin=vector-2022&version=94rrm",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "f71264f8-1080-4465-b26e-b3827271328c",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "etag": "W/\"94rrm\"",
                                    "age": "0",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "x-content-type-options": "nosniff",
                                    "expires": "Fri, 17 Apr 2026 08:22:20 GMT",
                                    "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 miss, cp3067 hit/37",
                                    "date": "Wed, 18 Mar 2026 08:22:20 GMT",
                                    "content-disposition": "inline;filename*=UTF-8''language.svg",
                                    "content-type": "image/svg+xml",
                                    "vary": "Accept-Encoding,User-Agent",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-front",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "public, max-age=2592000, s-maxage=2592000, stale-while-revalidate=60",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "accept-ranges": "bytes",
                                    "access-control-allow-origin": "*",
                                    "content-length": "444",
                                    "server": "mw-web.eqiad.main-55cb4c7796-ks7xh"
                                },
                                "mimeType": "image/svg+xml",
                                "charset": "",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 1364,
                                "timing": {
                                    "requestTime": 41020810.002988,
                                    "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": 0.177,
                                    "sendEnd": 0.256,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 26.306,
                                    "receiveHeadersEnd": 27.464
                                },
                                "responseTime": 1773888632882.217,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    },
                                    {
                                        "name": "X-Content-Type-Options",
                                        "value": "nosniff"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "0b220227b2e52d8724a40010b8c132ece82695fa99d6ae725093c3c8630a0172",
                            "size": 940,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.init.styles%7Cext.dismissableSiteNotice.styles%7Cext.uls.pt%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.ui.button%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022",
                            "host": "wikitech.wikimedia.org",
                            "type": "parser"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.20",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "data:truncated",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Origin": "https://wikitech.wikimedia.org",
                                    "Referer": ""
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "strict-origin-when-cross-origin",
                                "isSameSite": false
                            },
                            "timestamp": 41020810.015313,
                            "wallTime": 1773888632.868242,
                            "initiator": {
                                "type": "parser",
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.init.styles%7Cext.dismissableSiteNotice.styles%7Cext.uls.pt%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.ui.button%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022"
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Image",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false
                        },
                        "response": {
                            "encodedDataLength": 0,
                            "dataLength": 155,
                            "requestId": "1405438.20",
                            "type": "Image",
                            "response": {
                                "url": "data:truncated",
                                "status": 200,
                                "statusText": "OK",
                                "headers": {
                                    "Content-Type": "image/svg+xml"
                                },
                                "mimeType": "image/svg+xml",
                                "charset": "",
                                "encodedDataLength": 0,
                                "protocol": "data",
                                "securityState": "unknown"
                            },
                            "hasExtraInfo": false,
                            "hash": "6ea08036102c02c8a1b804e21361c4b7422b0c9bbb40994f361a28aa6436540f",
                            "size": 208
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.21",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/w/skins/Vector/resources/skins.vector.styles/images/link-external-small-ltr-progressive.svg?fb64d",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.init.styles%7Cext.dismissableSiteNotice.styles%7Cext.uls.pt%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.ui.button%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "strict-origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020810.015952,
                            "wallTime": 1773888632.868873,
                            "initiator": {
                                "type": "parser",
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.init.styles%7Cext.dismissableSiteNotice.styles%7Cext.uls.pt%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.ui.button%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022"
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Image",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false
                        },
                        "response": {
                            "encodedDataLength": 1054,
                            "dataLength": 298,
                            "requestId": "1405438.21",
                            "type": "Image",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/w/skins/Vector/resources/skins.vector.styles/images/link-external-small-ltr-progressive.svg?fb64d",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "86f3bfc6-ed7d-4d42-a385-582aa1b4510c",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "age": "32430",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "x-content-type-options": "nosniff",
                                    "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 miss, cp3067 hit/253452",
                                    "date": "Wed, 18 Mar 2026 17:50:02 GMT",
                                    "last-modified": "Tue, 17 Mar 2026 03:01:53 GMT",
                                    "content-type": "image/svg+xml",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-front",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "public, s-maxage=31536000, max-age=31536000, immutable",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "accept-ranges": "bytes",
                                    "access-control-allow-origin": "*",
                                    "content-length": "241",
                                    "server": "ATS/9.2.11"
                                },
                                "mimeType": "image/svg+xml",
                                "charset": "",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 1054,
                                "timing": {
                                    "requestTime": 41020810.016255,
                                    "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.81,
                                    "sendEnd": 2.571,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 28.056,
                                    "receiveHeadersEnd": 28.191
                                },
                                "responseTime": 1773888632897.241,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    },
                                    {
                                        "name": "X-Content-Type-Options",
                                        "value": "nosniff"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "b324430a72a978ffc29853c1dbb95679833c58b30e5b5d10e5063f96f98c5ba2",
                            "size": 400,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.init.styles%7Cext.dismissableSiteNotice.styles%7Cext.uls.pt%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.ui.button%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022",
                            "host": "wikitech.wikimedia.org",
                            "type": "parser"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.18",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/static/images/footer/wikimedia-button.svg",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020810.026356,
                            "wallTime": 1773888632.879315,
                            "initiator": {
                                "type": "parser",
                                "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                                "lineNumber": 669,
                                "columnNumber": 8
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Image",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false
                        },
                        "response": {
                            "encodedDataLength": 2393,
                            "dataLength": 3256,
                            "requestId": "1405438.18",
                            "type": "Image",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/static/images/footer/wikimedia-button.svg",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "3d3f2d17-9b34-4751-9363-dca083046d39",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "etag": "W/\"cb8-6426794eeb300\"",
                                    "age": "32485",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "expires": "Thu, 18 Mar 2027 17:49:07 GMT",
                                    "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 miss, cp3067 hit/202556",
                                    "date": "Wed, 18 Mar 2026 17:49:07 GMT",
                                    "last-modified": "Thu, 30 Oct 2025 22:15:08 GMT",
                                    "content-type": "image/svg+xml",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-front",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "max-age=31536000",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "accept-ranges": "bytes",
                                    "access-control-allow-origin": "*",
                                    "content-length": "1595",
                                    "server": "ATS/9.2.11"
                                },
                                "mimeType": "image/svg+xml",
                                "charset": "",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 2393,
                                "timing": {
                                    "requestTime": 41020810.026617,
                                    "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": 0.316,
                                    "sendEnd": 1.05,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 26.076,
                                    "receiveHeadersEnd": 26.361
                                },
                                "responseTime": 1773888632905.618,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "0c2aa872dd39b943efde8b4e444bd7c627e5ab740684356046bbb8a2248b57cd",
                            "size": 4344,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "host": "wikitech.wikimedia.org",
                            "type": "parser"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.19",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/w/resources/assets/poweredby_mediawiki.svg",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020810.02646,
                            "wallTime": 1773888632.87938,
                            "initiator": {
                                "type": "parser",
                                "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                                "lineNumber": 669,
                                "columnNumber": 8
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Image",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false
                        },
                        "response": {
                            "encodedDataLength": 5189,
                            "dataLength": 14576,
                            "requestId": "1405438.19",
                            "type": "Image",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/w/resources/assets/poweredby_mediawiki.svg",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "3192a1f7-cc1f-4c03-a0db-257850035424",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "age": "29831",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "x-content-type-options": "nosniff",
                                    "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 miss, cp3067 hit/178268",
                                    "date": "Wed, 18 Mar 2026 18:33:21 GMT",
                                    "last-modified": "Tue, 17 Mar 2026 03:00:57 GMT",
                                    "content-type": "image/svg+xml",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-front",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "public, s-maxage=31536000, max-age=31536000, must-revalidate",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "accept-ranges": "bytes",
                                    "access-control-allow-origin": "*",
                                    "content-length": "4369",
                                    "server": "ATS/9.2.11"
                                },
                                "mimeType": "image/svg+xml",
                                "charset": "",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 5189,
                                "timing": {
                                    "requestTime": 41020810.026817,
                                    "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": 0.327,
                                    "sendEnd": 0.851,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 27.844,
                                    "receiveHeadersEnd": 29.236
                                },
                                "responseTime": 1773888632907.588,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    },
                                    {
                                        "name": "X-Content-Type-Options",
                                        "value": "nosniff"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "75444929595b7c4040288c822835ce3e8f82d7b67eb6b9a3546765ad74698ede",
                            "size": 19436,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "host": "wikitech.wikimedia.org",
                            "type": "parser"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.24",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.gadget.site&skin=vector-2022&version=1tcgt",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020810.187778,
                            "wallTime": 1773888633.041906,
                            "initiator": {
                                "type": "script",
                                "stack": {
                                    "callFrames": [
                                        {
                                            "functionName": "addScript",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 8,
                                            "columnNumber": 390
                                        },
                                        {
                                            "functionName": "doRequest",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 12,
                                            "columnNumber": 925
                                        },
                                        {
                                            "functionName": "batchRequest",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 14,
                                            "columnNumber": 148
                                        },
                                        {
                                            "functionName": "work",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 16,
                                            "columnNumber": 67
                                        },
                                        {
                                            "functionName": "enqueue",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 9,
                                            "columnNumber": 843
                                        },
                                        {
                                            "functionName": "load",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 18,
                                            "columnNumber": 214
                                        },
                                        {
                                            "functionName": "",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 22,
                                            "columnNumber": 79
                                        },
                                        {
                                            "functionName": "",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 22,
                                            "columnNumber": 288
                                        }
                                    ]
                                }
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Script",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false,
                            "renderBlockingBehavior": "NonBlocking"
                        },
                        "response": {
                            "encodedDataLength": 2960,
                            "dataLength": 5307,
                            "requestId": "1405438.24",
                            "type": "Script",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.gadget.site&skin=vector-2022&version=1tcgt",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "db061ed5-621a-4c2c-b96c-bdb15d1136a9",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "etag": "W/\"1tcgt\"",
                                    "age": "0",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "x-content-type-options": "nosniff",
                                    "expires": "Thu, 16 Apr 2026 20:05:56 GMT",
                                    "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 hit, cp3067 hit/4",
                                    "date": "Wed, 18 Mar 2026 20:03:37 GMT",
                                    "content-type": "text/javascript; charset=utf-8",
                                    "vary": "Accept-Encoding,User-Agent",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-front",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "public, max-age=2592000, s-maxage=2592000, stale-while-revalidate=60",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "sourcemap": "/w/load.php?lang=en&modules=ext.gadget.site&skin=vector-2022&sourcemap=1&version=1tcgt",
                                    "accept-ranges": "bytes",
                                    "content-length": "1991",
                                    "server": "ATS/9.2.11"
                                },
                                "mimeType": "text/javascript",
                                "charset": "utf-8",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 2960,
                                "timing": {
                                    "requestTime": 41020810.189238,
                                    "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": 0.406,
                                    "sendEnd": 0.581,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 27.307,
                                    "receiveHeadersEnd": 27.731
                                },
                                "responseTime": 1773888633069.491,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    },
                                    {
                                        "name": "X-Content-Type-Options",
                                        "value": "nosniff"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "66f479b89370db78f7936781dacebd22d2513a885dcd886805518b69b1326993",
                            "size": 5307,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                            "host": "wikitech.wikimedia.org",
                            "type": "script"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.25",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.core.utils.parsing%7Cext.visualEditor.desktopArticleTarget.init%7Cext.visualEditor.progressBarWidget%2CsupportCheck%2CtargetLoader%2CtempWikitextEditorWidget%2Ctrack%2Cve&skin=vector-2022&version=1hirg",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020810.189163,
                            "wallTime": 1773888633.042093,
                            "initiator": {
                                "type": "script",
                                "stack": {
                                    "callFrames": [
                                        {
                                            "functionName": "addScript",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 8,
                                            "columnNumber": 390
                                        },
                                        {
                                            "functionName": "doRequest",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 12,
                                            "columnNumber": 925
                                        },
                                        {
                                            "functionName": "batchRequest",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 14,
                                            "columnNumber": 148
                                        },
                                        {
                                            "functionName": "work",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 16,
                                            "columnNumber": 67
                                        },
                                        {
                                            "functionName": "enqueue",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 9,
                                            "columnNumber": 843
                                        },
                                        {
                                            "functionName": "load",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 18,
                                            "columnNumber": 214
                                        },
                                        {
                                            "functionName": "",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 22,
                                            "columnNumber": 79
                                        },
                                        {
                                            "functionName": "",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 22,
                                            "columnNumber": 288
                                        }
                                    ]
                                }
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Script",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false,
                            "renderBlockingBehavior": "NonBlocking"
                        },
                        "response": {
                            "encodedDataLength": 17944,
                            "dataLength": 61036,
                            "requestId": "1405438.25",
                            "type": "Script",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.core.utils.parsing%7Cext.visualEditor.desktopArticleTarget.init%7Cext.visualEditor.progressBarWidget%2CsupportCheck%2CtargetLoader%2CtempWikitextEditorWidget%2Ctrack%2Cve&skin=vector-2022&version=1hirg",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "44ebb8bd-a7de-4340-9dde-78717d977bb3",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "etag": "W/\"1hirg\"",
                                    "age": "0",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "x-content-type-options": "nosniff",
                                    "expires": "Fri, 17 Apr 2026 08:22:18 GMT",
                                    "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 miss, cp3067 hit/26",
                                    "date": "Wed, 18 Mar 2026 08:22:18 GMT",
                                    "content-type": "text/javascript; charset=utf-8",
                                    "vary": "Accept-Encoding,User-Agent",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-front",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "public, max-age=2592000, s-maxage=2592000, stale-while-revalidate=60",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "sourcemap": "/w/load.php?lang=en&modules=ext.visualEditor.core.utils.parsing%7Cext.visualEditor.desktopArticleTarget.init%7Cext.visualEditor.progressBarWidget%2CsupportCheck%2CtargetLoader%2CtempWikitextEditorWidget%2Ctrack%2Cve&skin=vector-2022&sourcemap=1&version=1hirg",
                                    "accept-ranges": "bytes",
                                    "content-length": "16765",
                                    "server": "mw-web.eqiad.main-55cb4c7796-fv7gq"
                                },
                                "mimeType": "text/javascript",
                                "charset": "utf-8",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 14617,
                                "timing": {
                                    "requestTime": 41020810.189439,
                                    "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": 0.26,
                                    "sendEnd": 0.381,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 31.26,
                                    "receiveHeadersEnd": 31.745
                                },
                                "responseTime": 1773888633073.63,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    },
                                    {
                                        "name": "X-Content-Type-Options",
                                        "value": "nosniff"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "0b5191439548225b80c8ec830cbda7e898194418559f68d65ba743444734baff",
                            "size": 61034,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                            "host": "wikitech.wikimedia.org",
                            "type": "script"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.26",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020810.189358,
                            "wallTime": 1773888633.042284,
                            "initiator": {
                                "type": "script",
                                "stack": {
                                    "callFrames": [
                                        {
                                            "functionName": "addScript",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 8,
                                            "columnNumber": 390
                                        },
                                        {
                                            "functionName": "doRequest",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 12,
                                            "columnNumber": 925
                                        },
                                        {
                                            "functionName": "batchRequest",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 14,
                                            "columnNumber": 148
                                        },
                                        {
                                            "functionName": "work",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 16,
                                            "columnNumber": 67
                                        },
                                        {
                                            "functionName": "enqueue",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 9,
                                            "columnNumber": 843
                                        },
                                        {
                                            "functionName": "load",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 18,
                                            "columnNumber": 214
                                        },
                                        {
                                            "functionName": "",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 22,
                                            "columnNumber": 79
                                        },
                                        {
                                            "functionName": "",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 22,
                                            "columnNumber": 288
                                        }
                                    ]
                                }
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Script",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false,
                            "renderBlockingBehavior": "NonBlocking"
                        },
                        "response": {
                            "encodedDataLength": 334352,
                            "dataLength": 1466217,
                            "requestId": "1405438.26",
                            "type": "Script",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "93c8d023-8339-4669-8279-eb59f5212893",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "etag": "W/\"xcziv\"",
                                    "age": "0",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "x-content-type-options": "nosniff",
                                    "expires": "Fri, 17 Apr 2026 15:04:21 GMT",
                                    "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 miss, cp3067 hit/2",
                                    "date": "Wed, 18 Mar 2026 15:04:21 GMT",
                                    "content-type": "text/javascript; charset=utf-8",
                                    "vary": "X-Subdomain, Accept-Encoding,User-Agent",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-front",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "public, max-age=2592000, s-maxage=2592000, stale-while-revalidate=60",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "sourcemap": "/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&sourcemap=1&version=xcziv",
                                    "accept-ranges": "bytes",
                                    "content-length": "332214",
                                    "server": "mw-web.eqiad.main-757669f757-qsldh"
                                },
                                "mimeType": "text/javascript",
                                "charset": "utf-8",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 14615,
                                "timing": {
                                    "requestTime": 41020810.189542,
                                    "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": 0.19,
                                    "sendEnd": 0.278,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 35.373,
                                    "receiveHeadersEnd": 36.182
                                },
                                "responseTime": 1773888633077.84,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    },
                                    {
                                        "name": "X-Content-Type-Options",
                                        "value": "nosniff"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "f0dc927e794cdc87464e19497d959a087488e7d82606e71bc4343937b69e1205",
                            "size": 1462530,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                            "host": "wikitech.wikimedia.org",
                            "type": "script"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.27",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://auth.wikimedia.org/metawiki/wiki/Special:CentralAutoLogin/checkLoggedIn?useformat=desktop&wikiid=labswiki&usesul3=1&type=script",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://wikitech.wikimedia.org/"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020810.394413,
                            "wallTime": 1773888633.247336,
                            "initiator": {
                                "type": "other"
                            },
                            "redirectHasExtraInfo": true,
                            "redirectResponse": {
                                "url": "https://wikitech.wikimedia.org/wiki/Special:CentralAutoLogin/start?useformat=desktop&type=script&usesul3=1",
                                "status": 302,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "420490f9-e3b2-4fb5-b8f2-f03f23a463ae",
                                    "x-analytics": "",
                                    "age": "84",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "x-content-type-options": "nosniff",
                                    "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 miss, cp3067 hit/1",
                                    "date": "Thu, 19 Mar 2026 02:49:09 GMT",
                                    "content-type": "text/html; charset=UTF-8",
                                    "vary": "Accept-Encoding,X-Forwarded-Proto,Cookie,Authorization,User-Agent",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-front",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "content-security-policy": "default-src 'unsafe-eval' 'unsafe-inline' 'self' data: blob: *.wikimedia.org *.wikipedia.org *.wikinews.org *.wiktionary.org *.wikibooks.org *.wikiversity.org *.wikisource.org wikisource.org *.wikiquote.org *.wikidata.org *.wikifunctions.org *.wikivoyage.org *.mediawiki.org mediawiki.org wikimedia.org *.wmflabs.org *.wmcloud.org *.toolforge.org *.jsdelivr.net unpkg.com cdnjs.cloudflare.com raw.githubusercontent.com *.github.com code.jquery.com cdn.mathjax.org use.typekit.net fonts.cdnfonts.com use.fontawesome.com i.ytimg.com rsms.me doi.org localhost https://localhost:* http://localhost:* *.google.com *.gstatic.com *.googleapis.com *.translate.yandex.net yastatic.net ya.ru radically.github.io cdn.sammdot.ca cdn.fontshare.com viaf.org publicai-proxy.alaexis.workers.dev iiif.archive.org api.flickr.com live.staticflickr.com api.anthropic.com api.openai.com api.publicai.co catalogo.pusc.it parsifal.urbe.it opac.sbn.it overpass-api.de api.openrouteservice.org archive.org *.openstreetmap.org *.waymarkedtrails.org *.thunderforest.com registry.ipe.wiki analytics.ipe.wiki qlever.dev app.goacoustic.com wikipedia-archive.ourworldindata.org api.inaturalist.org; object-src 'none'; report-uri /w/api.php?action=cspreport&format=json",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "location": "https://auth.wikimedia.org/metawiki/wiki/Special:CentralAutoLogin/checkLoggedIn?useformat=desktop&wikiid=labswiki&usesul3=1&type=script",
                                    "cache-control": "private, s-maxage=0, max-age=0, must-revalidate, no-transform",
                                    "accept-ch": "",
                                    "content-security-policy-report-only": "script-src 'unsafe-eval' blob: 'self' meta.wikimedia.org *.wikimedia.org *.wikipedia.org *.wikinews.org *.wiktionary.org *.wikibooks.org *.wikiversity.org *.wikisource.org wikisource.org *.wikiquote.org *.wikidata.org *.wikifunctions.org *.wikivoyage.org *.mediawiki.org 'unsafe-inline' auth.wikimedia.org; default-src 'self' data: blob: upload.wikimedia.org https://commons.wikimedia.org meta.wikimedia.org *.wikimedia.org *.wikipedia.org *.wikinews.org *.wiktionary.org *.wikibooks.org *.wikiversity.org *.wikisource.org wikisource.org *.wikiquote.org *.wikidata.org *.wikifunctions.org *.wikivoyage.org *.mediawiki.org wikimedia.org en.wikibooks.org en.wikinews.org en.wikiquote.org en.wikisource.org en.wikiversity.org en.wikivoyage.org en.wiktionary.org www.mediawiki.org api.wikimedia.org commons.wikimedia.org foundation.wikimedia.org incubator.wikimedia.org species.wikimedia.org wikimania.wikimedia.org www.wikidata.org www.wikifunctions.org auth.wikimedia.org; style-src 'self' data: blob: upload.wikimedia.org https://commons.wikimedia.org meta.wikimedia.org *.wikimedia.org *.wikipedia.org *.wikinews.org *.wiktionary.org *.wikibooks.org *.wikiversity.org *.wikisource.org wikisource.org *.wikiquote.org *.wikidata.org *.wikifunctions.org *.wikivoyage.org *.mediawiki.org wikimedia.org 'unsafe-inline'; object-src 'none'; report-uri /w/api.php?action=cspreport&format=json&reportonly=1",
                                    "content-length": "0",
                                    "server": "mw-web.codfw.main-55946566c5-mj6n4"
                                },
                                "mimeType": "text/html",
                                "charset": "utf-8",
                                "remoteIPAddress": "[2a02:ec80:300:ed1a::1]",
                                "remotePort": 443,
                                "encodedDataLength": 3712,
                                "timing": {
                                    "requestTime": 41020810.366835,
                                    "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": 0.172,
                                    "sendEnd": 0.256,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 25.853,
                                    "receiveHeadersEnd": 27.053
                                },
                                "responseTime": 1773888633245.615,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                }
                            },
                            "type": "Script",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false,
                            "renderBlockingBehavior": "NonBlocking"
                        },
                        "requests": [
                            {
                                "requestId": "1405438.27",
                                "loaderId": "F676D12876CEC23674490713BEDFBF59",
                                "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                                "request": {
                                    "url": "https://wikitech.wikimedia.org/wiki/Special:CentralAutoLogin/start?useformat=desktop&type=script&usesul3=1",
                                    "method": "GET",
                                    "headers": {
                                        "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                        "Referer": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge"
                                    },
                                    "mixedContentType": "none",
                                    "initialPriority": "Low",
                                    "referrerPolicy": "origin-when-cross-origin",
                                    "isSameSite": true
                                },
                                "timestamp": 41020810.365586,
                                "wallTime": 1773888633.219563,
                                "initiator": {
                                    "type": "script",
                                    "stack": {
                                        "callFrames": [
                                            {
                                                "functionName": "addScript",
                                                "scriptId": "245",
                                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                                "lineNumber": 8,
                                                "columnNumber": 390
                                            },
                                            {
                                                "functionName": "load",
                                                "scriptId": "245",
                                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                                "lineNumber": 18,
                                                "columnNumber": 92
                                            },
                                            {
                                                "functionName": "",
                                                "scriptId": "250",
                                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                                "lineNumber": 56,
                                                "columnNumber": 871
                                            },
                                            {
                                                "functionName": "ext.centralauth.centralautologin.js",
                                                "scriptId": "250",
                                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                                "lineNumber": 56,
                                                "columnNumber": 883
                                            },
                                            {
                                                "functionName": "runScript",
                                                "scriptId": "245",
                                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                                "lineNumber": 10,
                                                "columnNumber": 747
                                            },
                                            {
                                                "functionName": "",
                                                "scriptId": "245",
                                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                                "lineNumber": 11,
                                                "columnNumber": 503
                                            },
                                            {
                                                "functionName": "flushCssBuffer",
                                                "scriptId": "245",
                                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                                "lineNumber": 3,
                                                "columnNumber": 384
                                            }
                                        ]
                                    }
                                },
                                "redirectHasExtraInfo": false,
                                "type": "Script",
                                "frameId": "987BD5B74F87565524BACCA739680A44",
                                "hasUserGesture": false,
                                "renderBlockingBehavior": "NonBlocking"
                            },
                            {
                                "requestId": "1405438.27",
                                "loaderId": "F676D12876CEC23674490713BEDFBF59",
                                "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                                "request": {
                                    "url": "https://auth.wikimedia.org/metawiki/wiki/Special:CentralAutoLogin/checkLoggedIn?useformat=desktop&wikiid=labswiki&usesul3=1&type=script",
                                    "method": "GET",
                                    "headers": {
                                        "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                        "Referer": "https://wikitech.wikimedia.org/"
                                    },
                                    "mixedContentType": "none",
                                    "initialPriority": "Low",
                                    "referrerPolicy": "origin-when-cross-origin",
                                    "isSameSite": true
                                },
                                "timestamp": 41020810.394413,
                                "wallTime": 1773888633.247336,
                                "initiator": {
                                    "type": "other"
                                },
                                "redirectHasExtraInfo": true,
                                "redirectResponse": {
                                    "url": "https://wikitech.wikimedia.org/wiki/Special:CentralAutoLogin/start?useformat=desktop&type=script&usesul3=1",
                                    "status": 302,
                                    "statusText": "",
                                    "headers": {
                                        "x-request-id": "420490f9-e3b2-4fb5-b8f2-f03f23a463ae",
                                        "x-analytics": "",
                                        "age": "84",
                                        "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                        "x-content-type-options": "nosniff",
                                        "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3067\"",
                                        "x-cache": "cp3067 miss, cp3067 hit/1",
                                        "date": "Thu, 19 Mar 2026 02:49:09 GMT",
                                        "content-type": "text/html; charset=UTF-8",
                                        "vary": "Accept-Encoding,X-Forwarded-Proto,Cookie,Authorization,User-Agent",
                                        "x-client-ip": "2a00:bd80:a901:0:393::1",
                                        "x-cache-status": "hit-front",
                                        "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                        "content-security-policy": "default-src 'unsafe-eval' 'unsafe-inline' 'self' data: blob: *.wikimedia.org *.wikipedia.org *.wikinews.org *.wiktionary.org *.wikibooks.org *.wikiversity.org *.wikisource.org wikisource.org *.wikiquote.org *.wikidata.org *.wikifunctions.org *.wikivoyage.org *.mediawiki.org mediawiki.org wikimedia.org *.wmflabs.org *.wmcloud.org *.toolforge.org *.jsdelivr.net unpkg.com cdnjs.cloudflare.com raw.githubusercontent.com *.github.com code.jquery.com cdn.mathjax.org use.typekit.net fonts.cdnfonts.com use.fontawesome.com i.ytimg.com rsms.me doi.org localhost https://localhost:* http://localhost:* *.google.com *.gstatic.com *.googleapis.com *.translate.yandex.net yastatic.net ya.ru radically.github.io cdn.sammdot.ca cdn.fontshare.com viaf.org publicai-proxy.alaexis.workers.dev iiif.archive.org api.flickr.com live.staticflickr.com api.anthropic.com api.openai.com api.publicai.co catalogo.pusc.it parsifal.urbe.it opac.sbn.it overpass-api.de api.openrouteservice.org archive.org *.openstreetmap.org *.waymarkedtrails.org *.thunderforest.com registry.ipe.wiki analytics.ipe.wiki qlever.dev app.goacoustic.com wikipedia-archive.ourworldindata.org api.inaturalist.org; object-src 'none'; report-uri /w/api.php?action=cspreport&format=json",
                                        "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                        "location": "https://auth.wikimedia.org/metawiki/wiki/Special:CentralAutoLogin/checkLoggedIn?useformat=desktop&wikiid=labswiki&usesul3=1&type=script",
                                        "cache-control": "private, s-maxage=0, max-age=0, must-revalidate, no-transform",
                                        "accept-ch": "",
                                        "content-security-policy-report-only": "script-src 'unsafe-eval' blob: 'self' meta.wikimedia.org *.wikimedia.org *.wikipedia.org *.wikinews.org *.wiktionary.org *.wikibooks.org *.wikiversity.org *.wikisource.org wikisource.org *.wikiquote.org *.wikidata.org *.wikifunctions.org *.wikivoyage.org *.mediawiki.org 'unsafe-inline' auth.wikimedia.org; default-src 'self' data: blob: upload.wikimedia.org https://commons.wikimedia.org meta.wikimedia.org *.wikimedia.org *.wikipedia.org *.wikinews.org *.wiktionary.org *.wikibooks.org *.wikiversity.org *.wikisource.org wikisource.org *.wikiquote.org *.wikidata.org *.wikifunctions.org *.wikivoyage.org *.mediawiki.org wikimedia.org en.wikibooks.org en.wikinews.org en.wikiquote.org en.wikisource.org en.wikiversity.org en.wikivoyage.org en.wiktionary.org www.mediawiki.org api.wikimedia.org commons.wikimedia.org foundation.wikimedia.org incubator.wikimedia.org species.wikimedia.org wikimania.wikimedia.org www.wikidata.org www.wikifunctions.org auth.wikimedia.org; style-src 'self' data: blob: upload.wikimedia.org https://commons.wikimedia.org meta.wikimedia.org *.wikimedia.org *.wikipedia.org *.wikinews.org *.wiktionary.org *.wikibooks.org *.wikiversity.org *.wikisource.org wikisource.org *.wikiquote.org *.wikidata.org *.wikifunctions.org *.wikivoyage.org *.mediawiki.org wikimedia.org 'unsafe-inline'; object-src 'none'; report-uri /w/api.php?action=cspreport&format=json&reportonly=1",
                                        "content-length": "0",
                                        "server": "mw-web.codfw.main-55946566c5-mj6n4"
                                    },
                                    "mimeType": "text/html",
                                    "charset": "utf-8",
                                    "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                    "remotePort": 443,
                                    "encodedDataLength": 3712,
                                    "timing": {
                                        "requestTime": 41020810.366835,
                                        "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": 0.172,
                                        "sendEnd": 0.256,
                                        "pushStart": 0,
                                        "pushEnd": 0,
                                        "receiveHeadersStart": 25.853,
                                        "receiveHeadersEnd": 27.053
                                    },
                                    "responseTime": 1773888633245.615,
                                    "protocol": "h2",
                                    "alternateProtocolUsage": "unspecifiedReason",
                                    "securityState": "secure",
                                    "securityDetails": {
                                        "protocol": "TLS 1.3",
                                        "keyExchange": "",
                                        "keyExchangeGroup": "X25519MLKEM768",
                                        "cipher": "AES_128_GCM",
                                        "certificateId": 0,
                                        "subjectName": "*.wikipedia.org",
                                        "sanList": [
                                            "*.m.mediawiki.org",
                                            "*.m.wikibooks.org",
                                            "*.m.wikidata.org",
                                            "*.m.wikimedia.org",
                                            "*.m.wikinews.org",
                                            "*.m.wikipedia.org",
                                            "*.m.wikiquote.org",
                                            "*.m.wikisource.org",
                                            "*.m.wikiversity.org",
                                            "*.m.wikivoyage.org",
                                            "*.m.wiktionary.org",
                                            "*.mediawiki.org",
                                            "*.planet.wikimedia.org",
                                            "*.wikibooks.org",
                                            "*.wikidata.org",
                                            "*.wikifunctions.org",
                                            "*.wikimedia.org",
                                            "*.wikimediafoundation.org",
                                            "*.wikinews.org",
                                            "*.wikipedia.org",
                                            "*.wikiquote.org",
                                            "*.wikisource.org",
                                            "*.wikiversity.org",
                                            "*.wikivoyage.org",
                                            "*.wiktionary.org",
                                            "*.wmfusercontent.org",
                                            "mediawiki.org",
                                            "w.wiki",
                                            "wikibooks.org",
                                            "wikidata.org",
                                            "wikifunctions.org",
                                            "wikimedia.org",
                                            "wikimediafoundation.org",
                                            "wikinews.org",
                                            "wikipedia.org",
                                            "wikiquote.org",
                                            "wikisource.org",
                                            "wikiversity.org",
                                            "wikivoyage.org",
                                            "wiktionary.org",
                                            "wmfusercontent.org"
                                        ],
                                        "issuer": "E8",
                                        "validFrom": 1770414092,
                                        "validTo": 1778190091,
                                        "signedCertificateTimestampList": [
                                            {
                                                "status": "Verified",
                                                "origin": "Embedded in certificate",
                                                "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                                "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                                "timestamp": 1770417602830,
                                                "hashAlgorithm": "SHA-256",
                                                "signatureAlgorithm": "ECDSA",
                                                "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                            },
                                            {
                                                "status": "Verified",
                                                "origin": "Embedded in certificate",
                                                "logDescription": "DigiCert 'Wyvern2026h1'",
                                                "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                                "timestamp": 1770417604642,
                                                "hashAlgorithm": "SHA-256",
                                                "signatureAlgorithm": "ECDSA",
                                                "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                            }
                                        ],
                                        "certificateTransparencyCompliance": "compliant",
                                        "serverSignatureAlgorithm": 1027,
                                        "encryptedClientHello": false
                                    },
                                    "asn": {
                                        "ip": "2a02:ec80:300:ed1a::1",
                                        "asn": "14907",
                                        "country": "US",
                                        "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                        "name": "Wikimedia Foundation Inc.",
                                        "route": "2a02:ec80:300::/48"
                                    },
                                    "geoip": {
                                        "country": "US",
                                        "region": "",
                                        "timezone": "America/Chicago",
                                        "city": "",
                                        "ll": [
                                            37.751,
                                            -97.822
                                        ],
                                        "country_name": "United States",
                                        "metro": 0
                                    }
                                },
                                "type": "Script",
                                "frameId": "987BD5B74F87565524BACCA739680A44",
                                "hasUserGesture": false,
                                "renderBlockingBehavior": "NonBlocking"
                            }
                        ],
                        "response": {
                            "encodedDataLength": 1379,
                            "dataLength": 254,
                            "requestId": "1405438.27",
                            "type": "Script",
                            "response": {
                                "url": "https://auth.wikimedia.org/metawiki/wiki/Special:CentralAutoLogin/checkLoggedIn?useformat=desktop&wikiid=labswiki&usesul3=1&type=script",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "fa3a767a-7e32-4b4c-a596-301a85ff37c3",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "age": "0",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "x-content-type-options": "nosniff",
                                    "server-timing": "cache;desc=\"miss\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 miss, cp3067 miss",
                                    "date": "Thu, 19 Mar 2026 02:50:33 GMT",
                                    "content-type": "text/javascript; charset=utf-8",
                                    "vary": "Accept-Encoding,Cookie,Authorization",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "miss",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "s-maxage=1200, must-revalidate, max-age=0",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "accept-ch": "",
                                    "accept-ranges": "bytes",
                                    "content-length": "209",
                                    "server": "mw-web.codfw.main-55946566c5-p2vg9"
                                },
                                "mimeType": "text/javascript",
                                "charset": "utf-8",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 1379,
                                "timing": {
                                    "requestTime": 41020810.394574,
                                    "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": 24.412,
                                    "sendEnd": 24.756,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 184.187,
                                    "receiveHeadersEnd": 185.397
                                },
                                "responseTime": 1773888633431.693,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "unknown",
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    },
                                    {
                                        "name": "X-Content-Type-Options",
                                        "value": "nosniff"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "3e0e7bc95f60a5cd1b2d131baeeafd9a42f7876893ab2b2f62d2517f0928dc22",
                            "size": 254,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.28",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/static/favicon/wikitech.ico",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "High",
                                "referrerPolicy": "origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020810.37281,
                            "wallTime": 1773888633.225728,
                            "initiator": {
                                "type": "other"
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Other",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false
                        },
                        "response": {
                            "encodedDataLength": 5069,
                            "dataLength": 9662,
                            "requestId": "1405438.28",
                            "type": "Other",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/static/favicon/wikitech.ico",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "660b8120-b8ed-45bb-a832-afdc3316a9eb",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "etag": "W/\"25be-6426794eeb300\"",
                                    "age": "26770",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "expires": "Thu, 18 Mar 2027 19:24:22 GMT",
                                    "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 hit, cp3067 hit/22",
                                    "date": "Wed, 18 Mar 2026 19:24:22 GMT",
                                    "last-modified": "Thu, 30 Oct 2025 22:15:08 GMT",
                                    "content-type": "image/vnd.microsoft.icon",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-front",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "max-age=31536000",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "accept-ranges": "bytes",
                                    "access-control-allow-origin": "*",
                                    "content-length": "4264",
                                    "server": "ATS/9.2.11"
                                },
                                "mimeType": "image/vnd.microsoft.icon",
                                "charset": "",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 5069,
                                "timing": {
                                    "requestTime": 41020810.372993,
                                    "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": 0.158,
                                    "sendEnd": 0.227,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 25.8,
                                    "receiveHeadersEnd": 26.793
                                },
                                "responseTime": 1773888633251.715,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "408aab25406d374cb9096652bbf460dd30e2423d2e1363b8b89836eb5e62b1c8",
                            "size": 12884,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.29",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.action.view.postEdit%7Cmediawiki.notification%2CtempUserCreated%7Coojs-ui.styles.icons-interactions&skin=vector-2022&version=kda9b",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020810.389088,
                            "wallTime": 1773888633.242259,
                            "initiator": {
                                "type": "script",
                                "stack": {
                                    "callFrames": [
                                        {
                                            "functionName": "addScript",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 8,
                                            "columnNumber": 390
                                        },
                                        {
                                            "functionName": "doRequest",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 12,
                                            "columnNumber": 925
                                        },
                                        {
                                            "functionName": "batchRequest",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 14,
                                            "columnNumber": 148
                                        },
                                        {
                                            "functionName": "work",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 16,
                                            "columnNumber": 67
                                        },
                                        {
                                            "functionName": "enqueue",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 9,
                                            "columnNumber": 843
                                        },
                                        {
                                            "functionName": "mw.loader.using",
                                            "scriptId": "250",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                            "lineNumber": 1230,
                                            "columnNumber": 825
                                        },
                                        {
                                            "functionName": "init",
                                            "scriptId": "250",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                            "lineNumber": 71,
                                            "columnNumber": 182
                                        },
                                        {
                                            "functionName": "reallyInit",
                                            "scriptId": "250",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                            "lineNumber": 62,
                                            "columnNumber": 695
                                        },
                                        {
                                            "functionName": "mw.dt.init",
                                            "scriptId": "250",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                            "lineNumber": 62,
                                            "columnNumber": 896
                                        },
                                        {
                                            "functionName": "add",
                                            "scriptId": "250",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                            "lineNumber": 1228,
                                            "columnNumber": 478
                                        },
                                        {
                                            "functionName": "dt.init.js",
                                            "scriptId": "250",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                            "lineNumber": 63,
                                            "columnNumber": 196
                                        },
                                        {
                                            "functionName": "runScript",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 10,
                                            "columnNumber": 747
                                        },
                                        {
                                            "functionName": "",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 11,
                                            "columnNumber": 503
                                        },
                                        {
                                            "functionName": "flushCssBuffer",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 3,
                                            "columnNumber": 384
                                        }
                                    ]
                                }
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Script",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false,
                            "renderBlockingBehavior": "NonBlocking"
                        },
                        "response": {
                            "encodedDataLength": 8959,
                            "dataLength": 58959,
                            "requestId": "1405438.29",
                            "type": "Script",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.action.view.postEdit%7Cmediawiki.notification%2CtempUserCreated%7Coojs-ui.styles.icons-interactions&skin=vector-2022&version=kda9b",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "1fb94593-f1c8-4070-80dd-e509e5d61846",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "etag": "W/\"kda9b\"",
                                    "age": "0",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "x-content-type-options": "nosniff",
                                    "expires": "Fri, 17 Apr 2026 08:22:20 GMT",
                                    "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 miss, cp3067 hit/23",
                                    "date": "Wed, 18 Mar 2026 08:22:20 GMT",
                                    "content-type": "text/javascript; charset=utf-8",
                                    "vary": "Accept-Encoding,User-Agent",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-front",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "public, max-age=2592000, s-maxage=2592000, stale-while-revalidate=60",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "sourcemap": "/w/load.php?lang=en&modules=mediawiki.action.view.postEdit%7Cmediawiki.notification%2CtempUserCreated%7Coojs-ui.styles.icons-interactions&skin=vector-2022&sourcemap=1&version=kda9b",
                                    "accept-ranges": "bytes",
                                    "content-length": "7868",
                                    "server": "mw-web.eqiad.canary-cb899dc8b-n67tq"
                                },
                                "mimeType": "text/javascript",
                                "charset": "utf-8",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 8959,
                                "timing": {
                                    "requestTime": 41020810.389563,
                                    "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": 0.166,
                                    "sendEnd": 0.236,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 26.155,
                                    "receiveHeadersEnd": 26.39
                                },
                                "responseTime": 1773888633268.642,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    },
                                    {
                                        "name": "X-Content-Type-Options",
                                        "value": "nosniff"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "c768e9c3a2bd3726bb5e5b16a05c30e5b040a659bda1ebd1fe67b1216cf1b647",
                            "size": 58959,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                            "host": "wikitech.wikimedia.org",
                            "type": "script"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1405438.30",
                            "loaderId": "F676D12876CEC23674490713BEDFBF59",
                            "documentURL": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                            "request": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs-ui-widgets%7Coojs-ui-widgets.icons%7Coojs-ui.styles.icons-editing-core&skin=vector-2022&version=12ynk",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 41020810.389947,
                            "wallTime": 1773888633.242904,
                            "initiator": {
                                "type": "script",
                                "stack": {
                                    "callFrames": [
                                        {
                                            "functionName": "addScript",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 8,
                                            "columnNumber": 390
                                        },
                                        {
                                            "functionName": "doRequest",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 12,
                                            "columnNumber": 925
                                        },
                                        {
                                            "functionName": "batchRequest",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 14,
                                            "columnNumber": 148
                                        },
                                        {
                                            "functionName": "work",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 16,
                                            "columnNumber": 67
                                        },
                                        {
                                            "functionName": "enqueue",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 9,
                                            "columnNumber": 843
                                        },
                                        {
                                            "functionName": "mw.loader.using",
                                            "scriptId": "250",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                            "lineNumber": 1230,
                                            "columnNumber": 825
                                        },
                                        {
                                            "functionName": "init",
                                            "scriptId": "250",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                            "lineNumber": 95,
                                            "columnNumber": 101
                                        },
                                        {
                                            "functionName": "init",
                                            "scriptId": "250",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                            "lineNumber": 71,
                                            "columnNumber": 963
                                        },
                                        {
                                            "functionName": "reallyInit",
                                            "scriptId": "250",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                            "lineNumber": 62,
                                            "columnNumber": 695
                                        },
                                        {
                                            "functionName": "mw.dt.init",
                                            "scriptId": "250",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                            "lineNumber": 62,
                                            "columnNumber": 896
                                        },
                                        {
                                            "functionName": "add",
                                            "scriptId": "250",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                            "lineNumber": 1228,
                                            "columnNumber": 478
                                        },
                                        {
                                            "functionName": "dt.init.js",
                                            "scriptId": "250",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                                            "lineNumber": 63,
                                            "columnNumber": 196
                                        },
                                        {
                                            "functionName": "runScript",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 10,
                                            "columnNumber": 747
                                        },
                                        {
                                            "functionName": "",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 11,
                                            "columnNumber": 503
                                        },
                                        {
                                            "functionName": "flushCssBuffer",
                                            "scriptId": "245",
                                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                                            "lineNumber": 3,
                                            "columnNumber": 384
                                        }
                                    ]
                                }
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Script",
                            "frameId": "987BD5B74F87565524BACCA739680A44",
                            "hasUserGesture": false,
                            "renderBlockingBehavior": "NonBlocking"
                        },
                        "response": {
                            "encodedDataLength": 20392,
                            "dataLength": 115184,
                            "requestId": "1405438.30",
                            "type": "Script",
                            "response": {
                                "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs-ui-widgets%7Coojs-ui-widgets.icons%7Coojs-ui.styles.icons-editing-core&skin=vector-2022&version=12ynk",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "x-request-id": "1c96f284-c405-4273-b401-286c792d761a",
                                    "content-encoding": "gzip",
                                    "x-analytics": "",
                                    "etag": "W/\"12ynk\"",
                                    "age": "0",
                                    "report-to": "{ \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }",
                                    "x-content-type-options": "nosniff",
                                    "expires": "Fri, 17 Apr 2026 08:22:20 GMT",
                                    "server-timing": "cache;desc=\"hit-front\", host;desc=\"cp3067\"",
                                    "x-cache": "cp3067 miss, cp3067 hit/23",
                                    "date": "Wed, 18 Mar 2026 08:22:20 GMT",
                                    "content-type": "text/javascript; charset=utf-8",
                                    "vary": "Accept-Encoding,User-Agent",
                                    "x-client-ip": "2a00:bd80:a901:0:393::1",
                                    "x-cache-status": "hit-front",
                                    "strict-transport-security": "max-age=106384710; includeSubDomains; preload",
                                    "cache-control": "public, max-age=2592000, s-maxage=2592000, stale-while-revalidate=60",
                                    "nel": "{ \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}",
                                    "sourcemap": "/w/load.php?lang=en&modules=oojs-ui-widgets%7Coojs-ui-widgets.icons%7Coojs-ui.styles.icons-editing-core&skin=vector-2022&sourcemap=1&version=12ynk",
                                    "accept-ranges": "bytes",
                                    "content-length": "19326",
                                    "server": "mw-web.eqiad.main-55cb4c7796-cmzt5"
                                },
                                "mimeType": "text/javascript",
                                "charset": "utf-8",
                                "remoteIPAddress": "2a02:ec80:300:ed1a::1",
                                "remotePort": 443,
                                "encodedDataLength": 20392,
                                "timing": {
                                    "requestTime": 41020810.390159,
                                    "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": 0.108,
                                    "sendEnd": 0.156,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 26.024,
                                    "receiveHeadersEnd": 27.519
                                },
                                "responseTime": 1773888633269.103,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "*.wikipedia.org",
                                    "sanList": [
                                        "*.m.mediawiki.org",
                                        "*.m.wikibooks.org",
                                        "*.m.wikidata.org",
                                        "*.m.wikimedia.org",
                                        "*.m.wikinews.org",
                                        "*.m.wikipedia.org",
                                        "*.m.wikiquote.org",
                                        "*.m.wikisource.org",
                                        "*.m.wikiversity.org",
                                        "*.m.wikivoyage.org",
                                        "*.m.wiktionary.org",
                                        "*.mediawiki.org",
                                        "*.planet.wikimedia.org",
                                        "*.wikibooks.org",
                                        "*.wikidata.org",
                                        "*.wikifunctions.org",
                                        "*.wikimedia.org",
                                        "*.wikimediafoundation.org",
                                        "*.wikinews.org",
                                        "*.wikipedia.org",
                                        "*.wikiquote.org",
                                        "*.wikisource.org",
                                        "*.wikiversity.org",
                                        "*.wikivoyage.org",
                                        "*.wiktionary.org",
                                        "*.wmfusercontent.org",
                                        "mediawiki.org",
                                        "w.wiki",
                                        "wikibooks.org",
                                        "wikidata.org",
                                        "wikifunctions.org",
                                        "wikimedia.org",
                                        "wikimediafoundation.org",
                                        "wikinews.org",
                                        "wikipedia.org",
                                        "wikiquote.org",
                                        "wikisource.org",
                                        "wikiversity.org",
                                        "wikivoyage.org",
                                        "wiktionary.org",
                                        "wmfusercontent.org"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1770414092,
                                    "validTo": 1778190091,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Let's Encrypt 'Sycamore2026h1'",
                                            "logId": "A5C978925D57461782870DD889660B5C55648B7D0040F2EC076851D1886919F7",
                                            "timestamp": 1770417602830,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022074650DA94A6575EC3A2F70399CF9BACD57236F107DCD3C7C2C2285A51BB5ABA902203ADA83D09604DB097E16AFA36C9987A7D0971AF5843AA4D6C2BEE501BBAF1540"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "DigiCert 'Wyvern2026h1'",
                                            "logId": "6411C46CA412ECA7891CA2022E00BCAB4F2807D41E3527ABEAFED503C97DCDF0",
                                            "timestamp": 1770417604642,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "3044022044F6509685E3F995C0BA347314429E46F3D953D02EE745578248B6A8C08B517602206E2DA66B18E10F3F97F81B7886EB9A2AED73BF40B8ED00B4B5543B4931786861"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                },
                                "securityHeaders": [
                                    {
                                        "name": "Strict-Transport-Security",
                                        "value": "max-age=106384710; includeSubDomains; preload"
                                    },
                                    {
                                        "name": "X-Content-Type-Options",
                                        "value": "nosniff"
                                    }
                                ]
                            },
                            "hasExtraInfo": true,
                            "hash": "fe1b30e36d2e53edc45af9b7bd8af1638bd7acfabb8035bdd829fdcdc04828a8",
                            "size": 115184,
                            "asn": {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            "geoip": {
                                "country": "US",
                                "region": "",
                                "timezone": "America/Chicago",
                                "city": "",
                                "ll": [
                                    37.751,
                                    -97.822
                                ],
                                "country_name": "United States",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                            "host": "wikitech.wikimedia.org",
                            "type": "script"
                        }
                    }
                ],
                "cookies": [
                    {
                        "name": "WMF-Last-Access",
                        "value": "19-Mar-2026",
                        "domain": "wikitech.wikimedia.org",
                        "path": "/",
                        "expires": 1776675844.642662,
                        "size": 26,
                        "httpOnly": true,
                        "secure": true,
                        "session": false,
                        "priority": "Medium",
                        "sourceScheme": "Secure",
                        "sourcePort": 443
                    },
                    {
                        "name": "WMF-DP",
                        "value": "23d",
                        "domain": "wikitech.wikimedia.org",
                        "path": "/",
                        "expires": 1773911044.642721,
                        "size": 9,
                        "httpOnly": true,
                        "secure": true,
                        "session": false,
                        "priority": "Medium",
                        "sourceScheme": "Secure",
                        "sourcePort": 443
                    },
                    {
                        "name": "GeoIP",
                        "value": "CH:::47.14:8.16:v4",
                        "domain": ".wikimedia.org",
                        "path": "/",
                        "expires": -1,
                        "size": 23,
                        "httpOnly": false,
                        "secure": true,
                        "session": true,
                        "priority": "Medium",
                        "sourceScheme": "Secure",
                        "sourcePort": 443
                    },
                    {
                        "name": "NetworkProbeLimit",
                        "value": "0.001",
                        "domain": "wikitech.wikimedia.org",
                        "path": "/",
                        "expires": 1773892232.642745,
                        "size": 22,
                        "httpOnly": false,
                        "secure": true,
                        "session": false,
                        "sameSite": "None",
                        "priority": "Medium",
                        "sourceScheme": "Secure",
                        "sourcePort": 443
                    },
                    {
                        "name": "WMF-Uniq",
                        "value": "Q9vABTDgAxSjbSfoY7oltAMoAAAAAFvdco-vplHkjUg1FydzkhYr1Ce9tcs9YQtV",
                        "domain": ".upload.wikimedia.org",
                        "path": "/",
                        "expires": 1805446303.850946,
                        "size": 72,
                        "httpOnly": true,
                        "secure": true,
                        "session": false,
                        "sameSite": "None",
                        "priority": "Medium",
                        "sourceScheme": "Secure",
                        "sourcePort": 443
                    },
                    {
                        "name": "WMF-Uniq",
                        "value": "8Mez8p5sHLs1HURiFOqr9wMoAAEBAFvdho7cQVn4MJBOlc4Zppe6WIwMYv-bQgfK",
                        "domain": ".wikitech.wikimedia.org",
                        "path": "/",
                        "expires": 1805414401.029266,
                        "size": 72,
                        "httpOnly": true,
                        "secure": true,
                        "session": false,
                        "sameSite": "None",
                        "priority": "Medium",
                        "sourceScheme": "Secure",
                        "sourcePort": 443
                    },
                    {
                        "name": "labswikimwuser-sessionId",
                        "value": "cbe14acc5eb3361ef48b",
                        "domain": "wikitech.wikimedia.org",
                        "path": "/",
                        "expires": -1,
                        "size": 44,
                        "httpOnly": false,
                        "secure": false,
                        "session": true,
                        "priority": "Medium",
                        "sourceScheme": "Secure",
                        "sourcePort": 443
                    },
                    {
                        "name": "WMF-Last-Access",
                        "value": "19-Mar-2026",
                        "domain": "auth.wikimedia.org",
                        "path": "/",
                        "expires": 1776643200.432894,
                        "size": 26,
                        "httpOnly": true,
                        "secure": true,
                        "session": false,
                        "priority": "Medium",
                        "sourceScheme": "Secure",
                        "sourcePort": 443
                    },
                    {
                        "name": "NetworkProbeLimit",
                        "value": "0.001",
                        "domain": "auth.wikimedia.org",
                        "path": "/",
                        "expires": 1773892233.432952,
                        "size": 22,
                        "httpOnly": false,
                        "secure": true,
                        "session": false,
                        "sameSite": "None",
                        "priority": "Medium",
                        "sourceScheme": "Secure",
                        "sourcePort": 443
                    },
                    {
                        "name": "WMF-Uniq",
                        "value": "sFkjbhgDgiBZ1VU5tYmkegMoAAAAAFvdLTyg2M_jcwczqznCD2pJnFmrujV6JEct",
                        "domain": ".auth.wikimedia.org",
                        "path": "/",
                        "expires": 1805414400.432962,
                        "size": 72,
                        "httpOnly": true,
                        "secure": true,
                        "session": false,
                        "sameSite": "None",
                        "priority": "Medium",
                        "sourceScheme": "Secure",
                        "sourcePort": 443
                    }
                ],
                "console": [],
                "links": [
                    {
                        "href": "https://phabricator.wikimedia.org/project/view/2875/",
                        "text": "Request VPS project",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://donate.wikimedia.org/?wmf_source=donate&wmf_medium=sidebar&wmf_campaign=wikitech.wikimedia.org&uselang=en",
                        "text": "Donate",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://meta.wikimedia.org/wiki/Coolest_Tool_Award#Coolest_Tool_Award_2026",
                        "text": "seventh edition of the Coolest Tool Award",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://www.mediawiki.org/wiki/Wikimedia_Cloud_Services_team",
                        "text": "Wikimedia Foundation Cloud Services team",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://meta.wikimedia.org/wiki/Wikimedia_movement",
                        "text": "Wikimedia movement volunteers",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://web.libera.chat/?#wikimedia-cloud",
                        "text": "connect",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://t.me/wmcloudirc",
                        "text": "Telegram group",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://lists.wikimedia.org/postorius/lists/cloud.lists.wikimedia.org/",
                        "text": "cloud@",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://meta.wikimedia.org/wiki/Special:MyLanguage/Mailing_lists",
                        "text": "mailing list",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://lists.wikimedia.org/postorius/lists/cloud-announce.lists.wikimedia.org/",
                        "text": "cloud-announce@",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://www.mediawiki.org/wiki/Special:MyLanguage/How_to_report_a_bug",
                        "text": "report bugs",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://phabricator.wikimedia.org/project/profile/832/",
                        "text": "#Cloud-Services",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://www.mediawiki.org/wiki/Special:MyLanguage/Phabricator",
                        "text": "Phabricator",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://phabricator.wikimedia.org/phame/blog/view/5/",
                        "text": "Cloud Services Blog",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://techblog.wikimedia.org/",
                        "text": "Wikimedia Technical Blog",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://creativecommons.org/licenses/by-sa/4.0/",
                        "text": "Creative Commons Attribution-ShareAlike License",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use",
                        "text": "Terms of Use",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy",
                        "text": "Privacy policy",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://foundation.wikimedia.org/wiki/General_disclaimer",
                        "text": "Disclaimers",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://www.mediawiki.org/wiki/Special:MyLanguage/Code_of_Conduct",
                        "text": "Code of Conduct",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://developer.wikimedia.org/",
                        "text": "Developers",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://stats.wikimedia.org/#/wikitech.wikimedia.org",
                        "text": "Statistics",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement",
                        "text": "Cookie statement",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://www.wikimedia.org/",
                        "text": "",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    },
                    {
                        "href": "https://www.mediawiki.org/",
                        "text": "",
                        "frameId": "987BD5B74F87565524BACCA739680A44"
                    }
                ],
                "timing": {
                    "beginNavigation": "2026-03-19T02:50:31.625Z",
                    "frameStartedLoading": "2026-03-19T02:50:31.626Z",
                    "frameNavigated": "2026-03-19T02:50:32.661Z",
                    "domContentEventFired": "2026-03-19T02:50:32.867Z",
                    "frameStoppedLoading": "2026-03-19T02:50:33.282Z"
                },
                "globals": [
                    {
                        "prop": "RLCONF",
                        "type": "object"
                    },
                    {
                        "prop": "RLSTATE",
                        "type": "object"
                    },
                    {
                        "prop": "RLPAGEMODULES",
                        "type": "object"
                    },
                    {
                        "prop": "RLQ",
                        "type": "object"
                    },
                    {
                        "prop": "isCompatible",
                        "type": "function"
                    },
                    {
                        "prop": "mediaWiki",
                        "type": "object"
                    },
                    {
                        "prop": "mw",
                        "type": "object"
                    },
                    {
                        "prop": "NORLQ",
                        "type": "object"
                    },
                    {
                        "prop": "$",
                        "type": "function"
                    },
                    {
                        "prop": "jQuery",
                        "type": "function"
                    },
                    {
                        "prop": "addOnloadHook",
                        "type": "function"
                    },
                    {
                        "prop": "importScriptURI",
                        "type": "function"
                    },
                    {
                        "prop": "importScript",
                        "type": "function"
                    },
                    {
                        "prop": "importStylesheet",
                        "type": "function"
                    },
                    {
                        "prop": "importStylesheetURI",
                        "type": "function"
                    },
                    {
                        "prop": "pluralRuleParser",
                        "type": "function"
                    },
                    {
                        "prop": "OO",
                        "type": "object"
                    },
                    {
                        "prop": "Geo",
                        "type": "object"
                    },
                    {
                        "prop": "RangeFix",
                        "type": "object"
                    },
                    {
                        "prop": "VisualEditorSupportCheck",
                        "type": "function"
                    },
                    {
                        "prop": "ve",
                        "type": "object"
                    },
                    {
                        "prop": "moment",
                        "type": "function"
                    },
                    {
                        "prop": "insertBanner",
                        "type": "function"
                    },
                    {
                        "prop": "hideBanner",
                        "type": "function"
                    },
                    {
                        "prop": "cancelBanner",
                        "type": "function"
                    },
                    {
                        "prop": "isBannerCanceled",
                        "type": "function"
                    },
                    {
                        "prop": "toggleNotice",
                        "type": "function"
                    }
                ],
                "storages": [
                    {
                        "origin": "https://wikitech.wikimedia.org",
                        "key": "wmE-sessionTickLastTickTime",
                        "value": "1773888633235",
                        "isLocalStorage": true
                    },
                    {
                        "origin": "https://wikitech.wikimedia.org",
                        "key": "wmE-sessionTickTickCount",
                        "value": "1",
                        "isLocalStorage": true
                    },
                    {
                        "origin": "https://wikitech.wikimedia.org",
                        "key": "CentralAuthAnon",
                        "value": "1773975033434",
                        "isLocalStorage": true
                    },
                    {
                        "origin": "https://wikitech.wikimedia.org",
                        "key": "MediaWikiModuleStore:labswiki",
                        "value": "{\"items\":{\"mediawiki.base@tc4fs\":\"mw.loader.impl(function(){return[\\\"mediawiki.base@tc4fs\\\",{\\\"main\\\":\\\"mediawiki.base.js\\\",\\\"files\\\":{\\\"mediawiki.base.js\\\":function(require,module,exports){'use strict';const slice=Array.prototype.slice;const config=require('./config.json');for(const key in config){if(!mw.config.exists(key)){mw.config.set(key,config[key]);}}require('./log.js');function Message(map,key,parameters){this.map=map;this.key=key;this.parameters=parameters||[];}Message.prototype={parser:function(format){let text=this.map.get(this.key);if(mw.config.get('wgUserLanguage')==='qqx'&&(!text||text==='('+this.key+')')){text='('+this.key+'$*)';}text=mw.format(text,...this.parameters);if(format==='parse'){text=mw.html.escape(text);}return text;},params:function(parameters){this.parameters.push(...parameters);return this;},toString:function(format){if(!this.exists()){if(mw.config.get('wgUserLanguage')!=='qqx'){return'⧼'+mw.html.escape(this.key)+'⧽';}}if(!format){format='text';}if(format==='plain'||format==='text'||format==='parse'){return this.parser(format);}return mw.html.escape(this.parser('escaped'));},parse:function(){return this.toString('parse');},parseDom:function(){\\nreturn $(document.createTextNode(this.toString('text')));},plain:function(){return this.toString('plain');},text:function(){return this.toString('text');},escaped:function(){return this.toString('escaped');},exists:function(){return this.map.exists(this.key);}};mw.libs={};mw.widgets={};mw.inspect=function(...reports){mw.loader.using('mediawiki.inspect',()=>{mw.inspect.runReports(...reports);});};mw.internalDoTransformFormatForQqx=function(formatString,parameters){if(formatString.includes('$*')){let replacement='';if(parameters.length){replacement=': '+parameters.map((_,i)=>'$'+(i+1)).join(', ');}return formatString.replace('$*',replacement);}return formatString;};mw.internalWikiUrlencode=function(str){return encodeURIComponent(String(str)).replace(/'/g,'%27').replace(/%20/g,'_').replace(/%3B/g,';').replace(/%40/g,'@').replace(/%24/g,'$').replace(/%2C/g,',').replace(/%2F/g,'/').replace(/%3A/g,':');};mw.format=function(formatString,...parameters){formatString=mw.internalDoTransformFormatForQqx(formatString,parameters);\\nreturn formatString.replace(/\\\\$(\\\\d+)/g,(str,match)=>{const index=parseInt(match,10)-1;return parameters[index]!==undefined?parameters[index]:'$'+match;});};mw.Message=Message;mw.message=function(key){const parameters=slice.call(arguments,1);return new Message(mw.messages,key,parameters);};mw.msg=function(key,...parameters){return mw.message(key,...parameters).text();};mw.notify=function(message,options){return mw.loader.using('mediawiki.notification').then(()=>mw.notification.notify(message,options));};const trackCallbacks=$.Callbacks('memory');let trackHandlers=[];mw.track=function(topic,...data){mw.trackQueue.push({topic,args:data});trackCallbacks.fire(mw.trackQueue);};mw.trackSubscribe=function(topic,callback){let seen=0;function handler(trackQueue){for(;seen<trackQueue.length;seen++){const event=trackQueue[seen];if(event.topic.startsWith(topic)){callback(event.topic,...event.args);}}}trackHandlers.push([handler,callback]);trackCallbacks.add(handler);};mw.trackUnsubscribe=function(callback){\\ntrackHandlers=trackHandlers.filter((fns)=>{if(fns[1]===callback){trackCallbacks.remove(fns[0]);return false;}return true;});};trackCallbacks.fire(mw.trackQueue);const hooks=Object.create(null);mw.hook=function(name){return hooks[name]||(hooks[name]=(function(){let memory;let deprecated;const fns=[];function rethrow(e){setTimeout(()=>{throw e;});}return{add:function(...handlers){if(deprecated){deprecated();}fns.push(...handlers);if(memory){for(const handler of handlers){try{handler(...memory);}catch(e){rethrow(e);}}}return this;},remove:function(...handlers){for(const handler of handlers){let j;while((j=fns.indexOf(handler))!==-1){fns.splice(j,1);}}return this;},deprecate:function(msg){deprecated=mw.log.makeDeprecated(`hook_${name}`,`mw.hook \\\"${name}\\\" is deprecated.`+(msg?' '+msg:''));return this;},fire:function(...data){if(deprecated&&fns.length){deprecated();}for(const fn of fns){try{fn.apply(null,arguments);}catch(e){rethrow(e);}}memory=data;return this;}};}()));};function escapeCallback(s){\\nswitch(s){case'\\\\'':return'&#039;';case'\\\"':return'&quot;';case'<':return'&lt;';case'>':return'&gt;';case'&':return'&amp;';}}mw.html={escape:function(s){return s.replace(/['\\\"<>&]/g,escapeCallback);},element:function(name,attrs,contents){let s='<'+name;if(attrs){for(const attrName in attrs){let v=attrs[attrName];if(v===true){v=attrName;}else if(v===false){continue;}s+=' '+attrName+'=\\\"'+this.escape(String(v))+'\\\"';}}if(contents===undefined||contents===null){s+='/>';return s;}s+='>';if(typeof contents==='string'){s+=this.escape(contents);}else if(typeof contents==='number'||typeof contents==='boolean'){s+=String(contents);}else if(contents instanceof this.Raw){s+=contents.value;}else{throw new Error('Invalid content type');}s+='</'+name+'>';return s;},Raw:function(value){this.value=value;}};window.addOnloadHook=function(fn){$(()=>{fn();});};const loadedScripts={};window.importScriptURI=function(url){if(loadedScripts[url]){return null;}loadedScripts[url]=true;return mw.loader.addScriptTag(url);\\n};window.importScript=function(title){return window.importScriptURI(mw.config.get('wgScript')+'?title='+mw.internalWikiUrlencode(title)+'&action=raw&ctype=text/javascript');};window.importStylesheet=function(title){return mw.loader.addLinkTag(mw.config.get('wgScript')+'?title='+mw.internalWikiUrlencode(title)+'&action=raw&ctype=text/css');};window.importStylesheetURI=function(url,media){return mw.loader.addLinkTag(url,media);};mw.loader.getModuleNames=function(){return Object.keys(mw.loader.moduleRegistry);};mw.loader.using=function(dependencies,ready,error){const deferred=$.Deferred();if(!Array.isArray(dependencies)){dependencies=[dependencies];}if(ready){deferred.done(ready);}if(error){deferred.fail(error);}try{dependencies=mw.loader.resolve(dependencies);}catch(e){return deferred.reject(e).promise();}mw.loader.enqueue(dependencies,()=>{deferred.resolve(mw.loader.require);},deferred.reject);return deferred.promise();};mw.loader.getScript=function(url){return $.ajax(url,{dataType:'script',cache:true})\\n.catch(()=>{throw new Error('Failed to load script');});};mw.user={options:new mw.Map(),tokens:new mw.Map()};mw.user.options.set(require('./user.json'));const queue=window.RLQ;window.RLQ={push:function(entry){if(typeof entry==='function'){entry();}else{mw.loader.using(entry[0],entry[1]);}}};while(queue[0]){window.RLQ.push(queue.shift());}['write','writeln'].forEach((func)=>{mw.log.deprecate(document,func,function(){$(document.body).append($.parseHTML(slice.call(arguments).join('')));},'Use jQuery or mw.loader.load instead.','document.'+func);});require('./errorLogger.js');\\n},\\\"log.js\\\":function(require,module,exports){function stackSet(){let stacks;return function isFirst(){if(!stacks){stacks=new Set();}const stack=new Error().stack;if(!stacks.has(stack)){stacks.add(stack);return true;}};}mw.log.error=Function.prototype.bind.call(console.error,console);mw.log.makeDeprecated=function(key,msg){const isFirst=stackSet();return function maybeLog(){if(isFirst()){if(key){mw.track('mw.deprecate',key);}mw.log.warn(msg);}};};mw.log.deprecate=function(obj,key,val,msg,logName){const maybeLog=mw.log.makeDeprecated(logName||(obj===window?key:null),'Use of \\\"'+(logName||key)+'\\\" is deprecated.'+(msg?' '+msg:''));Object.defineProperty(obj,key,{configurable:true,enumerable:true,get:function(){maybeLog();return val;},set:function(newVal){maybeLog();val=newVal;}});};\\n},\\\"errorLogger.js\\\":function(require,module,exports){'use strict';function installGlobalHandler(window){const oldHandler=window.onerror||function(){return false;};window.onerror=function(errorMessage,url,line,column,errorObject){mw.track('global.error',{errorMessage:errorMessage,url:url,lineNumber:line,columnNumber:column,stackTrace:errorObject?errorObject.stack:'',errorObject:errorObject});if(errorObject){mw.track('error.uncaught',errorObject);}return oldHandler.apply(this,arguments);};}mw.errorLogger={logError:function(error,topic){mw.track(topic||'error.caught',error);}};if(window.QUnit){mw.errorLogger.installGlobalHandler=installGlobalHandler;}else{installGlobalHandler(window);}\\n},\\\"config.json\\\":{\\\"debug\\\":0,\\\"skin\\\":\\\"vector-2022\\\",\\\"stylepath\\\":\\\"/w/skins\\\",\\\"wgArticlePath\\\":\\\"/wiki/$1\\\",\\\"wgScriptPath\\\":\\\"/w\\\",\\\"wgScript\\\":\\\"/w/index.php\\\",\\\"wgSearchType\\\":\\\"CirrusSearch\\\",\\\"wgVariantArticlePath\\\":false,\\\"wgServer\\\":\\\"//wikitech.wikimedia.org\\\",\\\"wgServerName\\\":\\\"wikitech.wikimedia.org\\\",\\\"wgUserLanguage\\\":\\\"en\\\",\\\"wgContentLanguage\\\":\\\"en\\\",\\\"wgVersion\\\":\\\"1.46.0-wmf.20\\\",\\\"wgFormattedNamespaces\\\":{\\\"-2\\\":\\\"Media\\\",\\\"-1\\\":\\\"Special\\\",\\\"0\\\":\\\"\\\",\\\"1\\\":\\\"Talk\\\",\\\"2\\\":\\\"User\\\",\\\"3\\\":\\\"User talk\\\",\\\"4\\\":\\\"Wikitech\\\",\\\"5\\\":\\\"Wikitech talk\\\",\\\"6\\\":\\\"File\\\",\\\"7\\\":\\\"File talk\\\",\\\"8\\\":\\\"MediaWiki\\\",\\\"9\\\":\\\"MediaWiki talk\\\",\\\"10\\\":\\\"Template\\\",\\\"11\\\":\\\"Template talk\\\",\\\"12\\\":\\\"Help\\\",\\\"13\\\":\\\"Help talk\\\",\\\"14\\\":\\\"Category\\\",\\\"15\\\":\\\"Category talk\\\",\\\"110\\\":\\\"Obsolete\\\",\\\"111\\\":\\\"Obsolete talk\\\",\\\"112\\\":\\\"OfficeIT\\\",\\\"113\\\":\\\"OfficeIT talk\\\",\\\"116\\\":\\\"Tool\\\",\\\"117\\\":\\\"Tool talk\\\",\\\"498\\\":\\\"Nova Resource\\\",\\\"499\\\":\\\"Nova Resource Talk\\\",\\\"666\\\":\\\"Heira\\\",\\\"667\\\":\\\"Heira Talk\\\",\\\"710\\\":\\\"TimedText\\\",\\\"711\\\":\\\"TimedText talk\\\",\\\"828\\\":\\\"Module\\\",\\\"829\\\":\\\"Module talk\\\"},\\\"wgNamespaceIds\\\":{\\\"media\\\":-2,\\\"special\\\":-1,\\\"\\\":0,\\\"talk\\\":1,\\\"user\\\":2,\\\"user_talk\\\":3,\\\"wikitech\\\":4,\\n\\\"wikitech_talk\\\":5,\\\"file\\\":6,\\\"file_talk\\\":7,\\\"mediawiki\\\":8,\\\"mediawiki_talk\\\":9,\\\"template\\\":10,\\\"template_talk\\\":11,\\\"help\\\":12,\\\"help_talk\\\":13,\\\"category\\\":14,\\\"category_talk\\\":15,\\\"obsolete\\\":110,\\\"obsolete_talk\\\":111,\\\"officeit\\\":112,\\\"officeit_talk\\\":113,\\\"tool\\\":116,\\\"tool_talk\\\":117,\\\"nova_resource\\\":498,\\\"nova_resource_talk\\\":499,\\\"heira\\\":666,\\\"heira_talk\\\":667,\\\"timedtext\\\":710,\\\"timedtext_talk\\\":711,\\\"module\\\":828,\\\"module_talk\\\":829,\\\"image\\\":6,\\\"image_talk\\\":7,\\\"project\\\":4,\\\"project_talk\\\":5},\\\"wgContentNamespaces\\\":[12,116,0],\\\"wgSiteName\\\":\\\"Wikitech\\\",\\\"wgDBname\\\":\\\"labswiki\\\",\\\"wgWikiID\\\":\\\"labswiki\\\",\\\"wgCaseSensitiveNamespaces\\\":[],\\\"wgCommentCodePointLimit\\\":500,\\\"wgExtensionAssetsPath\\\":\\\"/w/extensions\\\",\\\"wgUrlProtocols\\\":\\\"bitcoin\\\\\\\\:|ftp\\\\\\\\:\\\\\\\\/\\\\\\\\/|ftps\\\\\\\\:\\\\\\\\/\\\\\\\\/|geo\\\\\\\\:|git\\\\\\\\:\\\\\\\\/\\\\\\\\/|gopher\\\\\\\\:\\\\\\\\/\\\\\\\\/|http\\\\\\\\:\\\\\\\\/\\\\\\\\/|https\\\\\\\\:\\\\\\\\/\\\\\\\\/|irc\\\\\\\\:\\\\\\\\/\\\\\\\\/|ircs\\\\\\\\:\\\\\\\\/\\\\\\\\/|magnet\\\\\\\\:|mailto\\\\\\\\:|matrix\\\\\\\\:|mms\\\\\\\\:\\\\\\\\/\\\\\\\\/|news\\\\\\\\:|nntp\\\\\\\\:\\\\\\\\/\\\\\\\\/|redis\\\\\\\\:\\\\\\\\/\\\\\\\\/|sftp\\\\\\\\:\\\\\\\\/\\\\\\\\/|sip\\\\\\\\:|sips\\\\\\\\:|sms\\\\\\\\:|ssh\\\\\\\\:\\\\\\\\/\\\\\\\\/|svn\\\\\\\\:\\\\\\\\/\\\\\\\\/|tel\\\\\\\\:|telnet\\\\\\\\:\\\\\\\\/\\\\\\\\/|urn\\\\\\\\:|wikipedia\\\\\\\\:\\\\\\\\/\\\\\\\\/|worldwind\\\\\\\\:\\\\\\\\/\\\\\\\\/|xmpp\\\\\\\\:|\\\\\\\\/\\\\\\\\/\\\",\\n\\\"wgActionPaths\\\":{},\\\"wgTranslateNumerals\\\":true,\\\"wgExtraSignatureNamespaces\\\":[0,4,12],\\\"wgLegalTitleChars\\\":\\\" %!\\\\\\\"$\\\\u0026'()*,\\\\\\\\-./0-9:;=?@A-Z\\\\\\\\\\\\\\\\\\\\\\\\^_`a-z~+\\\\\\\\u0080-\\\\\\\\uFFFF\\\",\\\"wgIllegalFileChars\\\":\\\":/\\\\\\\\\\\\\\\\\\\",\\\"wgCentralNoticeActiveBannerDispatcher\\\":\\\"//meta.wikimedia.org/w/index.php?title=Special:BannerLoader\\\",\\\"wgCentralBannerRecorder\\\":\\\"/beacon/impression\\\",\\\"wgCentralNoticeSampleRate\\\":0.01,\\\"wgCentralNoticeImpressionEventSampleRate\\\":0,\\\"wgNoticeNumberOfBuckets\\\":4,\\\"wgNoticeBucketExpiry\\\":7,\\\"wgNoticeNumberOfControllerBuckets\\\":2,\\\"wgNoticeCookieDurations\\\":{\\\"close\\\":604800,\\\"donate\\\":21600000},\\\"wgNoticeHideUrls\\\":[\\\"//en.wikipedia.org/w/index.php?title=Special:HideBanners\\\",\\\"//meta.wikimedia.org/w/index.php?title=Special:HideBanners\\\",\\\"//commons.wikimedia.org/w/index.php?title=Special:HideBanners\\\",\\\"//species.wikimedia.org/w/index.php?title=Special:HideBanners\\\",\\\"//en.wikibooks.org/w/index.php?title=Special:HideBanners\\\",\\\"//en.wikiquote.org/w/index.php?title=Special:HideBanners\\\",\\n\\\"//en.wikisource.org/w/index.php?title=Special:HideBanners\\\",\\\"//en.wikinews.org/w/index.php?title=Special:HideBanners\\\",\\\"//en.wikiversity.org/w/index.php?title=Special:HideBanners\\\",\\\"//www.mediawiki.org/w/index.php?title=Special:HideBanners\\\"],\\\"wgCentralNoticeMaxCampaignFallback\\\":5,\\\"wgCentralNoticePerCampaignBucketExtension\\\":30,\\\"wgCiteVisualEditorOtherGroup\\\":true,\\\"wgCiteResponsiveReferences\\\":false,\\\"wgCiteSubReferencing\\\":false,\\\"wgCiteRemoveSyntheticRefsUnsafe\\\":false,\\\"wgCirrusSearchFeedbackLink\\\":false,\\\"wgMediaViewer\\\":true,\\\"wgVisualEditorConfig\\\":{\\\"usePageImages\\\":false,\\\"usePageDescriptions\\\":false,\\\"namespaces\\\":[0,2,6,12,14,110,112,116],\\\"contentModels\\\":{\\\"wikitext\\\":\\\"article\\\"},\\\"pluginModules\\\":[\\\"ext.wikihiero.visualEditor\\\",\\\"ext.cite.visualEditor\\\",\\\"ext.geshi.visualEditor\\\",\\\"ext.spamBlacklist.visualEditor\\\",\\\"ext.titleblacklist.visualEditor\\\",\\\"ext.confirmEdit.visualEditor\\\",\\\"ext.abuseFilter.visualEditor\\\",\\\"ext.CodeMirror.visualEditor.init\\\",\\\"ext.citoid.visualEditor\\\",\\\"ext.templateDataGenerator.editPage\\\",\\n\\\"ext.math.visualEditor\\\",\\\"ext.disambiguator.visualEditor\\\",\\\"ext.wikimediaEvents.visualEditor\\\",\\\"ext.TemplateSandbox.visualeditor\\\",\\\"ext.chart.visualEditor\\\",\\\"ext.kartographer.editing\\\",\\\"ext.kartographer.visualEditor\\\",\\\"ext.templateData.templateDiscovery\\\"],\\\"thumbLimits\\\":[120,150,180,200,220,250,300,400],\\\"galleryOptions\\\":{\\\"imagesPerRow\\\":0,\\\"imageWidth\\\":120,\\\"imageHeight\\\":120,\\\"captionLength\\\":true,\\\"showBytes\\\":true,\\\"mode\\\":\\\"traditional\\\",\\\"showDimensions\\\":true},\\\"editCheckReliabilityAvailable\\\":true,\\\"namespacesWithSubpages\\\":[0,110,498,666,1,2,3,4,5,7,8,9,10,11,12,13,15,667,111,112,113,116,117,828,829],\\\"specialBooksources\\\":\\\"Special:BookSources\\\",\\\"cirrusSearchLookup\\\":true,\\\"defaultSortPrefix\\\":\\\"DEFAULTSORT\\\",\\\"displayTitlePrefix\\\":\\\"DISPLAYTITLE\\\",\\\"disableForAnons\\\":false,\\\"enableBetaFeature\\\":false,\\\"preloadModules\\\":[\\\"site\\\",\\\"user\\\"],\\\"tabPosition\\\":\\\"before\\\",\\\"tabMessages\\\":{\\\"editsource\\\":\\\"visualeditor-ca-editsource\\\",\\\"createsource\\\":\\\"visualeditor-ca-createsource\\\",\\\"editlocaldescriptionsource\\\":\\\"visualeditor-ca-editlocaldescriptionsource\\\",\\n\\\"createlocaldescriptionsource\\\":\\\"visualeditor-ca-createlocaldescriptionsource\\\",\\\"editsection\\\":\\\"editsection\\\",\\\"editsectionhint\\\":\\\"editsectionhint\\\",\\\"editsectionsource\\\":\\\"visualeditor-ca-editsource-section\\\",\\\"editsectionsourcehint\\\":\\\"visualeditor-ca-editsource-section-hint\\\"},\\\"useSingleEditTab\\\":false,\\\"enableVisualSectionEditing\\\":true,\\\"showBetaWelcome\\\":true,\\\"allowExternalLinkPaste\\\":false,\\\"enableHelpCompletion\\\":true,\\\"enableWikitext\\\":true,\\\"rebaserURL\\\":false,\\\"feedbackAPIURL\\\":\\\"https://www.mediawiki.org/w/api.php\\\",\\\"suggestionFeedbackAPIURL\\\":\\\"https://www.mediawiki.org/w/api.php\\\",\\\"useChangeTagging\\\":true,\\\"editCheckTagging\\\":false,\\\"editCheck\\\":false,\\\"editCheckABTest\\\":false,\\\"enableEditCheckExperimental\\\":false,\\\"enableEditCheckSuggestionsBeta\\\":false,\\\"feedbackTitle\\\":\\\"VisualEditor/Feedback\\\",\\\"sourceFeedbackTitle\\\":\\\"2017 wikitext editor/Feedback\\\",\\\"suggestionFeedbackTitle\\\":\\\"VisualEditor/Suggestion_Mode/Feedback\\\",\\\"mobileInsertMenu\\\":[\\\"citoid\\\",\\\"syntaxhighlightDialog\\\",\\\"hiero\\\"]},\\\"wgCitoidConfig\\\":{\\\"citoidServiceUrl\\\":\\\"/api/rest_v1/data/citation\\\",\\n\\\"fullRestbaseUrl\\\":false,\\\"isbnScannerEnabled\\\":{\\\"mobile\\\":true,\\\"desktop\\\":false},\\\"wbFullRestbaseUrl\\\":false},\\\"wgTemplateWizardConfig\\\":{\\\"cirrusSearchLookup\\\":true},\\\"wgMathEntitySelectorUrl\\\":\\\"https://www.wikidata.org/w/api.php\\\",\\\"wgULSIMEEnabled\\\":true,\\\"wgULSWebfontsEnabled\\\":false,\\\"wgULSAnonCanChangeLanguage\\\":false,\\\"wgULSImeSelectors\\\":[\\\"input:not([type])\\\",\\\"input[type=text]\\\",\\\"input[type=search]\\\",\\\"textarea\\\",\\\"[contenteditable]\\\"],\\\"wgULSNoImeSelectors\\\":[\\\"#wpCaptchaWord\\\",\\\".ace_text-input\\\",\\\".ve-ce-surface-paste\\\",\\\".ve-ce-surface-clipboardHandler\\\",\\\".ve-ce-surface-readOnly [contenteditable]\\\",\\\".ace_editor textarea\\\"],\\\"wgULSNoWebfontsSelectors\\\":[\\\"#p-lang li.interlanguage-link \\\\u003E a\\\"],\\\"wgULSDisplaySettingsInInterlanguage\\\":false,\\\"wgULSCompactLinksPrepend\\\":[],\\\"wgULSFontRepositoryBasePath\\\":\\\"/w/extensions/UniversalLanguageSelector/data/fontrepo/fonts/\\\",\\\"wgParserMigrationConfig\\\":{\\\"onlyLoggedIn\\\":true,\\\"isMobile\\\":false,\\\"feedbackApiUrl\\\":\\\"https://www.mediawiki.org/w/api.php\\\",\\\"feedbackTitle\\\":\\\"Parsoid/Feedback\\\",\\\"iwp\\\":\\\"labswiki\\\"\\n}},\\\"user.json\\\":{\\\"vector-limited-width\\\":1,\\\"vector-page-tools-pinned\\\":1,\\\"vector-main-menu-pinned\\\":1,\\\"vector-toc-pinned\\\":1,\\\"vector-appearance-pinned\\\":1,\\\"vector-font-size\\\":1,\\\"vector-theme\\\":\\\"day\\\",\\\"echo-subscriptions-web-boardelection\\\":true,\\\"echo-subscriptions-email-boardelection\\\":true,\\\"echo-subscriptions-web-2fa-warning\\\":true,\\\"echo-subscriptions-email-2fa-warning\\\":false,\\\"advancedsearch-disable\\\":0,\\\"usebetatoolbar\\\":1,\\\"wikieditor-realtimepreview\\\":0,\\\"usecodemirror\\\":0,\\\"usecodemirror-colorblind\\\":0,\\\"codemirror-preferences\\\":\\\"\\\",\\\"betafeatures-auto-enroll\\\":false,\\\"visualeditor-autodisable\\\":0,\\\"visualeditor-betatempdisable\\\":0,\\\"visualeditor-collab\\\":0,\\\"visualeditor-editor\\\":\\\"visualeditor\\\",\\\"visualeditor-enable\\\":0,\\\"visualeditor-hidebetawelcome\\\":0,\\\"visualeditor-hidetabdialog\\\":0,\\\"visualeditor-newwikitext\\\":0,\\\"visualeditor-tabs\\\":\\\"remember-last\\\",\\\"templatedata-favorite-templates\\\":\\\"[]\\\",\\\"minerva-theme\\\":\\\"day\\\",\\\"mobile-editor\\\":\\\"\\\",\\\"math\\\":\\\"mathml\\\",\\\"math-popups\\\":\\\"1\\\",\\\"echo-subscriptions-web-login-fail\\\":true,\\n\\\"echo-subscriptions-email-login-fail\\\":true,\\\"echo-subscriptions-web-login-success\\\":false,\\\"echo-subscriptions-email-login-success\\\":true,\\\"echo-email-frequency\\\":0,\\\"echo-dont-email-read-notifications\\\":false,\\\"echo-subscriptions-web-edit-thank\\\":true,\\\"echo-subscriptions-email-edit-thank\\\":false,\\\"discussiontools-betaenable\\\":0,\\\"discussiontools-editmode\\\":\\\"\\\",\\\"discussiontools-newtopictool\\\":1,\\\"discussiontools-newtopictool-createpage\\\":1,\\\"discussiontools-replytool\\\":1,\\\"discussiontools-sourcemodetoolbar\\\":1,\\\"discussiontools-topicsubscription\\\":1,\\\"discussiontools-autotopicsub\\\":0,\\\"discussiontools-visualenhancements\\\":1,\\\"usecodeeditor\\\":1,\\\"revisionslider-disable\\\":0,\\\"twocolconflict-enabled\\\":1,\\\"eventlogging-display-console\\\":0,\\\"uls-preferences\\\":\\\"\\\",\\\"compact-language-links\\\":1,\\\"echo-subscriptions-web-oauth-owner\\\":true,\\\"echo-subscriptions-email-oauth-owner\\\":true,\\\"echo-subscriptions-web-oauth-admin\\\":true,\\\"echo-subscriptions-email-oauth-admin\\\":true,\\\"checkuser-temporary-account-enable\\\":false,\\\"ipinfo-use-agreement\\\":0,\\n\\\"displayquicksurveys\\\":1,\\\"readinglists-web-ui-enabled\\\":\\\"0\\\",\\\"twl-notified\\\":null,\\\"parsermigration\\\":\\\"0\\\",\\\"parsermigration-parsoid-readviews\\\":\\\"0\\\",\\\"ccmeonemails\\\":0,\\\"date\\\":\\\"default\\\",\\\"diffonly\\\":0,\\\"diff-type\\\":\\\"table\\\",\\\"disablemail\\\":0,\\\"editfont\\\":\\\"monospace\\\",\\\"editondblclick\\\":0,\\\"editrecovery\\\":0,\\\"editsectiononrightclick\\\":0,\\\"email-allow-new-users\\\":1,\\\"enotifminoredits\\\":false,\\\"enotifrevealaddr\\\":0,\\\"enotifusertalkpages\\\":1,\\\"enotifwatchlistpages\\\":0,\\\"extendwatchlist\\\":0,\\\"fancysig\\\":0,\\\"forceeditsummary\\\":0,\\\"forcesafemode\\\":0,\\\"gender\\\":\\\"unknown\\\",\\\"hidecategorization\\\":1,\\\"hideminor\\\":0,\\\"hidepatrolled\\\":0,\\\"imagesize\\\":2,\\\"minordefault\\\":0,\\\"newpageshidepatrolled\\\":0,\\\"nickname\\\":\\\"\\\",\\\"norollbackdiff\\\":0,\\\"prefershttps\\\":1,\\\"previewonfirst\\\":0,\\\"previewontop\\\":1,\\\"pst-cssjs\\\":1,\\\"rcdays\\\":7,\\\"rcenhancedfilters-disable\\\":0,\\\"rclimit\\\":50,\\\"requireemail\\\":0,\\\"search-match-redirect\\\":true,\\\"search-special-page\\\":\\\"Search\\\",\\\"search-thumbnail-extra-namespaces\\\":true,\\\"searchlimit\\\":20,\\\"showhiddencats\\\":false,\\\"shownumberswatching\\\":1,\\\"showrollbackconfirmation\\\":0,\\n\\\"skin\\\":\\\"vector-2022\\\",\\\"skin-responsive\\\":1,\\\"thumbsize\\\":5,\\\"underline\\\":2,\\\"useeditwarning\\\":1,\\\"uselivepreview\\\":0,\\\"usenewrc\\\":0,\\\"watchcreations\\\":true,\\\"watchcreations-expiry\\\":\\\"infinite\\\",\\\"watchdefault\\\":0,\\\"watchdefault-expiry\\\":\\\"infinite\\\",\\\"watchdeletion\\\":0,\\\"watchlistdays\\\":3,\\\"watchlisthideanons\\\":0,\\\"watchlisthidebots\\\":0,\\\"watchlisthidecategorization\\\":1,\\\"watchlisthideliu\\\":0,\\\"watchlisthideminor\\\":0,\\\"watchlisthideown\\\":0,\\\"watchlisthidepatrolled\\\":0,\\\"watchlistreloadautomatically\\\":0,\\\"watchlistunwatchlinks\\\":0,\\\"watchmoves\\\":0,\\\"watchrollback\\\":0,\\\"watchuploads\\\":1,\\\"watchrollback-expiry\\\":\\\"infinite\\\",\\\"watchstar-expiry\\\":\\\"infinite\\\",\\\"wlenhancedfilters-disable\\\":0,\\\"wllimit\\\":250,\\\"wlshowwikibase\\\":0,\\\"wikilove-enabled\\\":1,\\\"echo-cross-wiki-notifications\\\":1,\\\"timecorrection\\\":\\\"System|0\\\",\\\"centralnotice-display-campaign-type-advocacy\\\":1,\\\"centralnotice-display-campaign-type-article-writing\\\":1,\\\"centralnotice-display-campaign-type-photography\\\":1,\\\"centralnotice-display-campaign-type-event\\\":1,\\n\\\"centralnotice-display-campaign-type-fundraising\\\":1,\\\"centralnotice-display-campaign-type-governance\\\":1,\\\"centralnotice-display-campaign-type-maintenance\\\":1,\\\"centralnotice-display-campaign-type-special\\\":1,\\\"language\\\":\\\"en\\\",\\\"variant\\\":\\\"en\\\",\\\"variant-ban\\\":\\\"ban\\\",\\\"variant-crh\\\":\\\"crh\\\",\\\"variant-en\\\":\\\"en\\\",\\\"variant-gan\\\":\\\"gan\\\",\\\"variant-iu\\\":\\\"iu\\\",\\\"variant-ku\\\":\\\"ku\\\",\\\"variant-mni\\\":\\\"mni\\\",\\\"variant-sh\\\":\\\"sh-latn\\\",\\\"variant-shi\\\":\\\"shi\\\",\\\"variant-sr\\\":\\\"sr\\\",\\\"variant-tg\\\":\\\"tg\\\",\\\"variant-tly\\\":\\\"tly\\\",\\\"variant-uz\\\":\\\"uz\\\",\\\"variant-wuu\\\":\\\"wuu\\\",\\\"variant-zgh\\\":\\\"zgh\\\",\\\"variant-zh\\\":\\\"zh\\\",\\\"searchNs0\\\":1,\\\"searchNs1\\\":0,\\\"searchNs2\\\":0,\\\"searchNs3\\\":0,\\\"searchNs4\\\":0,\\\"searchNs5\\\":0,\\\"searchNs6\\\":0,\\\"searchNs7\\\":0,\\\"searchNs8\\\":0,\\\"searchNs9\\\":0,\\\"searchNs10\\\":0,\\\"searchNs11\\\":0,\\\"searchNs12\\\":1,\\\"searchNs13\\\":0,\\\"searchNs14\\\":0,\\\"searchNs15\\\":0,\\\"searchNs110\\\":0,\\\"searchNs111\\\":0,\\\"searchNs112\\\":0,\\\"searchNs113\\\":0,\\\"searchNs116\\\":1,\\\"searchNs117\\\":0,\\\"searchNs498\\\":1,\\\"searchNs499\\\":0,\\\"searchNs666\\\":0,\\\"searchNs667\\\":0,\\\"searchNs710\\\":0,\\\"searchNs711\\\":0,\\\"searchNs828\\\":0,\\\"searchNs829\\\":0,\\n\\\"popups-reference-previews\\\":\\\"1\\\",\\\"gadget-Navigation_popups\\\":0,\\\"gadget-HotCat\\\":0,\\\"gadget-responsiveContent\\\":0,\\\"gadget-mobileVector\\\":0,\\\"gadget-Massblock\\\":0,\\\"cirrussearch-pref-completion-profile\\\":\\\"fuzzy-subphrases\\\",\\\"multimediaviewer-enable\\\":1,\\\"mf_amc_optin\\\":\\\"0\\\",\\\"echo-email-format\\\":\\\"html\\\",\\\"echo-subscriptions-email-system\\\":true,\\\"echo-subscriptions-web-system\\\":true,\\\"echo-subscriptions-email-system-noemail\\\":false,\\\"echo-subscriptions-web-system-noemail\\\":true,\\\"echo-subscriptions-email-system-emailonly\\\":false,\\\"echo-subscriptions-web-system-emailonly\\\":true,\\\"echo-subscriptions-email-user-rights\\\":true,\\\"echo-subscriptions-web-user-rights\\\":true,\\\"echo-subscriptions-email-other\\\":false,\\\"echo-subscriptions-web-other\\\":true,\\\"echo-subscriptions-email-edit-user-talk\\\":false,\\\"echo-subscriptions-web-edit-user-talk\\\":true,\\\"echo-subscriptions-email-edit-user-page\\\":false,\\\"echo-subscriptions-web-edit-user-page\\\":true,\\\"echo-subscriptions-email-reverted\\\":false,\\\"echo-subscriptions-web-reverted\\\":true,\\n\\\"echo-subscriptions-email-article-linked\\\":false,\\\"echo-subscriptions-web-article-linked\\\":false,\\\"echo-subscriptions-email-mention\\\":false,\\\"echo-subscriptions-web-mention\\\":true,\\\"echo-subscriptions-email-mention-failure\\\":false,\\\"echo-subscriptions-web-mention-failure\\\":false,\\\"echo-subscriptions-email-mention-success\\\":false,\\\"echo-subscriptions-web-mention-success\\\":false,\\\"echo-subscriptions-email-emailuser\\\":false,\\\"echo-subscriptions-web-emailuser\\\":true,\\\"echo-subscriptions-email-thank-you-edit\\\":false,\\\"echo-subscriptions-web-thank-you-edit\\\":true,\\\"echo-subscriptions-email-verify-email-reminder\\\":true,\\\"echo-subscriptions-web-verify-email-reminder\\\":true,\\\"echo-subscriptions-email-dt-subscription\\\":false,\\\"echo-subscriptions-web-dt-subscription\\\":true,\\\"echo-subscriptions-email-dt-subscription-archiving\\\":false,\\\"echo-subscriptions-web-dt-subscription-archiving\\\":true,\\\"checkuser-userinfocard-enable\\\":false}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.base&skin=vector-2022&version=bkkwe\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.base&skin=vector-2022&sourcemap=1&version=bkkwe\",\"jquery.client@5k8ja\":\"mw.loader.impl(function(){return[\\\"jquery.client@5k8ja\\\",function($,jQuery,require,module){(function(){var profileCache={};$.client={profile:function(nav){if(!nav){nav=window.navigator;}if(profileCache[nav.userAgent+'|'+nav.platform]){return profileCache[nav.userAgent+'|'+nav.platform];}var versionNumber,key=nav.userAgent+'|'+nav.platform,uk='unknown',x='x',wildFixups=[['Chrome Safari','Chrome'],['KHTML/','Konqueror/'],[/Android(?:;|\\\\s[a-zA-Z0-9.+-]+)(.*Firefox)/,'$1']],versionPrefixes='(?:chrome|crios|firefox|fxios|opera|version|konqueror|msie|safari|android)',versionSuffix='(?:\\\\\\\\/|;?\\\\\\\\s|)([a-z0-9\\\\\\\\.\\\\\\\\+]*?)(?:;|dev|rel|\\\\\\\\)|\\\\\\\\s|$)',rName=/(chrome|crios|firefox|fxios|konqueror|msie|opera|safari|rekonq|android)/,rLayout=/(gecko|konqueror|msie|trident|edge|opera|webkit)/,layoutMap={konqueror:'khtml',msie:'trident',opera:'presto'},rLayoutVersion=/(applewebkit|gecko|trident|edge)\\\\/(\\\\d+)/,rPlatform=/(win|wow64|mac|linux|sunos|solaris|iphone|ipad)/,platformMap={sunos:'solaris',wow64:'win'},ua=nav.userAgent,match,name=uk,layout=uk,layoutversion=uk,platform=uk,version=x;wildFixups.forEach(function(fixup){\\nua=ua.replace(fixup[0],fixup[1]);});ua=ua.toLowerCase();if((match=rName.exec(ua))){name=match[1];}if((match=rLayout.exec(ua))){layout=layoutMap[match[1]]||match[1];}if((match=rLayoutVersion.exec(ua))){layoutversion=parseInt(match[2],10);}if((match=rPlatform.exec(nav.platform.toLowerCase()))){platform=platformMap[match[1]]||match[1];}if((match=new RegExp(versionPrefixes+versionSuffix).exec(ua))){version=match[1];}if(name==='safari'&&version>400){version='2.0';}if(name==='opera'&&version>=9.8){match=ua.match(/\\\\bversion\\\\/([0-9.]*)/);if(match&&match[1]){version=match[1];}else{version='10';}}if(layout==='trident'&&layoutversion>=7&&(match=ua.match(/\\\\brv[ :/]([0-9.]*)/))){if(match[1]){name='msie';version=match[1];}}if(name==='chrome'&&(match=ua.match(/\\\\bedge\\\\/([0-9.]*)/))){name='edge';version=match[1];layout='edge';layoutversion=parseInt(match[1],10);}if((match=ua.match(/\\\\bsilk\\\\/([0-9.\\\\-_]*)/))){if(match[1]){name='silk';version=match[1];}}versionNumber=parseFloat(version,10)||0.0;\\nprofileCache[key]={name:name,layout:layout,layoutVersion:layoutversion,platform:platform,version:version,versionBase:(version!==x?Math.floor(versionNumber).toString():x),versionNumber:versionNumber};return profileCache[key];},test:function(map,profile,exactMatchOnly){var conditions,dir,i,op,val,j,pieceVersion,pieceVal,compare;profile=$.isPlainObject(profile)?profile:$.client.profile();if(map.ltr&&map.rtl){dir=$(document.body).is('.rtl')?'rtl':'ltr';map=map[dir];}if(typeof map!=='object'||map[profile.name]===undefined){return!exactMatchOnly;}conditions=map[profile.name];if(conditions===false){return false;}if(conditions===null){return true;}for(i=0;i<conditions.length;i++){op=conditions[i][0];val=conditions[i][1];if(typeof val==='string'){pieceVersion=profile.version.toString().split('.');pieceVal=val.split('.');while(pieceVersion.length<pieceVal.length){pieceVersion.push('0');}while(pieceVal.length<pieceVersion.length){pieceVal.push('0');}compare=0;for(j=0;j<pieceVersion.length;j++){if(Number(pieceVersion[j])<Number(pieceVal[j])){\\ncompare=-1;break;}else if(Number(pieceVersion[j])>Number(pieceVal[j])){compare=1;break;}}if(!(eval(String(compare+op+'0')))){return false;}}else if(typeof val==='number'){if(!(eval('profile.versionNumber'+op+val))){return false;}}}return true;}};}());\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=jquery.client&skin=vector-2022&version=yzyc4\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=jquery.client&skin=vector-2022&sourcemap=1&version=yzyc4\",\"jquery.textSelection@1x0f0\":\"mw.loader.impl(function(){return[\\\"jquery.textSelection@1x0f0\\\",function($,jQuery,require,module){(function(){function supportsInsertText(){return $(this).data('jquery.textSelection')===undefined&&typeof document.execCommand==='function'&&typeof document.queryCommandSupported==='function'&&document.queryCommandSupported('insertText');}function execInsertText(field,content,fallback){let inserted=false;if(supportsInsertText()&&!($.client.profile().layout==='webkit'&&content.split('\\\\n').length>100)){field.focus();try{if(document.activeElement===field&&document.execCommand('insertText',false,content)){inserted=true;}}catch(e){}}if(!inserted){fallback.call(field,content);}}const fn={getContents:function(){return this.val();},setContents:function(content){return this.each(function(){const scrollTop=this.scrollTop;this.select();execInsertText(this,content,function(){$(this).val(content);});this.scrollTop=scrollTop;});},getSelection:function(){const el=this.get(0);let val;if(!el){val='';}else{val=el.value.slice(el.selectionStart,el.selectionEnd);}return val;},replaceSelection:function(value){\\nreturn this.each(function(){execInsertText(this,value,function(){const allText=$(this).textSelection('getContents');const currSelection=$(this).textSelection('getCaretPosition',{startAndEnd:true});const startPos=currSelection[0];const endPos=currSelection[1];$(this).textSelection('setContents',allText.slice(0,startPos)+value+allText.slice(endPos));$(this).textSelection('setSelection',{start:startPos,end:startPos+value.length});});});},encapsulateSelection:function(options){return this.each(function(){let selText,isSample,pre=options.pre,post=options.post;function checkSelectedText(){if(!selText){selText=options.peri;isSample=true;}else if(options.replace){selText=options.peri;}else{while(selText.endsWith(' ')){selText=selText.slice(0,-1);post+=' ';}while(selText.startsWith(' ')){selText=selText.slice(1);pre=' '+pre;}}}function doSplitLines(text,preText,postText){const selTextArr=text.split('\\\\n');let insText='';for(let i=0;i<selTextArr.length;i++){insText+=preText+selTextArr[i]+postText;\\nif(i!==selTextArr.length-1){insText+='\\\\n';}}return insText;}isSample=false;$(this).trigger('focus');if(options.selectionStart!==undefined){$(this).textSelection('setSelection',{start:options.selectionStart,end:options.selectionEnd});}selText=$(this).textSelection('getSelection');const allText=$(this).textSelection('getContents');const currSelection=$(this).textSelection('getCaretPosition',{startAndEnd:true});let startPos=currSelection[0];const endPos=currSelection[1];checkSelectedText();let combiningCharSelectionBug=false;if(options.selectionStart!==undefined&&endPos-startPos!==options.selectionEnd-options.selectionStart){startPos=options.selectionStart;combiningCharSelectionBug=true;}let insertText=pre+selText+post;if(options.splitlines){insertText=doSplitLines(selText,pre,post);}if(options.ownline){if(startPos!==0&&allText.charAt(startPos-1)!=='\\\\n'&&allText.charAt(startPos-1)!=='\\\\r'){insertText='\\\\n'+insertText;pre+='\\\\n';}if(allText.charAt(endPos)!=='\\\\n'&&allText.charAt(endPos)!=='\\\\r'){\\ninsertText+='\\\\n';post+='\\\\n';}}if(combiningCharSelectionBug){$(this).textSelection('setContents',allText.slice(0,startPos)+insertText+allText.slice(endPos));}else{$(this).textSelection('replaceSelection',insertText);}if(isSample&&options.selectPeri&&(!options.splitlines||(options.splitlines&&!selText.includes('\\\\n')))){$(this).textSelection('setSelection',{start:startPos+pre.length,end:startPos+pre.length+selText.length});}else{$(this).textSelection('setSelection',{start:startPos+insertText.length});}$(this).trigger('encapsulateSelection',[options.pre,options.peri,options.post,options.ownline,options.replace,options.splitlines]);});},getCaretPosition:function(options){function getCaret(e){let caretPos=0,endPos=0;if(e){caretPos=e.selectionStart;endPos=e.selectionEnd;}return options.startAndEnd?[caretPos,endPos]:caretPos;}return getCaret(this.get(0));},setSelection:function(options){return this.each(function(){if(options.start>this.selectionEnd){this.selectionEnd=options.end;this.selectionStart=options.start;\\n}else{this.selectionStart=options.start;this.selectionEnd=options.end;}});},scrollToCaretPosition:function(options){return this.each(function(){const clientHeight=this.clientHeight,origValue=this.value,origSelectionStart=this.selectionStart,origSelectionEnd=this.selectionEnd,origScrollTop=this.scrollTop;this.value=this.value.slice(0,this.selectionEnd);this.scrollTop=this.scrollHeight;let calcScrollTop=this.scrollTop;this.value=origValue;this.selectionStart=origSelectionStart;this.selectionEnd=origSelectionEnd;if(!options.force){if(calcScrollTop<origScrollTop&&origScrollTop-calcScrollTop<clientHeight){calcScrollTop=origScrollTop;}}this.scrollTop=calcScrollTop;$(this).trigger('scrollToPosition');});}};$.fn.textSelection=function(command,commandOptions){const alternateFn=$(this).data('jquery.textSelection');for(const key in commandOptions){if(commandOptions[key]===undefined){delete commandOptions[key];}}switch(command){case'encapsulateSelection':commandOptions=Object.assign({pre:'',peri:'',\\npost:'',ownline:false,replace:false,selectPeri:true,splitlines:false,selectionStart:undefined,selectionEnd:undefined},commandOptions);break;case'getCaretPosition':commandOptions=Object.assign({startAndEnd:false},commandOptions);break;case'setSelection':commandOptions=Object.assign({start:undefined,end:undefined},commandOptions);if(commandOptions.end===undefined){commandOptions.end=commandOptions.start;}break;case'scrollToCaretPosition':commandOptions=Object.assign({force:false},commandOptions);break;case'register':if(alternateFn){throw new Error('Another textSelection API was already registered');}$(this).data('jquery.textSelection',commandOptions);return;case'unregister':$(this).removeData('jquery.textSelection');return;}const retval=(alternateFn&&alternateFn[command]||fn[command]).call(this,commandOptions);return retval;};}());\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=jquery.textSelection&skin=vector-2022&version=1s8ie\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=jquery.textSelection&skin=vector-2022&sourcemap=1&version=1s8ie\",\"mediawiki.String@rowro\":\"mw.loader.impl(function(){return[\\\"mediawiki.String@rowro\\\",function($,jQuery,require,module){(function(){function byteLength(str){return str.replace(/[\\\\u0080-\\\\u07FF\\\\uD800-\\\\uDFFF]/g,'**').replace(/[\\\\u0800-\\\\uD7FF\\\\uE000-\\\\uFFFF]/g,'***').length;}function codePointLength(str){return str.replace(/[\\\\uD800-\\\\uDBFF][\\\\uDC00-\\\\uDFFF]/g,'*').length;}function charAt(string,offset,backwards){const maybePair=backwards?string.slice(offset-1,offset+1):string.slice(offset,offset+2);if(/^[\\\\uD800-\\\\uDBFF][\\\\uDC00-\\\\uDFFF]$/.test(maybePair)){return maybePair;}else{return string.charAt(offset);}}function lcFirst(string){const firstChar=charAt(string,0);return firstChar.toLowerCase()+string.slice(firstChar.length);}function ucFirst(string){const firstChar=charAt(string,0);return firstChar.toUpperCase()+string.slice(firstChar.length);}function trimLength(safeVal,newVal,length,lengthFn){const oldVal=safeVal;if(lengthFn(newVal)<=length){return{newVal:newVal,trimmed:false};}let startMatches=0;let endMatches=0;const matchesLen=Math.min(newVal.length,oldVal.length);while(startMatches<matchesLen){const oldChar=charAt(oldVal,startMatches,false);\\nconst newChar=charAt(newVal,startMatches,false);if(oldChar!==newChar){break;}startMatches+=oldChar.length;}while(endMatches<(matchesLen-startMatches)){const oldChar=charAt(oldVal,oldVal.length-1-endMatches,true);const newChar=charAt(newVal,newVal.length-1-endMatches,true);if(oldChar!==newChar){break;}endMatches+=oldChar.length;}const inpParts=[newVal.slice(0,startMatches),newVal.slice(startMatches,newVal.length-endMatches),newVal.slice(newVal.length-endMatches)];while(lengthFn(inpParts.join(''))>length&&inpParts[1].length>0){const chopOff=/[\\\\uD800-\\\\uDBFF][\\\\uDC00-\\\\uDFFF]$/.test(inpParts[1])?2:1;inpParts[1]=inpParts[1].slice(0,-chopOff);}return{newVal:inpParts.join(''),trimmed:newVal!==inpParts.join('')};}function trimByteLength(safeVal,newVal,byteLimit,filterFunction){let lengthFn;if(filterFunction){lengthFn=function(val){return byteLength(filterFunction(val));};}else{lengthFn=byteLength;}return trimLength(safeVal,newVal,byteLimit,lengthFn);}function trimCodePointLength(safeVal,newVal,codePointLimit,filterFunction){\\nlet lengthFn;if(filterFunction){lengthFn=function(val){return codePointLength(filterFunction(val));};}else{lengthFn=codePointLength;}return trimLength(safeVal,newVal,codePointLimit,lengthFn);}module.exports={byteLength,codePointLength,charAt,lcFirst,ucFirst,trimByteLength,trimCodePointLength};}());\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.String&skin=vector-2022&version=v59sc\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.String&skin=vector-2022&sourcemap=1&version=v59sc\",\"mediawiki.util@u7pyo\":\"mw.loader.impl(function(){return[\\\"mediawiki.util@u7pyo\\\",{\\\"main\\\":\\\"util.js\\\",\\\"files\\\":{\\\"util.js\\\":function(require,module,exports){'use strict';let config=require('./config.json');const portletLinkOptions=require('./portletLinkOptions.json');const infinityValues=require('./infinityValues.json');require('./jquery.accessKeyLabel.js');function rawurlencode(str){return encodeURIComponent(String(str)).replace(/!/g,'%21').replace(/'/g,'%27').replace(/\\\\(/g,'%28').replace(/\\\\)/g,'%29').replace(/\\\\*/g,'%2A').replace(/~/g,'%7E');}function escapeIdInternal(str,mode){str=String(str);switch(mode){case'html5':return str.replace(/ /g,'_');case'legacy':return rawurlencode(str.replace(/ /g,'_')).replace(/%3A/g,':').replace(/%/g,'.');default:throw new Error('Unrecognized ID escaping mode '+mode);}}const util={rawurlencode:rawurlencode,escapeIdForAttribute(str){return escapeIdInternal(str,config.FragmentMode[0]);},escapeIdForLink(str){return escapeIdInternal(str,config.FragmentMode[0]);},getTargetFromFragment(hash){hash=hash||location.hash.slice(1);if(!hash){return null;}const element=document.getElementById(hash);if(element){return element;\\n}const decodedHash=this.percentDecodeFragment(hash);if(!decodedHash){return null;}return document.getElementById(decodedHash);},percentDecodeFragment(text){const params=new URLSearchParams('q='+text.replace(/\\\\+/g,'%2B').replace(/&/g,'%26').replace(/=/g,'%3D'));return params.get('q');},debounce(func,wait,immediate){if(typeof func==='number'){const tmpWait=wait;wait=func;func=tmpWait;}let timeout;return function(){const context=this,args=arguments,later=function(){timeout=null;if(!immediate){func.apply(context,args);}};if(immediate&&!timeout){func.apply(context,args);}if(!timeout||wait){clearTimeout(timeout);timeout=setTimeout(later,wait);}};},throttle(func,wait){let context,args,timeout,previous=Date.now()-wait;const run=function(){timeout=null;previous=Date.now();func.apply(context,args);};return function(){const remaining=Math.max(wait-(Date.now()-previous),0);context=this;args=arguments;if(!timeout){timeout=setTimeout(run,remaining);}};},wikiUrlencode:mw.internalWikiUrlencode,getUrl(pageName,params){\\nlet url,query,fragment,title=typeof pageName==='string'?pageName:mw.config.get('wgPageName');const fragmentIdx=title.indexOf('#');if(fragmentIdx!==-1){fragment=title.slice(fragmentIdx+1);title=title.slice(0,fragmentIdx);}if(params){query=$.param(params);}if(!title&&fragment){url='';}else if(query){url=title?util.wikiScript()+'?title='+util.wikiUrlencode(title)+'&'+query:util.wikiScript()+'?'+query;}else{url=mw.config.get('wgArticlePath').replace('$1',()=>util.wikiUrlencode(title));}if(fragment){url+='#'+util.escapeIdForLink(fragment);}return url;},wikiScript(str){if(!str||str==='index'){return mw.config.get('wgScript');}else if(str==='load'){return config.LoadScript;}else{return mw.config.get('wgScriptPath')+'/'+str+'.php';}},addCSS(text){const s=mw.loader.addStyleTag(text);return s.sheet;},getParamValue(param,url){const re=new RegExp('^[^#]*[&?]'+util.escapeRegExp(param)+'=([^&#]*)'),m=re.exec(url!==undefined?url:location.href);if(m){try{return decodeURIComponent(m[1].replace(/\\\\+/g,'%20'));\\n}catch(e){}}return null;},getArrayParam(param,params){const paramRe=new RegExp('^'+util.escapeRegExp(param)+'\\\\\\\\[(\\\\\\\\d*)\\\\\\\\]$');if(!params){params=new URLSearchParams(location.search);}const arr=[];params.forEach((v,k)=>{const paramMatch=k.match(paramRe);if(paramMatch){let i=paramMatch[1];if(i===''){i=arr.length;}arr[i]=v;}});return arr.length?arr:null;},$content:null,hidePortlet(portletId){const portlet=document.getElementById(portletId);if(portlet){portlet.classList.add('emptyPortlet');}},isPortletVisible(portletId){const portlet=document.getElementById(portletId);return portlet&&!portlet.classList.contains('emptyPortlet');},showPortlet(portletId){const portlet=document.getElementById(portletId);if(portlet){portlet.classList.remove('emptyPortlet');}},clearSubtitle(){const subtitle=document.getElementById('mw-content-subtitle');if(subtitle){subtitle.innerHTML='';}},messageBox(textOrElement,type='notice',inline=false){const msgBoxElement=document.createElement('div');msgBoxElement.classList.add('cdx-message');\\nif(['error','warning','success','notice'].includes(type)){msgBoxElement.classList.add(`cdx-message--${type}`);}msgBoxElement.classList.add(inline?'cdx-message--inline':'cdx-message--block');if(type==='error'){msgBoxElement.setAttribute('role','alert');}else{msgBoxElement.setAttribute('aria-live','polite');}const iconElement=document.createElement('span');iconElement.classList.add('cdx-message__icon');const contentElement=document.createElement('div');contentElement.classList.add('cdx-message__content');if(typeof textOrElement==='string'){contentElement.textContent=textOrElement;}else{contentElement.appendChild(textOrElement);}msgBoxElement.appendChild(iconElement);msgBoxElement.appendChild(contentElement);return msgBoxElement;},addSubtitle(nodeOrHTMLString){const subtitle=document.getElementById('mw-content-subtitle');if(!subtitle){return false;}if(typeof nodeOrHTMLString==='string'){subtitle.innerHTML+=nodeOrHTMLString;}else{subtitle.appendChild(nodeOrHTMLString);}return true;},\\naddPortlet(id,label,selectorHint){const portlet=document.createElement('div');portlet.classList.add('mw-portlet','mw-portlet-'+id,'emptyPortlet','mw-portlet-js');portlet.id=id;if(label){const labelNode=document.createElement('label');labelNode.textContent=label;portlet.appendChild(labelNode);}const listWrapper=document.createElement('div');const list=document.createElement('ul');listWrapper.appendChild(list);portlet.appendChild(listWrapper);if(selectorHint){let referenceNode;try{referenceNode=document.querySelector(selectorHint);}catch(e){}if(referenceNode){referenceNode.after(portlet);}else{return null;}}mw.hook('util.addPortlet').fire(portlet,selectorHint);return portlet;},addPortletLink(portletId,href,text,id,tooltip,accesskey,nextnode){if(!portletId){return null;}const portlet=document.getElementById(portletId);if(!portlet){return null;}const link=document.createElement('a');link.href=href;let linkChild=document.createTextNode(text);let i=portletLinkOptions['text-wrapper'].length;\\nwhile(i--){const wrapper=portletLinkOptions['text-wrapper'][i];const wrapperElement=document.createElement(wrapper.tag);if(wrapper.attributes){$(wrapperElement).attr(wrapper.attributes);}wrapperElement.appendChild(linkChild);linkChild=wrapperElement;}link.appendChild(linkChild);if(tooltip){link.title=tooltip;}if(accesskey){link.accessKey=accesskey;}util.showPortlet(portletId);const item=$('<li>').append(link)[0];item.className='mw-list-item mw-list-item-js';if(id){item.id=id;}let ul=portlet.tagName.toLowerCase()==='ul'?portlet:portlet.querySelector('ul');if(!ul){ul=document.createElement('ul');const portletDiv=portlet.querySelector('div');if(portletDiv){portletDiv.appendChild(ul);}else{portlet.appendChild(ul);}}let next;if(nextnode&&(typeof nextnode==='string'||nextnode.nodeType||nextnode.jquery)){nextnode=$(ul).find(nextnode);if(nextnode.length===1&&nextnode[0].parentNode===ul){nextnode.before(item);next=true;}}if(!next){ul.appendChild(item);}if(accesskey){$(link).updateTooltipAccessKeys();\\n}mw.hook('util.addPortletLink').fire(item,{id:id});return item;},validateEmail(email){if(email===''){return null;}const rfc5322Atext='a-z0-9!#$%&\\\\'*+\\\\\\\\-/=?^_`{|}~';const rfc1034LdhStr='a-z0-9\\\\\\\\-';const html5EmailRegexp=new RegExp('^'+'['+rfc5322Atext+'\\\\\\\\.]+'+'@'+'['+rfc1034LdhStr+']+'+'(?:\\\\\\\\.['+rfc1034LdhStr+']+)*'+'$','i');return(email.match(html5EmailRegexp)!==null);},isIPv4Address(address,allowBlock){if(typeof address!=='string'){return false;}const RE_IP_BYTE='(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|0?[0-9]?[0-9])';const RE_IP_ADD='(?:'+RE_IP_BYTE+'\\\\\\\\.){3}'+RE_IP_BYTE;const block=allowBlock?'(?:\\\\\\\\/(?:3[0-2]|[12]?\\\\\\\\d))?':'';return(new RegExp('^'+RE_IP_ADD+block+'$').test(address));},isIPv6Address(address,allowBlock){if(typeof address!=='string'){return false;}const block=allowBlock?'(?:\\\\\\\\/(?:12[0-8]|1[01][0-9]|[1-9]?\\\\\\\\d))?':'';let RE_IPV6_ADD='(?:'+':(?::|(?::'+'[0-9A-Fa-f]{1,4}'+'){1,7})'+'|'+'[0-9A-Fa-f]{1,4}'+'(?::'+'[0-9A-Fa-f]{1,4}'+'){0,6}::'+'|'+'[0-9A-Fa-f]{1,4}'+'(?::'+\\n'[0-9A-Fa-f]{1,4}'+'){7}'+')';if(new RegExp('^'+RE_IPV6_ADD+block+'$').test(address)){return true;}RE_IPV6_ADD='[0-9A-Fa-f]{1,4}'+'(?:::?'+'[0-9A-Fa-f]{1,4}'+'){1,6}';return(new RegExp('^'+RE_IPV6_ADD+block+'$').test(address)&&/::/.test(address)&&!/::.*::/.test(address));},isIPAddress(address,allowBlock){return util.isIPv4Address(address,allowBlock)||util.isIPv6Address(address,allowBlock);},parseImageUrl(url){let name,decodedName,width,urlTemplate;if(/thumb\\\\.php/.test(url)){decodedName=mw.util.getParamValue('f',url);name=encodeURIComponent(decodedName);width=mw.util.getParamValue('width',url)||mw.util.getParamValue('w',url);urlTemplate=url.replace(/([&?])w(?:idth)?=[^&]+/g,'')+'&width={width}';}else{const regexes=[/\\\\/[\\\\da-f]\\\\/[\\\\da-f]{2}\\\\/([^\\\\s/]+)\\\\/(?:[^\\\\s/]+-)?(\\\\d+)px-(?:\\\\1|thumbnail|[a-z\\\\d]{31})(?:\\\\.[^\\\\s/?]+)?(?:\\\\?[^\\\\s]+)?$/,/\\\\/[\\\\da-f]\\\\/[\\\\da-f]{2}\\\\/([^\\\\s/?]+)(?:\\\\?[^\\\\s]+)?$/,/\\\\/([^\\\\s/]+)\\\\/(?:[^\\\\s/]+-)?(\\\\d+)px-(?:\\\\1|thumbnail|[a-z\\\\d]{31})[^\\\\s/?]*(?:\\\\?[^\\\\s]+)?$/,\\n/\\\\/([^\\\\s/?]+)(?:\\\\?[^\\\\s]+)?$/];for(let i=0;i<regexes.length;i++){const match=url.match(regexes[i]);if(match){name=match[1];decodedName=decodeURIComponent(name);width=match[2]||null;break;}}}if(name){if(width!==null){width=parseInt(width,10)||null;}if(config.GenerateThumbnailOnParse){urlTemplate=mw.util.getUrl('Special:Redirect/file/'+decodedName,{width:'{width}'}).replace('%7Bwidth%7D','{width}');}else if(width&&!urlTemplate){const strippedUrl=url.replace(name,'{name}').replace(name,'{name}').replace(width+'px-','{width}px-');urlTemplate=strippedUrl.replace(/\\\\{name\\\\}/g,name);}return{name:decodedName.replace(/_/g,' '),width,resizeUrl:urlTemplate?(w)=>urlTemplate.replace('{width}',w):null};}return null;},adjustThumbWidthForSteps(thumbWidth,originalWidth){const steps=config.ThumbnailSteps;const ratio=config.ThumbnailStepsRatio;if(!steps||!ratio){return thumbWidth;}for(const widthStep of steps){if(widthStep>originalWidth){return originalWidth;}if(widthStep>=thumbWidth){return widthStep;}}\\nreturn thumbWidth;},escapeRegExp(str){return str.replace(/([\\\\\\\\{}()|.?*+\\\\-^$\\\\[\\\\]])/g,'\\\\\\\\$1');},sanitizeIP(ip){if(typeof ip!=='string'){return null;}ip=ip.trim();if(ip===''){return null;}if(!this.isIPAddress(ip,true)){return ip;}if(this.isIPv4Address(ip,true)){return ip.replace(/(^|\\\\.)0+(\\\\d)/g,'$1$2');}ip=ip.toUpperCase();const abbrevPos=ip.indexOf('::');if(abbrevPos!==-1){const CIDRStart=ip.indexOf('/');const addressEnd=(CIDRStart!==-1)?CIDRStart-1:ip.length-1;let repeatStr,extra,pad;if(abbrevPos===0){repeatStr='0:';extra=ip==='::'?'0':'';pad=9;}else if(abbrevPos===addressEnd-1){repeatStr=':0';extra='';pad=9;}else{repeatStr=':0';extra=':';pad=8;}const count=pad-(ip.split(':').length-1);ip=ip.replace('::',repeatStr.repeat(count)+extra);}return ip.replace(/(^|:)0+(([0-9A-Fa-f]{1,4}))/g,'$1$2');},prettifyIP(ip){ip=this.sanitizeIP(ip);if(ip===null){return null;}if(this.isIPv6Address(ip,true)){let cidr,replaceZeros;if(ip.includes('/')){const ipCidrSplit=ip.split('/',2);ip=ipCidrSplit[0];cidr=ipCidrSplit[1];\\n}else{cidr='';}const matches=ip.match(/(?:^|:)0(?::0)+(?:$|:)/g);if(matches){replaceZeros=matches[0];for(let i=1;i<matches.length;i++){if(matches[i].length>replaceZeros.length){replaceZeros=matches[i];}}}ip=ip.replace(replaceZeros,'::');if(cidr!==''){ip=ip.concat('/',cidr);}ip=ip.toLowerCase();}return ip;},isTemporaryUser(username){if(!config.AutoCreateTempUser.enabled&&!config.AutoCreateTempUser.known){return false;}if(username===null){return false;}let matchPatterns=config.AutoCreateTempUser.matchPattern;if(typeof matchPatterns==='string'){matchPatterns=[matchPatterns];}else if(matchPatterns===null){matchPatterns=[config.AutoCreateTempUser.genPattern];}for(let i=0;i<matchPatterns.length;i++){const autoCreateUserMatchPattern=matchPatterns[i];const position=autoCreateUserMatchPattern.indexOf('$1');if(position===-1){return false;}const prefix=autoCreateUserMatchPattern.slice(0,position);const suffix=autoCreateUserMatchPattern.slice(position+'$1'.length);let match=true;if(prefix!==''){\\nmatch=username.startsWith(prefix);}if(match&&suffix!==''){match=(username.endsWith(suffix))&&(username.length>=prefix.length+suffix.length);}if(match){return true;}}return false;},isInfinity(str){return infinityValues.includes(str);}};function init(){const content=document.querySelector('.mw-body-primary')||document.querySelector('.mw-body')||document.querySelector('#mw-content-text')||document.body;util.$content=$(content);}mw.RegExp={};mw.log.deprecate(mw.RegExp,'escape',util.escapeRegExp,'Use mw.util.escapeRegExp() instead.','mw.RegExp.escape');if(window.QUnit){util.setOptionsForTest=function(opts){config=!opts?require('./config.json'):Object.assign({},config,opts);};util.init=init;}else{$(init);}mw.util=util;module.exports=util;\\n},\\\"jquery.accessKeyLabel.js\\\":function(require,module,exports){let testMode=false;let cachedModifiers;function getAccessKeyModifiers(nav){if(!nav&&cachedModifiers){return cachedModifiers;}const profile=$.client.profile(nav);let accessKeyModifiers;switch(profile.name){case'opera':case'chrome':if(profile.platform==='mac'){accessKeyModifiers='ctrl-option';}else{accessKeyModifiers='alt';}break;case'firefox':case'iceweasel':if(profile.platform==='mac'){if(profile.versionNumber<14){accessKeyModifiers='ctrl';}else{accessKeyModifiers='ctrl-option';}}else{accessKeyModifiers='alt-shift';}break;case'safari':accessKeyModifiers='ctrl-option';break;case'msie':case'edge':accessKeyModifiers='alt';break;default:accessKeyModifiers=profile.platform==='mac'?'ctrl':'alt';break;}if(!nav){cachedModifiers=accessKeyModifiers;}return accessKeyModifiers;}function getAccessKeyLabel(element){if(!element.accessKey){return'';}if(!testMode&&element.accessKeyLabel){return element.accessKeyLabel;}return(testMode?'test':getAccessKeyModifiers())+'-'+element.accessKey;}function updateTooltipOnElement(element,titleElement){\\nconst oldTitle=titleElement.title;if(!oldTitle){return;}const separatorMsg=mw.message('word-separator').plain();const parts=(separatorMsg+mw.message('brackets').plain()).split('$1');const regexp=new RegExp(parts.map(mw.util.escapeRegExp).join('.*?')+'$');let newTitle=oldTitle.replace(regexp,'');const accessKeyLabel=getAccessKeyLabel(element);if(accessKeyLabel){newTitle+=separatorMsg+mw.message('brackets',accessKeyLabel).plain();}if(oldTitle!==newTitle){titleElement.title=newTitle;}}const labelable='button, input, textarea, keygen, meter, output, progress, select';function updateTooltip(element){updateTooltipOnElement(element,element);const $element=$(element);if($element.is(labelable)){const id=element.id.replace(/\\\"/g,'\\\\\\\\\\\"');if(id){const $label=$('label[for=\\\"'+id+'\\\"]');if($label.length===1){updateTooltipOnElement(element,$label[0]);}}const $labelParent=$element.parents('label');if($labelParent.length===1){updateTooltipOnElement(element,$labelParent[0]);}}}$.fn.updateTooltipAccessKeys=function(){\\nreturn this.each(function(){updateTooltip(this);});};$.fn.updateTooltipAccessKeys.getAccessKeyLabel=getAccessKeyLabel;$.fn.updateTooltipAccessKeys.getAccessKeyPrefix=function(nav){return getAccessKeyModifiers(nav)+'-';};$.fn.updateTooltipAccessKeys.setTestMode=function(mode){testMode=mode;};\\n},\\\"config.json\\\":{\\\"FragmentMode\\\":[\\\"html5\\\",\\\"legacy\\\"],\\\"GenerateThumbnailOnParse\\\":true,\\\"LoadScript\\\":\\\"/w/load.php\\\",\\\"AutoCreateTempUser\\\":{\\\"known\\\":true,\\\"enabled\\\":true,\\\"actions\\\":[\\\"edit\\\"],\\\"genPattern\\\":\\\"~$1\\\",\\\"matchPattern\\\":\\\"~2$1\\\",\\\"reservedPattern\\\":\\\"~2$1\\\",\\\"serialProvider\\\":{\\\"type\\\":\\\"centralauth\\\",\\\"numShards\\\":30,\\\"useYear\\\":true},\\\"serialMapping\\\":{\\\"type\\\":\\\"readable-numeric\\\",\\\"offset\\\":1500},\\\"expireAfterDays\\\":90,\\\"notifyBeforeExpirationDays\\\":10},\\\"ThumbnailSteps\\\":[20,40,60,120,250,330,500,960,1280,1920,3840],\\\"ThumbnailStepsRatio\\\":1},\\\"portletLinkOptions.json\\\":{\\\"text-wrapper\\\":[{\\\"tag\\\":\\\"span\\\"}]},\\\"infinityValues.json\\\":[\\\"infinite\\\",\\\"indefinite\\\",\\\"infinity\\\",\\\"never\\\"]}},{},{\\\"brackets\\\":\\\"[$1]\\\",\\\"word-separator\\\":\\\" \\\"}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.util&skin=vector-2022&version=16o42\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.util&skin=vector-2022&sourcemap=1&version=16o42\",\"mediawiki.cookie@sn77f\":\"mw.loader.impl(function(){return[\\\"mediawiki.cookie@sn77f\\\",{\\\"main\\\":\\\"index.js\\\",\\\"files\\\":{\\\"index.js\\\":function(require,module,exports){'use strict';const config=require('./config.json'),jar=require('./jar.js');let defaults={prefix:config.prefix,domain:config.domain,path:config.path,expires:config.expires,secure:false,sameSite:''};require('./jquery.js');mw.cookie={set:function(key,value,options){if(arguments.length>2&&(!options||options instanceof Date||typeof options==='number')){options={expires:options};}options=Object.assign({},defaults,options);const prefix=options.prefix;delete options.prefix;if(!options.expires){delete options.expires;}else if(typeof options.expires==='number'){const date=new Date();date.setTime(Number(date)+(options.expires*1000));options.expires=date;}delete options.sameSiteLegacy;if(value!==null){value=String(value);}jar.cookie(prefix+key,value,options);},get:function(key,prefix,defaultValue){if(prefix===undefined||prefix===null){prefix=defaults.prefix;}if(arguments.length<3){defaultValue=null;}const result=jar.cookie(prefix+key);return result!==null?result:defaultValue;},getCrossSite:function(key,prefix,defaultValue){\\nreturn this.get(key,prefix,defaultValue);}};mw.log.deprecate(mw.cookie,'getCrossSite',mw.cookie.getCrossSite,'Use mw.cookie.get instead.','mw.cookie.getCrossSite');if(window.QUnit){module.exports={jar,setDefaults:function(value){const prev=defaults;defaults=value;return prev;}};}\\n},\\\"jar.js\\\":function(require,module,exports){(function(){const pluses=/\\\\+/g;let config=null,cookie;function raw(s){return s;}function decoded(s){try{return unRfc2068(decodeURIComponent(s.replace(pluses,' ')));}catch(e){return'';}}function unRfc2068(value){if(value.startsWith('\\\"')){value=value.slice(1,-1).replace(/\\\\\\\\\\\"/g,'\\\"').replace(/\\\\\\\\\\\\\\\\/g,'\\\\\\\\');}return value;}function fromJSON(value){return config.json?JSON.parse(value):value;}config=cookie=function(key,value,options){if(value!==undefined){options=Object.assign({},config.defaults,options);if(value===null){options.expires=-1;}if(typeof options.expires==='number'){const days=options.expires,t=options.expires=new Date();t.setDate(t.getDate()+days);}value=config.json?JSON.stringify(value):String(value);try{return(document.cookie=[encodeURIComponent(key),'=',config.raw?value:encodeURIComponent(value),options.expires?'; expires='+options.expires.toUTCString():'',options.path?'; path='+options.path:'',options.domain?'; domain='+options.domain:'',options.secure?'; secure':'',options.sameSite?'; samesite='+options.sameSite:''\\n].join(''));}catch(e){return'';}}const decode=config.raw?raw:decoded;let cookies;try{cookies=document.cookie.split('; ');}catch(e){cookies=[];}let result=key?null:{};for(let i=0,l=cookies.length;i<l;i++){const parts=cookies[i].split('=');const name=decode(parts.shift());const s=decode(parts.join('='));if(key&&key===name){result=fromJSON(s);break;}if(!key){result[name]=fromJSON(s);}}return result;};config.defaults={};function removeCookie(key,options){if(cookie(key)!==null){cookie(key,null,options);return true;}return false;}module.exports={cookie,removeCookie};}());\\n},\\\"jquery.js\\\":function(require,module,exports){const jar=require('./jar.js');$.cookie=jar.cookie;$.removeCookie=jar.removeCookie;\\n},\\\"config.json\\\":{\\\"prefix\\\":\\\"labswiki\\\",\\\"domain\\\":\\\"\\\",\\\"path\\\":\\\"/\\\",\\\"expires\\\":2592000}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.cookie&skin=vector-2022&version=53t2a\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.cookie&skin=vector-2022&sourcemap=1&version=53t2a\",\"mediawiki.experiments@15xww\":\"mw.loader.impl(function(){return[\\\"mediawiki.experiments@15xww\\\",function($,jQuery,require,module){(function(){const CONTROL_BUCKET='control',MAX_INT32_UNSIGNED=4294967295;function hashString(string){let hash=0,i=string.length;while(i--){hash+=string.charCodeAt(i);hash+=(hash<<10);hash^=(hash>>6);}hash+=(hash<<3);hash^=(hash>>11);hash+=(hash<<15);return hash>>>0;}mw.experiments={getBucket:function(experiment,token){const buckets=experiment.buckets;let range=0,acc=0;if(!experiment.enabled||!Object.keys(experiment.buckets).length){return CONTROL_BUCKET;}for(const key in buckets){range+=buckets[key];}const hash=hashString(experiment.name+':'+token);const max=(hash/MAX_INT32_UNSIGNED)*range;for(const key in buckets){acc+=buckets[key];if(max<=acc){return key;}}}};}());\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.experiments&skin=vector-2022&version=1bdlr\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.experiments&skin=vector-2022&sourcemap=1&version=1bdlr\",\"mediawiki.visibleTimeout@40nxy\":\"mw.loader.impl(function(){return[\\\"mediawiki.visibleTimeout@40nxy\\\",{\\\"main\\\":\\\"visibleTimeout.js\\\",\\\"files\\\":{\\\"visibleTimeout.js\\\":function(require,module,exports){let doc,HIDDEN,VISIBILITY_CHANGE,nextId=1;const clearHandles=Object.create(null);function init(overrideDoc){doc=overrideDoc||document;if(doc.hidden!==undefined){HIDDEN='hidden';VISIBILITY_CHANGE='visibilitychange';}else if(doc.mozHidden!==undefined){HIDDEN='mozHidden';VISIBILITY_CHANGE='mozvisibilitychange';}else if(doc.webkitHidden!==undefined){HIDDEN='webkitHidden';VISIBILITY_CHANGE='webkitvisibilitychange';}}init();module.exports={set:function(fn,delay){let nativeId=null,lastStartedAt=mw.now();const visibleId=nextId++;function clearHandle(){if(nativeId!==null){clearTimeout(nativeId);nativeId=null;}delete clearHandles[visibleId];if(VISIBILITY_CHANGE){doc.removeEventListener(VISIBILITY_CHANGE,visibilityCheck,false);}}function onComplete(){clearHandle();fn();}function visibilityCheck(){const now=mw.now();if(HIDDEN&&doc[HIDDEN]){if(nativeId!==null){delay=Math.max(0,delay-Math.max(0,now-lastStartedAt));if(delay===0){onComplete();}else{clearTimeout(nativeId);nativeId=null;}}}else{if(nativeId===null){\\nlastStartedAt=now;nativeId=setTimeout(onComplete,delay);}}}clearHandles[visibleId]=clearHandle;if(VISIBILITY_CHANGE){doc.addEventListener(VISIBILITY_CHANGE,visibilityCheck,false);}visibilityCheck();return visibleId;},clear:function(visibleId){if(visibleId in clearHandles){clearHandles[visibleId]();}}};if(window.QUnit){module.exports.init=init;}\\n}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.visibleTimeout&skin=vector-2022&version=1goy8\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.visibleTimeout&skin=vector-2022&sourcemap=1&version=1goy8\",\"mediawiki.libs.pluralruleparser@1sv4p\":\"mw.loader.impl(function(){return[\\\"mediawiki.libs.pluralruleparser@1sv4p\\\",function($,jQuery,require,module){(function(root,factory){if(typeof define==='function'&&define.amd){define(factory);}else if(typeof exports==='object'){module.exports=factory();}else{root.pluralRuleParser=factory();}}(this,function(){function pluralRuleParser(rule,number){'use strict';rule=rule.split('@')[0].replace(/^\\\\s*/,'').replace(/\\\\s*$/,'');if(!rule.length){return true;}var pos=0,operand,expression,relation,result,whitespace=makeRegexParser(/^\\\\s+/),value=makeRegexParser(/^\\\\d+/),_n_=makeStringParser('n'),_i_=makeStringParser('i'),_f_=makeStringParser('f'),_t_=makeStringParser('t'),_v_=makeStringParser('v'),_w_=makeStringParser('w'),_is_=makeStringParser('is'),_isnot_=makeStringParser('is not'),_isnot_sign_=makeStringParser('!='),_equal_=makeStringParser('='),_mod_=makeStringParser('mod'),_percent_=makeStringParser('%'),_not_=makeStringParser('not'),_in_=makeStringParser('in'),_within_=makeStringParser('within'),_range_=makeStringParser('..'),_comma_=makeStringParser(','),_or_=makeStringParser('or'),_and_=makeStringParser('and');\\nfunction debug(){}debug('pluralRuleParser',rule,number);function choice(parserSyntax){return function(){var i,result;for(i=0;i<parserSyntax.length;i++){result=parserSyntax[i]();if(result!==null){return result;}}return null;};}function sequence(parserSyntax){var i,parserRes,originalPos=pos,result=[];for(i=0;i<parserSyntax.length;i++){parserRes=parserSyntax[i]();if(parserRes===null){pos=originalPos;return null;}result.push(parserRes);}return result;}function nOrMore(n,p){return function(){var originalPos=pos,result=[],parsed=p();while(parsed!==null){result.push(parsed);parsed=p();}if(result.length<n){pos=originalPos;return null;}return result;};}function makeStringParser(s){var len=s.length;return function(){var result=null;if(rule.substr(pos,len)===s){result=s;pos+=len;}return result;};}function makeRegexParser(regex){return function(){var matches=rule.substr(pos).match(regex);if(matches===null){return null;}pos+=matches[0].length;return matches[0];};}function i(){var result=_i_();if(result===null){\\ndebug(' -- failed i',parseInt(number,10));return result;}result=parseInt(number,10);debug(' -- passed i ',result);return result;}function n(){var result=_n_();if(result===null){debug(' -- failed n ',number);return result;}result=parseFloat(number,10);debug(' -- passed n ',result);return result;}function f(){var result=_f_();if(result===null){debug(' -- failed f ',number);return result;}result=(number+'.').split('.')[1]||0;debug(' -- passed f ',result);return result;}function t(){var result=_t_();if(result===null){debug(' -- failed t ',number);return result;}result=(number+'.').split('.')[1].replace(/0$/,'')||0;debug(' -- passed t ',result);return result;}function v(){var result=_v_();if(result===null){debug(' -- failed v ',number);return result;}result=(number+'.').split('.')[1].length||0;debug(' -- passed v ',result);return result;}function w(){var result=_w_();if(result===null){debug(' -- failed w ',number);return result;}result=(number+'.').split('.')[1].replace(/0$/,'').length||0;\\ndebug(' -- passed w ',result);return result;}operand=choice([n,i,f,t,v,w]);expression=choice([mod,operand]);function mod(){var result=sequence([operand,whitespace,choice([_mod_,_percent_]),whitespace,value]);if(result===null){debug(' -- failed mod');return null;}debug(' -- passed ',parseInt(result[0],10),result[2],parseInt(result[4],10));return parseFloat(result[0])%parseInt(result[4],10);}function not(){var result=sequence([whitespace,_not_]);if(result===null){debug(' -- failed not');return null;}return result[1];}function is(){var result=sequence([expression,whitespace,choice([_is_]),whitespace,value]);if(result!==null){debug(' -- passed is :',result[0],' == ',parseInt(result[4],10));return result[0]===parseInt(result[4],10);}debug(' -- failed is');return null;}function isnot(){var result=sequence([expression,whitespace,choice([_isnot_,_isnot_sign_]),whitespace,value]);if(result!==null){debug(' -- passed isnot: ',result[0],' != ',parseInt(result[4],10));return result[0]!==parseInt(result[4],10);\\n}debug(' -- failed isnot');return null;}function not_in(){var i,range_list,result=sequence([expression,whitespace,_isnot_sign_,whitespace,rangeList]);if(result!==null){debug(' -- passed not_in: ',result[0],' != ',result[4]);range_list=result[4];for(i=0;i<range_list.length;i++){if(parseInt(range_list[i],10)===parseInt(result[0],10)){return false;}}return true;}debug(' -- failed not_in');return null;}function rangeList(){var result=sequence([choice([range,value]),nOrMore(0,rangeTail)]),resultList=[];if(result!==null){resultList=resultList.concat(result[0]);if(result[1][0]){resultList=resultList.concat(result[1][0]);}return resultList;}debug(' -- failed rangeList');return null;}function rangeTail(){var result=sequence([_comma_,rangeList]);if(result!==null){return result[1];}debug(' -- failed rangeTail');return null;}function range(){var i,array,left,right,result=sequence([value,_range_,value]);if(result!==null){debug(' -- passed range');array=[];left=parseInt(result[0],10);right=parseInt(result[2],10);\\nfor(i=left;i<=right;i++){array.push(i);}return array;}debug(' -- failed range');return null;}function _in(){var result,range_list,i;result=sequence([expression,nOrMore(0,not),whitespace,choice([_in_,_equal_]),whitespace,rangeList]);if(result!==null){debug(' -- passed _in:',result);range_list=result[5];for(i=0;i<range_list.length;i++){if(parseInt(range_list[i],10)===parseFloat(result[0])){return(result[1][0]!=='not');}}return(result[1][0]==='not');}debug(' -- failed _in ');return null;}function within(){var range_list,result;result=sequence([expression,nOrMore(0,not),whitespace,_within_,whitespace,rangeList]);if(result!==null){debug(' -- passed within');range_list=result[5];if((result[0]>=parseInt(range_list[0],10))&&(result[0]<parseInt(range_list[range_list.length-1],10))){return(result[1][0]!=='not');}return(result[1][0]==='not');}debug(' -- failed within ');return null;}relation=choice([is,not_in,isnot,_in,within]);function and(){var i,result=sequence([relation,nOrMore(0,andTail)]);\\nif(result){if(!result[0]){return false;}for(i=0;i<result[1].length;i++){if(!result[1][i]){return false;}}return true;}debug(' -- failed and');return null;}function andTail(){var result=sequence([whitespace,_and_,whitespace,relation]);if(result!==null){debug(' -- passed andTail',result);return result[3];}debug(' -- failed andTail');return null;}function orTail(){var result=sequence([whitespace,_or_,whitespace,and]);if(result!==null){debug(' -- passed orTail: ',result[3]);return result[3];}debug(' -- failed orTail');return null;}function condition(){var i,result=sequence([and,nOrMore(0,orTail)]);if(result){for(i=0;i<result[1].length;i++){if(result[1][i]){return true;}}return result[0];}return false;}result=condition();if(result===null){throw new Error('Parse error at position '+pos.toString()+' for rule: '+rule);}if(pos!==rule.length){debug('Warning: Rule not parsed completely. Parser stopped at ',rule.substr(0,pos),' for rule: ',rule);}return result;}return pluralRuleParser;}));\\nmodule.exports=window.pluralRuleParser;mw.libs.pluralRuleParser=window.pluralRuleParser;\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.libs.pluralruleparser&skin=vector-2022&version=5vxxk\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.libs.pluralruleparser&skin=vector-2022&sourcemap=1&version=5vxxk\",\"oojs@1u2cw\":\"mw.loader.impl(function(){return[\\\"oojs@1u2cw\\\",function($,jQuery,require,module){(function(global){'use strict';var OO={},hasOwn=OO.hasOwnProperty,slice=Array.prototype.slice,toString=OO.toString;OO.initClass=function(fn){fn.static=fn.static||{};};OO.inheritClass=function(targetFn,originFn){if(!originFn){throw new Error('inheritClass: Origin is not a function (actually '+originFn+')');}if(targetFn.prototype instanceof originFn){throw new Error('inheritClass: Target already inherits from origin');}var targetConstructor=targetFn.prototype.constructor;targetFn.super=targetFn.parent=originFn;targetFn.prototype=Object.create(originFn.prototype,{constructor:{value:targetConstructor,enumerable:false,writable:true,configurable:true}});OO.initClass(originFn);targetFn.static=Object.create(originFn.static);};OO.mixinClass=function(targetFn,originFn){if(!originFn){throw new Error('mixinClass: Origin is not a function (actually '+originFn+')');}var key;for(key in originFn.prototype){if(key!=='constructor'&&hasOwn.call(originFn.prototype,key)){targetFn.prototype[key]=originFn.prototype[key];\\n}}OO.initClass(targetFn);if(originFn.static){for(key in originFn.static){if(hasOwn.call(originFn.static,key)){targetFn.static[key]=originFn.static[key];}}}else{OO.initClass(originFn);}};OO.isSubclass=function(testFn,baseFn){return testFn===baseFn||testFn.prototype instanceof baseFn;};OO.getProp=function(obj){var retval=obj;for(var i=1;i<arguments.length;i++){if(retval===undefined||retval===null){return undefined;}retval=retval[arguments[i]];}return retval;};OO.setProp=function(obj){if(Object(obj)!==obj||arguments.length<2){return;}var prop=obj;for(var i=1;i<arguments.length-2;i++){if(prop[arguments[i]]===undefined){prop[arguments[i]]={};}if(Object(prop[arguments[i]])!==prop[arguments[i]]){return;}prop=prop[arguments[i]];}prop[arguments[arguments.length-2]]=arguments[arguments.length-1];};OO.deleteProp=function(obj){if(Object(obj)!==obj||arguments.length<2){return;}var prop=obj;var props=[prop];var i=1;for(;i<arguments.length-1;i++){if(prop[arguments[i]]===undefined||Object(prop[arguments[i]])!==prop[arguments[i]]\\n){return;}prop=prop[arguments[i]];props.push(prop);}delete prop[arguments[i]];while(props.length>1&&(prop=props.pop())&&OO.isPlainObject(prop)&&!Object.keys(prop).length){delete props[props.length-1][arguments[props.length]];}};OO.cloneObject=function(origin){var r=Object.create(origin.constructor.prototype);for(var key in origin){if(hasOwn.call(origin,key)){r[key]=origin[key];}}return r;};OO.getObjectValues=function(obj){if(obj!==Object(obj)){throw new TypeError('Called on non-object');}var values=[];for(var key in obj){if(hasOwn.call(obj,key)){values[values.length]=obj[key];}}return values;};OO.binarySearch=function(arr,searchFunc,forInsertion){var left=0;var right=arr.length;while(left<right){var mid=(left+right)>>1;var cmpResult=searchFunc(arr[mid]);if(cmpResult<0){right=mid;}else if(cmpResult>0){left=mid+1;}else{return mid;}}return forInsertion?right:null;};OO.compare=function(a,b,asymmetrical){if(a===b){return true;}a=a||{};b=b||{};if(typeof a.nodeType==='number'&&typeof a.isEqualNode==='function'){\\nreturn a.isEqualNode(b);}for(var k in a){if(!hasOwn.call(a,k)||a[k]===undefined||a[k]===b[k]){continue;}var aValue=a[k];var bValue=b[k];var aType=typeof aValue;var bType=typeof bValue;if(aType!==bType||((aType==='string'||aType==='number'||aType==='boolean')&&aValue!==bValue)||(aValue===Object(aValue)&&!OO.compare(aValue,bValue,true))){return false;}}return asymmetrical?true:OO.compare(b,a,true);};OO.copy=function(source,leafCallback,nodeCallback){var destination;if(nodeCallback){destination=nodeCallback(source);if(destination!==undefined){return destination;}}if(Array.isArray(source)){destination=new Array(source.length);}else if(source&&typeof source.clone==='function'){return leafCallback?leafCallback(source.clone()):source.clone();}else if(source&&typeof source.cloneNode==='function'){return leafCallback?leafCallback(source.cloneNode(true)):source.cloneNode(true);}else if(OO.isPlainObject(source)){destination={};}else{return leafCallback?leafCallback(source):source;}for(var key in source){\\ndestination[key]=OO.copy(source[key],leafCallback,nodeCallback);}return destination;};OO.getHash=function(val){return JSON.stringify(val,OO.getHash.keySortReplacer);};OO.getHash.keySortReplacer=function(key,val){if(val&&typeof val.getHashObject==='function'){val=val.getHashObject();}if(!Array.isArray(val)&&Object(val)===val){var normalized={};var keys=Object.keys(val).sort();for(var i=0,len=keys.length;i<len;i++){normalized[keys[i]]=val[keys[i]];}return normalized;}else{return val;}};OO.unique=function(arr){return Array.from(new Set(arr));};OO.simpleArrayUnion=function(a,...rest){var set=new Set(a);for(var i=0;i<rest.length;i++){var arr=rest[i];for(var j=0;j<arr.length;j++){set.add(arr[j]);}}return Array.from(set);};function simpleArrayCombine(a,b,includeB){var set=new Set(b);var result=[];for(var j=0;j<a.length;j++){var isInB=set.has(a[j]);if(isInB===includeB){result.push(a[j]);}}return result;}OO.simpleArrayIntersection=function(a,b){return simpleArrayCombine(a,b,true);};OO.simpleArrayDifference=function(a,b){\\nreturn simpleArrayCombine(a,b,false);};OO.isPlainObject=function(obj){if(!obj||toString.call(obj)!=='[object Object]'){return false;}var proto=Object.getPrototypeOf(obj);if(!proto){return true;}return hasOwn.call(proto,'isPrototypeOf');};(function(){OO.EventEmitter=function OoEventEmitter(){this.bindings={};};OO.initClass(OO.EventEmitter);function validateMethod(method,context){if(typeof method==='string'){if(context===undefined||context===null){throw new Error('Method name \\\"'+method+'\\\" has no context.');}if(typeof context[method]!=='function'){throw new Error('Property \\\"'+method+'\\\" is not a function');}}else if(typeof method!=='function'){throw new Error('Invalid callback. Function or method name expected.');}}function addBinding(eventEmitter,event,binding){var bindings;if(hasOwn.call(eventEmitter.bindings,event)){bindings=eventEmitter.bindings[event];}else{bindings=eventEmitter.bindings[event]=[];}bindings.push(binding);}OO.EventEmitter.prototype.on=function(event,method,args,context){\\nvalidateMethod(method,context);addBinding(this,event,{method:method,args:args,context:(arguments.length<4)?null:context,once:false});return this;};OO.EventEmitter.prototype.once=function(event,listener){validateMethod(listener);addBinding(this,event,{method:listener,args:undefined,context:null,once:true});return this;};OO.EventEmitter.prototype.off=function(event,method,context){if(arguments.length===1){delete this.bindings[event];return this;}validateMethod(method,context);if(!hasOwn.call(this.bindings,event)||!this.bindings[event].length){return this;}if(arguments.length<3){context=null;}var bindings=this.bindings[event];var i=bindings.length;while(i--){if(bindings[i].method===method&&bindings[i].context===context){bindings.splice(i,1);}}if(bindings.length===0){delete this.bindings[event];}return this;};OO.EventEmitter.prototype.emit=function(event){if(!hasOwn.call(this.bindings,event)){return false;}var bindings=this.bindings[event].slice();var args=slice.call(arguments,1);for(var i=0;i<bindings.length;i++){\\nvar binding=bindings[i];var method;if(typeof binding.method==='string'){method=binding.context[binding.method];}else{method=binding.method;}if(binding.once){this.off(event,method);}try{method.apply(binding.context,binding.args?binding.args.concat(args):args);}catch(e){setTimeout((function(error){throw error;}).bind(null,e));}}return true;};OO.EventEmitter.prototype.emitThrow=function(event){if(!hasOwn.call(this.bindings,event)){return false;}var firstError;var bindings=this.bindings[event].slice();var args=slice.call(arguments,1);for(var i=0;i<bindings.length;i++){var binding=bindings[i];var method;if(typeof binding.method==='string'){method=binding.context[binding.method];}else{method=binding.method;}if(binding.once){this.off(event,method);}try{method.apply(binding.context,binding.args?binding.args.concat(args):args);}catch(e){if(firstError===undefined){firstError=e;}else{setTimeout((function(error){throw error;}).bind(null,e));}}}if(firstError!==undefined){throw firstError;}return true;\\n};OO.EventEmitter.prototype.connect=function(context,methods){for(var event in methods){var method=methods[event];var args;if(Array.isArray(method)){args=method.slice(1);method=method[0];}else{args=[];}this.on(event,method,args,context);}return this;};OO.EventEmitter.prototype.disconnect=function(context,methods){var event;if(methods){for(event in methods){var method=methods[event];if(Array.isArray(method)){method=method[0];}this.off(event,method,context);}}else{for(event in this.bindings){var bindings=this.bindings[event];var i=bindings.length;while(i--){if(bindings[i]&&bindings[i].context===context){this.off(event,bindings[i].method,context);}}}}return this;};}());(function(){OO.EmitterList=function OoEmitterList(){this.items=[];this.aggregateItemEvents={};};OO.initClass(OO.EmitterList);function normalizeArrayIndex(arr,index){return(index===undefined||index<0||index>=arr.length)?arr.length:index;}OO.EmitterList.prototype.getItems=function(){return this.items.slice(0);};OO.EmitterList.prototype.getItemIndex=function(item){\\nreturn this.items.indexOf(item);};OO.EmitterList.prototype.getItemCount=function(){return this.items.length;};OO.EmitterList.prototype.isEmpty=function(){return!this.items.length;};OO.EmitterList.prototype.aggregate=function(events){var i,item;for(var itemEvent in events){var groupEvent=events[itemEvent];if(Object.prototype.hasOwnProperty.call(this.aggregateItemEvents,itemEvent)){if(groupEvent){throw new Error('Duplicate item event aggregation for '+itemEvent);}for(i=0;i<this.items.length;i++){item=this.items[i];if(item.connect&&item.disconnect){var remove={};remove[itemEvent]=['emit',this.aggregateItemEvents[itemEvent],item];item.disconnect(this,remove);}}delete this.aggregateItemEvents[itemEvent];}if(groupEvent){this.aggregateItemEvents[itemEvent]=groupEvent;for(i=0;i<this.items.length;i++){item=this.items[i];if(item.connect&&item.disconnect){var add={};add[itemEvent]=['emit',groupEvent,item];item.connect(this,add);}}}}};OO.EmitterList.prototype.addItems=function(items,index){if(!Array.isArray(items)){\\nitems=[items];}if(items.length===0){return this;}index=normalizeArrayIndex(this.items,index);for(var i=0;i<items.length;i++){var oldIndex=this.items.indexOf(items[i]);if(oldIndex!==-1){index=this.moveItem(items[i],index);this.emit('move',items[i],index,oldIndex);}else{index=this.insertItem(items[i],index);this.emit('add',items[i],index);}index++;}return this;};OO.EmitterList.prototype.moveItem=function(item,newIndex){var existingIndex=this.items.indexOf(item);if(existingIndex===-1){throw new Error('Item cannot be moved, because it is not in the list.');}newIndex=normalizeArrayIndex(this.items,newIndex);this.items.splice(existingIndex,1);if(existingIndex<newIndex){newIndex--;}this.items.splice(newIndex,0,item);return newIndex;};OO.EmitterList.prototype.insertItem=function(item,index){if(item===null||typeof item!=='object'){throw new Error('Expected object, but item is '+typeof item);}if(item.connect&&item.disconnect){var events={};for(var event in this.aggregateItemEvents){events[event]=['emit',this.aggregateItemEvents[event],item];\\n}item.connect(this,events);}index=normalizeArrayIndex(this.items,index);this.items.splice(index,0,item);return index;};OO.EmitterList.prototype.removeItems=function(items){if(!Array.isArray(items)){items=[items];}if(items.length===0){return this;}for(var i=0;i<items.length;i++){var item=items[i];var index=this.items.indexOf(item);if(index!==-1){if(item.connect&&item.disconnect){item.disconnect(this);}this.items.splice(index,1);this.emit('remove',item,index);}}return this;};OO.EmitterList.prototype.clearItems=function(){var cleared=this.items.splice(0,this.items.length);for(var i=0;i<cleared.length;i++){var item=cleared[i];if(item.connect&&item.disconnect){item.disconnect(this);}}this.emit('clear');return this;};}());OO.SortedEmitterList=function OoSortedEmitterList(sortingCallback){OO.EmitterList.call(this);this.sortingCallback=sortingCallback;this.aggregate({sortChange:'itemSortChange'});this.connect(this,{itemSortChange:'onItemSortChange'});};OO.mixinClass(OO.SortedEmitterList,OO.EmitterList);\\nOO.SortedEmitterList.prototype.onItemSortChange=function(item){this.removeItems(item);this.addItems(item);};OO.SortedEmitterList.prototype.setSortingCallback=function(sortingCallback){var items=this.getItems();this.sortingCallback=sortingCallback;this.clearItems();this.addItems(items);};OO.SortedEmitterList.prototype.addItems=function(items){if(!Array.isArray(items)){items=[items];}if(items.length===0){return this;}for(var i=0;i<items.length;i++){var insertionIndex=this.findInsertionIndex(items[i]);if(insertionIndex<=this.items.length&&this.items[insertionIndex]&&this.sortingCallback(this.items[insertionIndex],items[i])===0){this.removeItems(this.items[insertionIndex]);}var index=this.insertItem(items[i],insertionIndex);this.emit('add',items[i],index);}return this;};OO.SortedEmitterList.prototype.findInsertionIndex=function(item){var list=this;return OO.binarySearch(this.items,function(otherItem){return list.sortingCallback(item,otherItem);},true);};OO.Registry=function OoRegistry(){OO.EventEmitter.call(this);\\nthis.registry={};};OO.mixinClass(OO.Registry,OO.EventEmitter);OO.Registry.prototype.register=function(name,data){if(typeof name==='string'){this.registry[name]=data;this.emit('register',name,data);}else if(Array.isArray(name)){for(var i=0,len=name.length;i<len;i++){this.register(name[i],data);}}else{throw new Error('Name must be a string or array, cannot be a '+typeof name);}};OO.Registry.prototype.unregister=function(name){if(typeof name==='string'){var data=this.lookup(name);if(data!==undefined){delete this.registry[name];this.emit('unregister',name,data);}}else if(Array.isArray(name)){for(var i=0,len=name.length;i<len;i++){this.unregister(name[i]);}}else{throw new Error('Name must be a string or array, cannot be a '+typeof name);}};OO.Registry.prototype.lookup=function(name){if(hasOwn.call(this.registry,name)){return this.registry[name];}};OO.Factory=function OoFactory(){OO.Factory.super.call(this);};OO.inheritClass(OO.Factory,OO.Registry);OO.Factory.prototype.register=function(constructor,key){\\nif(typeof constructor!=='function'){throw new Error('constructor must be a function, got '+typeof constructor);}if(arguments.length<=1){key=constructor.key||(constructor.static&&constructor.static.name);}if(typeof key!=='string'||key===''){throw new Error('key must be a non-empty string');}OO.Factory.super.prototype.register.call(this,key,constructor);};OO.Factory.prototype.unregister=function(key){if(typeof key==='function'){key=key.key||(key.static&&key.static.name);}if(typeof key!=='string'||key===''){throw new Error('key must be a non-empty string');}OO.Factory.super.prototype.unregister.call(this,key);};OO.Factory.prototype.create=function(key,...args){var constructor=this.lookup(key);if(!constructor){throw new Error('No class registered by that key: '+key);}return new constructor(...args);};if(typeof module!=='undefined'&&module.exports){module.exports=OO;}else{global.OO=OO;}}(this));\\nwindow.OO=module.exports;\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs&skin=vector-2022&version=rwdvu\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs&skin=vector-2022&sourcemap=1&version=rwdvu\",\"mediawiki.router@1i4ls\":\"mw.loader.impl(function(){return[\\\"mediawiki.router@1i4ls\\\",{\\\"main\\\":\\\"resources/src/mediawiki.router/router.js\\\",\\\"files\\\":{\\\"resources/src/mediawiki.router/router.js\\\":function(require,module,exports){'use strict';class Router extends OO.Registry{constructor(){super();this.enabled=true;this.oldHash=this.getPath();window.addEventListener('popstate',()=>{this.emit('popstate');});window.addEventListener('hashchange',()=>{this.emit('hashchange');});this.connect(this,{hashchange:'onRouterHashChange'});}onRouterHashChange(){if(this.enabled){const routeEvent=$.Event('route',{path:this.getPath(),oldPath:this.oldHash});this.emit('route',routeEvent);if(!routeEvent.isDefaultPrevented()){this.checkRoute();}else{this.enabled=false;this.navigate(this.oldHash,true);}}else{this.enabled=true;}this.oldHash=this.getPath();}checkRoute(){const hash=this.getPath();for(const id in this.registry){const entry=this.registry[id];const match=hash.match(entry.path);if(match){entry.callback.apply(this,match.slice(1));return;}}}addRoute(path,callback,teardownCallback){const entry={path:typeof path==='string'?new RegExp('^'+path.replace(/[\\\\\\\\^$*+?.()|[\\\\]{}]/g,'\\\\\\\\$&')+'$'):path,callback:callback};this.register(entry.path.toString(),entry);\\nif(teardownCallback){this.on('route',(ev)=>{if(ev.oldPath.match(entry.path)&&!ev.path.match(entry.path)){teardownCallback(entry,ev);}});}if(''.match(entry.path)||'/'.match(entry.path)){mw.log.warn('router.addRoute called with a path that matches an empty route; provide a teardownCallback instead');}}route(){this.addRoute.apply(this,arguments);}navigateTo(title,options){const oldHash=this.getPath();if(options.useReplaceState){history.replaceState(null,title,options.path);}else{history.pushState(null,title,options.path);}if(this.getPath()!==oldHash){this.onRouterHashChange();}}navigate(path,fromHashchange){if(path===''){path=window.location.href.replace(/#.*$/,'');history.pushState(null,document.title,path);if(!fromHashchange){this.onRouterHashChange();}else{this.checkRoute();}}else{window.location.hash=path;}}back(){let timeoutID;const deferred=$.Deferred();this.once('popstate',()=>{clearTimeout(timeoutID);deferred.resolve();});window.history.back();timeoutID=setTimeout(()=>{this.off('popstate');\\ndeferred.resolve();},50);return deferred.promise();}getPath(){return window.location.hash.slice(1);}isSupported(){return true;}resetForTest(){if(window.QUnit){this.bindings={};this.registry={};this.enabled=true;this.connect(this,{hashchange:'onRouterHashChange'});}}}OO.Router=Router;module.exports=new Router();\\n}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.router&skin=vector-2022&version=14cga\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.router&skin=vector-2022&sourcemap=1&version=14cga\",\"ext.dismissableSiteNotice@1440g\":\"mw.loader.impl(function(){return[\\\"ext.dismissableSiteNotice@1440g\\\",function($,jQuery,require,module){(function(){const cookieName='dismissSiteNotice',siteNoticeId=mw.config.get('wgSiteNoticeId');if(!siteNoticeId){return;}if($.cookie(cookieName)===siteNoticeId){return;}mw.util.addCSS('.client-js .mw-dismissable-notice { display: block; }');$(()=>{$('.mw-dismissable-notice-close').css('visibility','visible').find('a').on('click keypress',function(e){if(e.type==='click'||e.type==='keypress'&&e.which===13){$(this).closest('.mw-dismissable-notice').hide();$.cookie(cookieName,siteNoticeId,{expires:30,path:'/'});}});});}());\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.dismissableSiteNotice&skin=vector-2022&version=xotob\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.dismissableSiteNotice&skin=vector-2022&sourcemap=1&version=xotob\",\"ext.centralNotice.geoIP@wookz\":\"mw.loader.impl(function(){return[\\\"ext.centralNotice.geoIP@wookz\\\",function($,jQuery,require,module){(function(){const COOKIE_NAME='GeoIP';let geoPromise;function parseCookieValue(cookieValue){let matches=cookieValue.match(/([^:]*):([^:]*):([^:]*):([^:]*):([^:]*):([^;]*)/)||cookieValue.match(/([^:]*):([^:]*):([^:]*):([^:]*):([^;]*)/);if(!matches){return null;}if(matches.length===6){matches=matches.slice(0,2).concat(['']).concat(matches.slice(2));}if((typeof matches[1]!=='string')||(matches[1].length===0)){return null;}return{country:matches[1],region:matches[2],city:matches[3],lat:matches[4]&&parseFloat(matches[4]),lon:matches[5]&&parseFloat(matches[5]),af:matches[6]};}function storeGeoInCookie(geo){const parts=[geo.country,geo.region||'',(geo.city&&geo.city.replace(/[^a-z]/i,'_'))||'',geo.lat||'',geo.lon||'',geo.af||''],cookieValue=parts.join(':');$.cookie(COOKIE_NAME,cookieValue,{path:'/'});}mw.geoIP={makeGeoWithPromise:function(){const cookieValue=$.cookie(COOKIE_NAME);if(cookieValue){const geo=parseCookieValue(cookieValue);if(geo){geoPromise=$.Deferred().resolve(geo).promise();\\nreturn;}}const lookupModule=mw.config.get('wgCentralNoticeGeoIPBackgroundLookupModule');if(lookupModule){geoPromise=mw.loader.using(lookupModule).then(()=>{const lookupCallback=require(lookupModule);return lookupCallback();});geoPromise.then((g)=>{storeGeoInCookie(g);});}else{geoPromise=$.Deferred().reject().promise();}},getPromise:function(){return geoPromise;}};mw.geoIP.makeGeoWithPromise();geoPromise.done((geo)=>{window.Geo=geo;});}());\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.geoIP&skin=vector-2022&version=18ljl\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.geoIP&skin=vector-2022&sourcemap=1&version=18ljl\",\"ext.centralNotice.kvStore@17xmw\":\"mw.loader.impl(function(){return[\\\"ext.centralNotice.kvStore@17xmw\\\",{\\\"main\\\":\\\"index.js\\\",\\\"files\\\":{\\\"index.js\\\":function(require,module,exports){mw.centralNotice=(mw.centralNotice||{});mw.centralNotice.kvStore=require('./kvStore.js');\\n},\\\"kvStore.js\\\":function(require,module,exports){(function(){let error=null,campaignName=null,bannerName=null,category=null,cookiesEnabled=null,localStorageAvailable=null,kvStore=null;const now=Math.round(Date.now()/1000),SEPARATOR='|',SEPARATOR_IN_COOKIES='!',FIND_KEY_REGEX=/\\\\|([^|]*)$/,PREFIX='CentralNoticeKV',PREFIX_IN_COOKIES='CN',DEFAULT_ITEM_TTL=(365/2)*60*60*24;const KVStorageContext=function(key,keyInCookies){this.key=key;this.keyInCookies=keyInCookies;};function areCookiesEnabled(){if(cookiesEnabled===null){mw.cookie.set('cookieTest','testVal');cookiesEnabled=(mw.cookie.get('cookieTest')==='testVal');mw.cookie.set('cookieTest',null);}return cookiesEnabled;}function isLocalStorageAvailable(){if(localStorageAvailable===null){try{if(!window.localStorage){localStorageAvailable=false;}else{localStorage.setItem('localStorageTest','testVal');localStorageAvailable=(localStorage.getItem('localStorageTest')==='testVal');localStorage.removeItem('localStorageTest');}}catch(e){localStorageAvailable=false;}}return localStorageAvailable;}\\nfunction setError(message,key,value,context){error={message:message,key:key,value:value,context:context?context.key:null,time:new Date()};error.campaign=campaignName;error.banner=bannerName;mw.log('CentralNotice KV storage error: '+JSON.stringify(error));}function makeKeyForLocalStorage(key,context){const base=PREFIX+SEPARATOR+context.key+SEPARATOR;switch(context.key){case kvStore.contexts.CAMPAIGN.key:return base+campaignName+SEPARATOR+key;case kvStore.contexts.CATEGORY.key:return base+category+SEPARATOR+key;case kvStore.contexts.GLOBAL.key:return base+key;default:setError('Invalid KV storage context',key,null,context);return base+'invalidContext'+SEPARATOR+key;}}function makeKeyForCookie(key,context){const base=PREFIX_IN_COOKIES+SEPARATOR_IN_COOKIES+context.keyInCookies+SEPARATOR_IN_COOKIES;switch(context.key){case kvStore.contexts.CAMPAIGN.key:return base+campaignName+SEPARATOR_IN_COOKIES+key;case kvStore.contexts.CATEGORY.key:return base+category+SEPARATOR_IN_COOKIES+key;case kvStore.contexts.GLOBAL.key:\\nreturn base+key;default:setError('Invalid KV storage context',key,null,context);return base+'invalidContext'+SEPARATOR_IN_COOKIES+key;}}function setLocalStorageItem(key,value,context,ttl){const lsKey=makeKeyForLocalStorage(key,context);const encodedWrappedValue=JSON.stringify({expiry:ttl?(ttl*86400)+now:DEFAULT_ITEM_TTL+now,val:value});try{localStorage.setItem(lsKey,encodedWrappedValue);if(localStorage.getItem(lsKey)!==encodedWrappedValue){setError('Couldn\\\\'t write value',key,value,context);return false;}return true;}catch(e){setError('Couldn\\\\'t write value due to LocalStorage exception '+e.toString(),key,value,context);return false;}}function setCookieItem(key,value,context,ttl){return Boolean($.cookie(makeKeyForCookie(key,context),encodeURIComponent(JSON.stringify(value)),{expires:ttl,path:'/'}));}function getLocalStorageItem(key,context){const lsKey=makeKeyForLocalStorage(key,context);let rawValue,wrappedValue;try{rawValue=localStorage.getItem(lsKey);}catch(e){setError('Couldn\\\\'t read value due to LocalStorage exception '+\\ne.toString(),key,null,context);return null;}if(rawValue===null){return null;}try{wrappedValue=JSON.parse(rawValue);}catch(e){if(e instanceof SyntaxError){setError('Couldn\\\\'t parse value, removing. '+e.message,key,rawValue,context);try{localStorage.removeItem(lsKey);}catch(ex){setError('Couldn\\\\'t remove value due to LocalStorage exception '+ex.toString(),key,rawValue,context);}return null;}else{setError('Couldn\\\\'t read value '+e.message,key,rawValue,context);throw e;}}if(!wrappedValue.expiry||wrappedValue.expiry<now){return null;}return wrappedValue.val;}function getCookieItem(key,context){const storageKey=makeKeyForCookie(key,context),rawCookie=$.cookie(storageKey);try{return JSON.parse(decodeURIComponent(rawCookie));}catch(e){$.removeCookie(storageKey,{path:'/'});return null;}}function removeLocalStorageItem(key,context){try{localStorage.removeItem(makeKeyForLocalStorage(key,context));}catch(e){setError('Couldn\\\\'t remove value due to LocalStorage exception '+e.toString(),key,null,context);\\n}}function removeCookieItem(key,context){$.removeCookie(makeKeyForCookie(key,context),{path:'/'});}kvStore={contexts:{CAMPAIGN:new KVStorageContext('campaign','c'),CATEGORY:new KVStorageContext('category','t'),GLOBAL:new KVStorageContext('global','g')},multiStorageOptions:{LOCAL_STORAGE:'kv_store',COOKIE:'cookie',NO_STORAGE:'no_storage'},setItem:function(key,value,context,ttl,multiStorageOption){if((key.includes(SEPARATOR))||(key.includes(SEPARATOR_IN_COOKIES))){setError('Invalid key',key,value,context);return false;}multiStorageOption=multiStorageOption||kvStore.multiStorageOptions.LOCAL_STORAGE;switch(multiStorageOption){case kvStore.multiStorageOptions.LOCAL_STORAGE:return setLocalStorageItem(key,value,context,ttl);case kvStore.multiStorageOptions.COOKIE:return setCookieItem(key,value,context,ttl);case kvStore.multiStorageOptions.NO_STORAGE:return false;default:throw new Error('Unexpected multi-storage option');}},getItem:function(key,context,multiStorageOption){multiStorageOption=\\nmultiStorageOption||kvStore.multiStorageOptions.LOCAL_STORAGE;switch(multiStorageOption){case kvStore.multiStorageOptions.LOCAL_STORAGE:return getLocalStorageItem(key,context);case kvStore.multiStorageOptions.COOKIE:return getCookieItem(key,context);case kvStore.multiStorageOptions.NO_STORAGE:return null;default:throw new Error('Unexpected multi-storage option');}},removeItem:function(key,context,multiStorageOption){multiStorageOption=multiStorageOption||kvStore.multiStorageOptions.LOCAL_STORAGE;switch(multiStorageOption){case kvStore.multiStorageOptions.LOCAL_STORAGE:removeLocalStorageItem(key,context);return;case kvStore.multiStorageOptions.COOKIE:removeCookieItem(key,context);return;case kvStore.multiStorageOptions.NO_STORAGE:return;default:throw new Error('Unexpected multi-storage option');}},isAvailable:function(){return(kvStore.getMultiStorageOption(false)!==kvStore.multiStorageOptions.NO_STORAGE);},getMultiStorageOption:function(cookieAllowed){if(isLocalStorageAvailable()){\\nreturn kvStore.multiStorageOptions.LOCAL_STORAGE;}if(cookieAllowed&&areCookiesEnabled()){return kvStore.multiStorageOptions.COOKIE;}return kvStore.multiStorageOptions.NO_STORAGE;},getError:function(){return error;},setNotAvailableError:function(){setError('LocalStorage not available.',null,null);},setMaintenanceError:function(lsKey){const m=lsKey.match(FIND_KEY_REGEX),key=m?m[1]:null;setError('Error during KVStore maintenance.',key,null);},setCampaignName:function(cName){campaignName=cName;},setBannerName:function(bName){bannerName=bName;},setCategory:function(c){category=c;}};module.exports=kvStore;}());\\n}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.kvStore&skin=vector-2022&version=1eaek\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.kvStore&skin=vector-2022&sourcemap=1&version=1eaek\",\"rangefix@mtvel\":\"mw.loader.impl(function(){return[\\\"rangefix@mtvel\\\",function($,jQuery,require,module){(function(root,factory){if(typeof define==='function'&&define.amd){define(factory);}else if(typeof exports==='object'&&typeof exports.nodeName!=='string'){module.exports=factory();}else{root.RangeFix=factory();}}(this,()=>{let broken;const rangeFix={};function rectExceedsBoundingRect(range,rectOffset,edge){const rects=range.getClientRects();if(rects.length===2){const rect=range.getBoundingClientRect();return rects[rectOffset][edge]<rect[edge];}return false;}rangeFix.isBroken=function(){if(broken===undefined){const p1=document.createElement('p');const span=document.createElement('span');const t1=document.createTextNode('aa');const t2=document.createTextNode('aa');const img=document.createElement('img');img.setAttribute('src','data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=');const range=document.createRange();broken={};p1.appendChild(t1);p1.appendChild(span);span.appendChild(img);span.appendChild(t2);document.body.appendChild(p1);range.setStart(t1,1);range.setEnd(span,0);\\nbroken.getClientRects=broken.getBoundingClientRect=range.getClientRects().length>1;if(!broken.getClientRects){range.setEnd(t2,1);broken.getClientRects=broken.getBoundingClientRect=range.getClientRects().length===2;}if(!broken.getBoundingClientRect){range.setEnd(range.startContainer,range.startOffset);const boundingRect=range.getBoundingClientRect();broken.getBoundingClientRect=boundingRect.top===0&&boundingRect.left===0;}document.body.removeChild(p1);if(!broken.getBoundingClientRect){const p2=document.createElement('p');p2.style.width='0px';p2.style.fontSize='20px';p2.style.whiteSpace='normal';p2.style.wordBreak='normal';const t3=document.createTextNode('m mm');p2.appendChild(t3);document.body.appendChild(p2);range.setStart(t3,1);range.setEnd(t3,2);if(rectExceedsBoundingRect(range,1,'left')){broken.getBoundingClientRect=true;}else{range.setStart(t3,1);range.setEnd(t3,3);if(rectExceedsBoundingRect(range,0,'top')){broken.getBoundingClientRect=true;}}document.body.removeChild(p2);}}return broken;\\n};function batchPush(arr,data){let index=0;const batchSize=1024;if(batchSize>=data.length){return arr.push(...data);}let length;while(index<data.length){length=arr.push(...data.slice(index,index+batchSize));index+=batchSize;}return length;}rangeFix.getClientRects=function(range){if(!this.isBroken().getClientRects){return range.getClientRects();}const rects=[];const endContainerRects=[];let endContainer=range.endContainer;let endOffset=range.endOffset;let partialRange=document.createRange();function indexOf(child){let i=0;while((child=child.previousSibling)){i++;}return i;}while(endContainer!==range.commonAncestorContainer){partialRange.setStart(endContainer,0);partialRange.setEnd(endContainer,endOffset);batchPush(endContainerRects,partialRange.getClientRects());endOffset=indexOf(endContainer);endContainer=endContainer.parentNode;}partialRange=range.cloneRange();partialRange.setEnd(endContainer,endOffset);batchPush(rects,partialRange.getClientRects());batchPush(rects,endContainerRects);\\nreturn rects;};rangeFix.getBoundingClientRect=function(range){const rects=this.getClientRects(range);if(rects.length===0){return null;}const nativeBoundingRect=range.getBoundingClientRect();if(!this.isBroken().getBoundingClientRect){return nativeBoundingRect;}if(nativeBoundingRect.width===0&&nativeBoundingRect.height===0){return rects[0];}let boundingRect;Array.prototype.forEach.call(rects,(rect)=>{if(!boundingRect){boundingRect={left:rect.left,top:rect.top,right:rect.right,bottom:rect.bottom};}else{boundingRect.left=Math.min(boundingRect.left,rect.left);boundingRect.top=Math.min(boundingRect.top,rect.top);boundingRect.right=Math.max(boundingRect.right,rect.right);boundingRect.bottom=Math.max(boundingRect.bottom,rect.bottom);}});if(boundingRect){boundingRect.width=boundingRect.right-boundingRect.left;boundingRect.height=boundingRect.bottom-boundingRect.top;}return boundingRect;};return rangeFix;}));\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=rangefix&skin=vector-2022&version=vfim0\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=rangefix&skin=vector-2022&sourcemap=1&version=vfim0\",\"ext.visualEditor.supportCheck@1ogmv\":\"mw.loader.impl(function(){return[\\\"ext.visualEditor.supportCheck@1ogmv\\\",function($,jQuery,require,module){(function(){window.VisualEditorSupportCheck=function(){return((function(){try{new Function('(a = 0) => a');return true;}catch(e){return false;}}())&&/./g.flags==='g'&&!!('contentEditable'in document.createElement('div'))&&!!document.createElementNS&&(function(){let doc;try{doc=new DOMParser().parseFromString('<body></body>','text/html');}catch(e){}return doc instanceof HTMLDocument;}())&&!!(('classList'in document.createElement('_'))||('classList'in document.createElementNS('http://www.w3.org/2000/svg ','g')))&&!!('createSVGRect'in document.createElementNS('http://www.w3.org/2000/svg','svg')));};}());\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.supportCheck&skin=vector-2022&version=jhu44\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.supportCheck&skin=vector-2022&sourcemap=1&version=jhu44\",\"ext.visualEditor.ve@fb3kh\":\"mw.loader.impl(function(){return[\\\"ext.visualEditor.ve@fb3kh\\\",function($,jQuery,require,module){window.ve={};ve.now=function(){const perf=window.performance;const navStart=perf&&perf.timing&&perf.timing.navigationStart;ve.now=navStart&&perf.now?()=>navStart+perf.now():Date.now;return ve.now();};\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.207Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.ve&skin=vector-2022&version=f3pm4\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.ve&skin=vector-2022&sourcemap=1&version=f3pm4\",\"ext.visualEditor.track@10mz7\":\"mw.loader.impl(function(){return[\\\"ext.visualEditor.track@10mz7\\\",function($,jQuery,require,module){ve.track=mw.track;ve.trackSubscribe=mw.trackSubscribe;ve.trackSubscribe('activity.',(topic,data)=>{mw.track('visualEditorFeatureUse',ve.extendObject(data,{feature:topic.split('.')[1]}));});\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.track&skin=vector-2022&version=z2z11\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.track&skin=vector-2022&sourcemap=1&version=z2z11\",\"ext.visualEditor.core.utils.parsing@pxlsz\":\"mw.loader.impl(function(){return[\\\"ext.visualEditor.core.utils.parsing@pxlsz\\\",function($,jQuery,require,module){ve.isBlockElement=function(element){const elementName=typeof element==='string'?element:element.nodeName;return ve.elementTypes.block.includes(elementName.toLowerCase());};ve.isVoidElement=function(element){const elementName=typeof element==='string'?element:element.nodeName;return ve.elementTypes.void.includes(elementName.toLowerCase());};ve.elementTypes={block:['div','p','table','tbody','thead','tfoot','caption','th','tr','td','ul','ol','li','dl','dt','dd','h1','h2','h3','h4','h5','h6','hgroup','article','aside','body','nav','section','footer','header','figure','figcaption','fieldset','details','blockquote','hr','button','canvas','center','col','colgroup','embed','map','object','pre','progress','video'],void:['area','base','br','col','embed','hr','img','input','link','meta','param','source','track','wbr']};ve.matchTag=function(html,tag){return html.match(new RegExp('<'+tag+'(>|\\\\\\\\s[^>]*>)'));};ve.addHeadTag=function(docHtml,tagHtml){function insertAfter(match,text){const offset=match.index+match[0].length;\\nreturn docHtml.slice(0,offset)+text+docHtml.slice(offset);}const headMatch=ve.matchTag(docHtml,'head');if(headMatch){return insertAfter(headMatch,tagHtml);}else{const htmlMatch=ve.matchTag(docHtml,'html');if(htmlMatch){return insertAfter(htmlMatch,'<head>'+tagHtml+'</head>');}else{return'<head>'+tagHtml+'</head>'+docHtml;}}};ve.createDocumentFromHtml=function(html){if(html!==''){if(!ve.matchTag(html,'body')){html='<body>'+html+'</body>';}html=ve.addHeadTag(html,'<meta name=\\\"format-detection\\\" content=\\\"telephone=no\\\" data-ve-tmp/>');}const newDocument=new DOMParser().parseFromString(html,'text/html');const tmpMeta=newDocument.querySelector('meta[data-ve-tmp]');if(tmpMeta){tmpMeta.parentNode.removeChild(tmpMeta);}return newDocument;};ve.fixBase=function(targetDoc,sourceDoc,fallbackBase){let baseNode=targetDoc.getElementsByTagName('base')[0];if(baseNode){if(!targetDoc.baseURI||targetDoc.baseURI==='about:blank'){baseNode.setAttribute('href',ve.resolveUrl(baseNode.getAttribute('href'),sourceDoc));\\nif(!targetDoc.baseURI&&fallbackBase){baseNode.setAttribute('href',fallbackBase);}}baseNode.href=baseNode.href;}else if(fallbackBase){baseNode=targetDoc.createElement('base');baseNode.setAttribute('href',fallbackBase);targetDoc.head.appendChild(baseNode);}};ve.properInnerHtml=function(element){return ve.fixupPreBug(element).innerHTML;};ve.properOuterHtml=function(element){return ve.fixupPreBug(element).outerHTML;};ve.fixupPreBug=function(element){if(ve.isPreInnerHtmlBroken===undefined){const div=document.createElement('div');div.innerHTML='<pre>\\\\n\\\\n</pre>';ve.isPreInnerHtmlBroken=div.innerHTML==='<pre>\\\\n</pre>';}if(!ve.isPreInnerHtmlBroken){return element;}const $element=$(element).clone();$element.find('pre, textarea, listing').each((i,el)=>{let matches;if(el.firstChild&&el.firstChild.nodeType===Node.TEXT_NODE){matches=el.firstChild.data.match(/^(\\\\r\\\\n|\\\\r|\\\\n)/);if(matches&&matches[1]){el.firstChild.insertData(0,matches[1]);}}});return $element.get(0);};ve.normalizeAttributeValue=function(name,value,nodeName='div'){\\nconst node=document.createElement(nodeName);node.setAttribute(name,value);return node.getAttribute(name);};ve.resolveUrl=function(url,base){const node=base.createElement('a');node.setAttribute('href',url);return node.href||url;};\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.core.utils.parsing&skin=vector-2022&version=962r8\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.core.utils.parsing&skin=vector-2022&sourcemap=1&version=962r8\",\"ext.echo.centralauth@w08f7\":\"mw.loader.impl(function(){return[\\\"ext.echo.centralauth@w08f7\\\",{\\\"main\\\":\\\"ext.echo.centralauth.js\\\",\\\"files\\\":{\\\"ext.echo.centralauth.js\\\":function(require,module,exports){mw.hook('centralauth-p-personal-reset').add(()=>{mw.loader.using(['ext.echo.init','ext.echo.styles.badge','oojs-ui.styles.icons-alerts','ext.echo.styles.alert',]);});\\n}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.echo.centralauth&skin=vector-2022&version=1x87b\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.echo.centralauth&skin=vector-2022&sourcemap=1&version=1x87b\",\"ext.eventLogging.metricsPlatform@1gis2\":\"mw.loader.impl(function(){return[\\\"ext.eventLogging.metricsPlatform@1gis2\\\",{\\\"main\\\":\\\"ext.eventLogging.metricsPlatform/index.js\\\",\\\"files\\\":{\\\"ext.eventLogging.metricsPlatform/index.js\\\":function(require,module,exports){const MediaWikiMetricsClientIntegration=require('./MediaWikiMetricsClientIntegration.js');const MediaWikiMetricsClientLogger=require('./MediaWikiMetricsClientLogger.js');const MetricsClient=require('../lib/metrics-platform/MetricsClient.js');const DefaultEventSubmitter=require('../lib/metrics-platform/DefaultEventSubmitter.js');let integration;let logger;function newMetricsClient(streamConfigs,eventSubmitter){if(!integration){integration=new MediaWikiMetricsClientIntegration();}if(!logger){logger=new MediaWikiMetricsClientLogger();}return new MetricsClient(integration,logger,streamConfigs,eventSubmitter);}module.exports={DefaultEventSubmitter,newMetricsClient};\\n},\\\"ext.eventLogging.metricsPlatform/MediaWikiMetricsClientIntegration.js\\\":function(require,module,exports){const c=mw.config.get.bind(mw.config);let contextAttributes=null;function MediaWikiMetricsClientIntegration(){}MediaWikiMetricsClientIntegration.prototype.getHostname=function(){return String(c('wgServerName'));};MediaWikiMetricsClientIntegration.prototype.clone=function(obj){return $.extend(true,{},obj);};MediaWikiMetricsClientIntegration.prototype.getContextAttributes=function(){if(contextAttributes){return contextAttributes;}const isMobileFrontendActive=c('wgMFMode')!==null;const version=String(c('wgVersion'));const userIsLoggedIn=!mw.user.isAnon();const userGroups=c('wgUserGroups');const result={agent:{client_platform:'mediawiki_js',client_platform_family:isMobileFrontendActive?'mobile_browser':'desktop_browser',ua_string:navigator.userAgent},page:{id:c('wgArticleId'),title:c('wgTitle'),namespace_id:c('wgNamespaceNumber'),namespace_name:c('wgCanonicalNamespace'),revision_id:c('wgRevisionId'),wikidata_qid:c('wgWikibaseItemId'),content_language:c('wgPageContentLanguage'),is_redirect:c('wgIsRedirect'),\\nuser_groups_allowed_to_move:c('wgRestrictionMove'),user_groups_allowed_to_edit:c('wgRestrictionEdit')},mediawiki:{skin:c('skin'),version:version,is_production:version.includes('wmf'),is_debug_mode:c('debug'),database:c('wgDBname'),site_content_language:c('wgContentLanguage')},performer:{is_logged_in:userIsLoggedIn,id:mw.user.getId(),name:mw.user.getName(),groups:userGroups,is_bot:userGroups.includes('bot'),is_temp:c('wgUserIsTemp'),language:c('wgUserLanguage'),language_variant:c('wgUserVariant'),can_probably_edit_page:c('wgIsProbablyEditable')}};if(userIsLoggedIn){result.performer.edit_count=c('wgUserEditCount');result.performer.edit_count_bucket=c('wgUserEditCountBucket');result.performer.registration_dt=new Date(c('wgUserRegistration')).toISOString();}Object.defineProperty(result.performer,'session_id',{get:function(){return mw.user.sessionId();}});Object.defineProperty(result.performer,'pageview_id',{get:function(){return mw.user.getPageviewToken();}});Object.defineProperty(result.performer,'active_browsing_session_token',{\\nget:function(){return mw.eventLog.id.getSessionId();}});contextAttributes=result;return result;};module.exports=MediaWikiMetricsClientIntegration;\\n},\\\"ext.eventLogging.metricsPlatform/MediaWikiMetricsClientLogger.js\\\":function(require,module,exports){function MediaWikiMetricsClientLogger(){}MediaWikiMetricsClientLogger.prototype.logWarning=function(string){mw.log.warn(string);};module.exports=MediaWikiMetricsClientLogger;\\n},\\\"lib/metrics-platform/Context.js\\\":function(require,module,exports){const VALID_ATTRIBUTE_NAMES=['agent_client_platform','agent_client_platform_family','agent_ua_string','page_id','page_title','page_namespace_id','page_namespace_name','page_revision_id','page_wikidata_id','page_wikidata_qid','page_content_language','page_is_redirect','page_user_groups_allowed_to_move','page_user_groups_allowed_to_edit','mediawiki_skin','mediawiki_version','mediawiki_is_production','mediawiki_is_debug_mode','mediawiki_database','mediawiki_site_content_language','mediawiki_site_content_language_variant','performer_is_logged_in','performer_id','performer_name','performer_session_id','performer_active_browsing_session_token','performer_pageview_id','performer_groups','performer_is_bot','performer_is_temp','performer_language','performer_language_variant','performer_can_probably_edit_page','performer_edit_count','performer_edit_count_bucket','performer_registration_dt'];function getAttributeByName(from,name){const index=name.indexOf('_');const primaryKey=name.slice(0,index);\\nif(!from[primaryKey]){return null;}const secondaryKey=name.slice(index+1);const value=from[primaryKey][secondaryKey];return(value===undefined||value===null)?null:value;}function copyAttributeByName(from,to,name){const index=name.indexOf('_');const primaryKey=name.slice(0,index);const secondaryKey=name.slice(index+1);const value=from[primaryKey]?from[primaryKey][secondaryKey]:null;if(value===undefined||value===null){return;}to[primaryKey]=to[primaryKey]||{};to[primaryKey][secondaryKey]=value;}function copyAttributes(from,to){VALID_ATTRIBUTE_NAMES.forEach((name)=>copyAttributeByName(from,to,name));}module.exports={getAttributeByName:getAttributeByName,copyAttributeByName:copyAttributeByName,copyAttributes:copyAttributes};\\n},\\\"lib/metrics-platform/ContextController.js\\\":function(require,module,exports){const copyAttributeByName=require('./Context.js').copyAttributeByName;const isValidSample=require('./StreamConfig.js').isValidSample;function ContextController(integration){this.integration=integration;}ContextController.prototype.addRequestedValues=function(eventData,streamConfig){let requestedValues=streamConfig&&streamConfig.producers&&streamConfig.producers.metrics_platform_client&&streamConfig.producers.metrics_platform_client.provide_values;if(!Array.isArray(requestedValues)){requestedValues=[];}const contextAttributes=this.integration.getContextAttributes();requestedValues.concat(['agent_client_platform','agent_client_platform_family']).forEach((requestedValue)=>copyAttributeByName(contextAttributes,eventData,requestedValue));if(streamConfig.sample&&isValidSample(streamConfig.sample)){eventData.sample=streamConfig.sample;}return eventData;};module.exports=ContextController;\\n},\\\"lib/metrics-platform/DefaultEventSubmitter.js\\\":function(require,module,exports){const DEFAULT_EVENT_INTAKE_URL='https://intake-analytics.wikimedia.org/v1/events?hasty=true';const DELAYED_SUBMIT_TIMEOUT=5;function DefaultEventSubmitter(eventIntakeUrl){this.eventIntakeUrl=eventIntakeUrl||DEFAULT_EVENT_INTAKE_URL;this.events=[];const eventSubmitter=this;this.isDocumentUnloading=false;window.addEventListener('pagehide',()=>{eventSubmitter.isDocumentUnloading=true;});window.addEventListener('pageshow',()=>{eventSubmitter.isDocumentUnloading=false;});document.addEventListener('visibilitychange',()=>{if(document.hidden){eventSubmitter.doSubmitEvents();}});this.delayedSubmitTimeoutID=null;}DefaultEventSubmitter.prototype.submitEvent=function(eventData){this.events.push(eventData);if(this.isDocumentUnloading){this.doSubmitEvents();}else{this.doDelayedSubmit();}this.onSubmitEvent(eventData);};DefaultEventSubmitter.prototype.doSubmitEvents=function(){if(this.events.length){try{navigator.sendBeacon(this.eventIntakeUrl,JSON.stringify(this.events));}catch(e){}}this.events=[];\\nthis.delayedSubmitTimeoutID=null;};DefaultEventSubmitter.prototype.doDelayedSubmit=function(){if(this.delayedSubmitTimeoutID){return;}const eventSubmitter=this;this.delayedSubmitTimeoutID=setTimeout(()=>{eventSubmitter.doSubmitEvents();},DELAYED_SUBMIT_TIMEOUT*1000);};DefaultEventSubmitter.prototype.onSubmitEvent=function(eventData){console.info('Submitted the following event:',eventData);};module.exports=DefaultEventSubmitter;\\n},\\\"lib/metrics-platform/Instrument.js\\\":function(require,module,exports){function Instrument(metricsClient,streamName,schemaID){this.metricsClient=metricsClient;this.streamName=streamName;this.schemaID=schemaID;this.eventSequencePosition=1;this.instrumentName=null;}Instrument.prototype.isStreamInSample=function(){return this.metricsClient.isStreamInSample(this.streamName);};Instrument.prototype.isEnabled=function(){return this.isStreamInSample();};Instrument.prototype.submitInteraction=function(action,interactionData){interactionData=Object.assign({},interactionData||{},{funnel_event_sequence_position:this.eventSequencePosition++});if(this.instrumentName){interactionData.instrument_name=this.instrumentName;}this.metricsClient.submitInteraction(this.streamName,this.schemaID,action,interactionData);};Instrument.prototype.submitClick=function(interactionData){interactionData.funnel_event_sequence_position=this.eventSequencePosition++;if(this.instrumentName){interactionData.instrument_name=this.instrumentName;}this.metricsClient.submitClick(this.streamName,interactionData);\\n};Instrument.prototype.setInstrumentName=function(instrumentName){this.instrumentName=instrumentName;return this;};Instrument.prototype.setSchemaID=function(schemaID){this.schemaID=schemaID;return this;};module.exports=Instrument;\\n},\\\"lib/metrics-platform/MetricsClient.js\\\":function(require,module,exports){const ContextController=require('./ContextController.js');const SamplingController=require('./SamplingController.js');const DefaultEventSubmitter=require('./DefaultEventSubmitter.js');const Instrument=require('./Instrument.js');const SCHEMA='/analytics/mediawiki/client/metrics_event/2.1.0';function MetricsClient(integration,logger,streamConfigs,eventSubmitter){this.contextController=new ContextController(integration);this.samplingController=new SamplingController(integration);this.integration=integration;this.logger=logger;this.streamConfigs=streamConfigs;this.eventSubmitter=eventSubmitter||new DefaultEventSubmitter();this.eventNameToStreamNamesMap=null;}function getStreamConfigInternal(streamConfigs,streamName){if(streamConfigs===false){return{};}if(!streamConfigs[streamName]){return undefined;}return streamConfigs[streamName];}MetricsClient.prototype.getStreamConfig=function(streamName){const streamConfig=getStreamConfigInternal(this.streamConfigs,streamName);return streamConfig?this.integration.clone(streamConfig):streamConfig;\\n};function getEventNameToStreamNamesMap(streamConfigs){const result={};for(const streamName in streamConfigs){const streamConfig=streamConfigs[streamName];if(!streamConfig.producers||!streamConfig.producers.metrics_platform_client||!streamConfig.producers.metrics_platform_client.events){continue;}let events=streamConfig.producers.metrics_platform_client.events;if(typeof events==='string'){events=[events];}for(let i=0;i<events.length;++i){if(!result[events[i]]){result[events[i]]=[];}result[events[i]].push(streamName);}}return result;}MetricsClient.prototype.getStreamNamesForEvent=function(eventName){if(this.streamConfigs===false){return[];}if(!this.eventNameToStreamNamesMap){this.eventNameToStreamNamesMap=getEventNameToStreamNamesMap(this.streamConfigs);}let result=[];for(const key in this.eventNameToStreamNamesMap){if(eventName.indexOf(key)===0){result=result.concat(this.eventNameToStreamNamesMap[key]);}}return result;};MetricsClient.prototype.addRequiredMetadata=function(eventData,streamName){\\nif(eventData.meta){eventData.meta.stream=streamName;eventData.meta.domain=this.integration.getHostname();}else{eventData.meta={stream:streamName,domain:this.integration.getHostname()};}if(eventData.client_dt){delete eventData.dt;}else{eventData.dt=eventData.dt||new Date().toISOString();}return eventData;};MetricsClient.prototype.submit=function(streamName,eventData){const result=this.validateSubmitCall(streamName,eventData);if(result){this.processSubmitCall(new Date().toISOString(),streamName,eventData);}};MetricsClient.prototype.validateSubmitCall=function(streamName,eventData){if(!eventData||!eventData.$schema){this.logger.logWarning('submit( '+streamName+', eventData ) called with eventData missing required '+'field \\\"$schema\\\". No event will be produced.');return false;}return true;};MetricsClient.prototype.processSubmitCall=function(timestamp,streamName,eventData){eventData.dt=timestamp;const streamConfig=getStreamConfigInternal(this.streamConfigs,streamName);if(!streamConfig){this.logger.logWarning(\\n'The stream '+streamName+' is not configured. No event will be sent');return;}if(!this.samplingController.isStreamInSample(streamConfig)){this.logger.logWarning('The stream '+streamName+' is out of sample. No event will be sent');return;}const targetStreamName=streamConfig&&streamConfig.producers&&streamConfig.producers.metrics_platform_client&&streamConfig.producers.metrics_platform_client.stream_name;if(targetStreamName){if(!getStreamConfigInternal(this.streamConfigs,targetStreamName)){return;}streamName=targetStreamName;}this.addRequiredMetadata(eventData,streamName);this.eventSubmitter.submitEvent(eventData);};MetricsClient.prototype.submitInteraction=function(streamName,schemaID,action,interactionData){if(!action){this.logger.logWarning('submitInteraction( '+streamName+', ..., action ) '+'called without required field \\\"action\\\". No event will be produced.');return;}const eventData=Object.assign({action},interactionData||{},{$schema:schemaID});const streamConfig=getStreamConfigInternal(this.streamConfigs,streamName);\\nif(!streamConfig){return;}this.contextController.addRequestedValues(eventData,streamConfig);this.submit(streamName,eventData);};const WEB_BASE_SCHEMA_ID='/analytics/product_metrics/web/base/1.5.0';MetricsClient.prototype.submitClick=function(streamName,interactionData){this.submitInteraction(streamName,WEB_BASE_SCHEMA_ID,'click',interactionData);};MetricsClient.prototype.isStreamInSample=function(streamName){const streamConfig=getStreamConfigInternal(this.streamConfigs,streamName);return streamConfig?this.samplingController.isStreamInSample(streamConfig):false;};MetricsClient.prototype.newInstrument=function(streamOrInstrumentName,streamNameOrSchemaID,schemaID){let instrumentName;let streamName;if(streamNameOrSchemaID===undefined){streamName=instrumentName=streamOrInstrumentName;schemaID=WEB_BASE_SCHEMA_ID;}else if(schemaID===undefined){streamName=streamOrInstrumentName;schemaID=streamNameOrSchemaID;}else{instrumentName=streamOrInstrumentName;streamName=streamNameOrSchemaID;}const result=new Instrument(this,streamName,schemaID);\\nif(instrumentName){result.setInstrumentName(instrumentName);}return result;};module.exports=MetricsClient;module.exports.SCHEMA=SCHEMA;\\n},\\\"lib/metrics-platform/SamplingController.js\\\":function(require,module,exports){const isValidSample=require('./StreamConfig.js').isValidSample;const UINT32_MAX=4294967295;function SamplingController(integration){this.integration=integration;}SamplingController.prototype.isStreamInSample=function(streamConfig){if(!streamConfig){return false;}if(!streamConfig.sample){return true;}if(!isValidSample(streamConfig.sample)){return false;}let id;switch(streamConfig.sample.unit){case'pageview':id=this.integration.getContextAttributes().performer.pageview_id;break;case'session':id=this.integration.getContextAttributes().performer.session_id;break;default:return false;}return parseInt(id.slice(0,8),16)/UINT32_MAX<streamConfig.sample.rate;};module.exports=SamplingController;\\n},\\\"lib/metrics-platform/StreamConfig.js\\\":function(require,module,exports){const StreamProducerContextAttribute={agent_client_platform:'agent_client_platform',agent_client_platform_family:'agent_client_platform_family',agent_ua_string:'agent_ua_string',page_id:'page_id',page_title:'page_title',page_namespace_id:'page_namespace_id',page_namespace_name:'page_namespace_name',page_revision_id:'page_revision_id',page_wikidata_id:'page_wikidata_id',page_wikidata_qid:'page_wikidata_id',page_content_language:'page_content_language',page_is_redirect:'page_is_redirect',page_user_groups_allowed_to_move:'page_user_groups_allowed_to_move',page_user_groups_allowed_to_edit:'page_user_groups_allowed_to_edit',mediawiki_skin:'mediawiki_skin',mediawiki_version:'mediawiki_version',mediawiki_is_production:'mediawiki_is_production',mediawiki_is_debug_mode:'mediawiki_is_debug_mode',mediawiki_database:'mediawiki_database',mediawiki_site_content_language:'mediawiki_site_content_language',mediawiki_site_content_language_variant:'mediawiki_site_content_language_variant',\\nperformer_is_logged_in:'performer_is_logged_in',performer_id:'performer_id',performer_name:'performer_name',performer_session_id:'performer_session_id',performer_active_browsing_session_token:'performer_active_browsing_session_token',performer_pageview_id:'performer_pageview_id',performer_groups:'performer_groups',performer_is_bot:'performer_is_bot',performer_is_temp:'performer_is_temp',performer_language:'performer_language',performer_language_variant:'performer_language_variant',performer_can_probably_edit_page:'performer_can_probably_edit_page',performer_edit_count:'performer_edit_count',performer_edit_count_bucket:'performer_edit_count_bucket',performer_registration_dt:'performer_registration_dt'};function isValidSample(sample){return!!(sample&&sample.unit&&sample.rate&&sample.rate>=0&&sample.rate<=1);}module.exports={isValidSample:isValidSample};\\n}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.eventLogging.metricsPlatform&skin=vector-2022&version=1i3oh\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.eventLogging.metricsPlatform&skin=vector-2022&sourcemap=1&version=1i3oh\",\"jquery.uls.data@1150b\":\"mw.loader.impl(function(){return[\\\"jquery.uls.data@1150b\\\",function($,jQuery,require,module){(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=typeof require==='function'&&require;if(!f&&c){return c(i,!0);}if(u){return u(i,!0);}var a=new Error(\\\"Cannot find module '\\\"+i+\\\"'\\\");throw a.code='MODULE_NOT_FOUND',a;}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r);},p,p.exports,r,e,n,t);}return n[i].exports;}for(var u=typeof require==='function'&&require,i=0;i<t.length;i++){o(t[i]);}return o;}return r;}())({1:[function(require,module,exports){module.exports=(function($){$.uls=$.uls||{};$.uls.data={\\\"languages\\\":{\\\"aa\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Qafár af\\\"],\\\"aae\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"arbërisht\\\"],\\\"ab\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"аԥсшәа\\\"],\\\"abe\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Wôbanakiôdwawôgan\\\"],\\\"abr\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Abron\\\"],\\\"abs\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Bahasa Ambon\\\"],\\\"ace\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Acèh\\\"],\\\"acf\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Kwéyòl Sent Lisi\\\"],\\\"ach\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Acoli\\\"],\\\"acm\\\":[\\\"Arab\\\",[\\\"ME\\\"],\\\"عراقي\\\"],\\\"acq\\\":[\\\"Arab\\\",[\\\"ME\\\",\\\"AF\\\"],\\\"تعزية-عدنية\\\"],\\\"ada\\\":[\\n\\\"Latn\\\",[\\\"AF\\\"],\\\"Dangme\\\"],\\\"ady\\\":[\\\"Cyrl\\\",[\\\"EU\\\",\\\"ME\\\"],\\\"адыгабзэ\\\"],\\\"ady-cyrl\\\":[\\\"ady\\\"],\\\"ady-latn\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"ME\\\"],\\\"Adygabze\\\"],\\\"aeb\\\":[\\\"Arab\\\",[\\\"AF\\\"],\\\"تونسي\\\"],\\\"aeb-arab\\\":[\\\"aeb\\\"],\\\"aeb-latn\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Tûnsî\\\"],\\\"af\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Afrikaans\\\"],\\\"agq\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"aghɨ̂m\\\"],\\\"agr\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Awajún\\\"],\\\"ahr\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"अहिराणी\\\"],\\\"aig\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Aanteegan an' Baabyuudan\\\"],\\\"aii\\\":[\\\"Syrc\\\",[\\\"ME\\\"],\\\"ܣܘܪܝܬ\\\"],\\\"ajg\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"ajagbe\\\"],\\\"ajp\\\":[\\\"apc\\\"],\\\"ajp-arab\\\":[\\\"apc\\\"],\\\"ajp-latn\\\":[\\\"apc-latn\\\"],\\\"akb\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Batak Angkola\\\"],\\\"akz\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Albaamo innaaɬiilka\\\"],\\\"ale\\\":[\\\"Latn\\\",[\\\"AM\\\",\\\"AS\\\"],\\\"unangam tunuu\\\"],\\\"ale-cyrl\\\":[\\\"Cyrl\\\",[\\\"AS\\\"],\\\"унаӈам тунуу\\\"],\\\"aln\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Gegë\\\"],\\\"als\\\":[\\\"sq\\\"],\\\"alt\\\":[\\\"Cyrl\\\",[\\\"EU\\\",\\\"AS\\\"],\\\"алтай тил\\\"],\\\"am\\\":[\\\"Ethi\\\",[\\\"AF\\\"],\\\"አማርኛ\\\"],\\\"ami\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Pangcah\\\"],\\\"an\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"aragonés\\\"],\\\"ang\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Ænglisc\\\"],\\\"ann\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Obolo\\\"],\\\"anp\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\n\\\"अंगिका\\\"],\\\"apc\\\":[\\\"Arab\\\",[\\\"ME\\\"],\\\"شامي\\\"],\\\"apc-arab\\\":[\\\"apc\\\"],\\\"apc-latn\\\":[\\\"Latn\\\",[\\\"ME\\\"],\\\"šāmi\\\"],\\\"apw\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Ndee biyati'\\\"],\\\"ar\\\":[\\\"Arab\\\",[\\\"AF\\\",\\\"ME\\\"],\\\"العربية\\\"],\\\"arc\\\":[\\\"Syrc\\\",[\\\"ME\\\"],\\\"ܐܪܡܝܐ\\\"],\\\"arn\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"mapudungun\\\"],\\\"aro\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Araona\\\"],\\\"arq\\\":[\\\"Arab\\\",[\\\"AF\\\",\\\"ME\\\"],\\\"جازايرية\\\"],\\\"ars\\\":[\\\"Arab\\\",[\\\"ME\\\"],\\\"نجدي\\\"],\\\"ary\\\":[\\\"Arab\\\",[\\\"AF\\\",\\\"ME\\\"],\\\"الدارجة\\\"],\\\"ary-arab\\\":[\\\"ary\\\"],\\\"ary-latn\\\":[\\\"Latn\\\",[\\\"AF\\\",\\\"ME\\\"],\\\"ed-dārija\\\"],\\\"arz\\\":[\\\"Arab\\\",[\\\"AF\\\",\\\"ME\\\"],\\\"مصرى\\\"],\\\"as\\\":[\\\"Beng\\\",[\\\"AS\\\"],\\\"অসমীয়া\\\"],\\\"ase\\\":[\\\"Sgnw\\\",[\\\"AM\\\"],\\\"American Sign Language\\\"],\\\"ast\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"asturianu\\\"],\\\"atj\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"atikamekw\\\"],\\\"atv\\\":[\\\"Cyrl\\\",[\\\"EU\\\",\\\"AS\\\"],\\\"тÿндÿк алтай тил\\\"],\\\"av\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"авар\\\"],\\\"avk\\\":[\\\"Latn\\\",[\\\"WW\\\"],\\\"Kotava\\\"],\\\"awa\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"अवधी\\\"],\\\"ay\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Aymar aru\\\"],\\\"ayh\\\":[\\\"Arab\\\",[\\\"ME\\\"],\\\"الحضرمية\\\"],\\\"az\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"ME\\\"],\\\"azərbaycanca\\\"],\\\"az-arab\\\":[\\\"azb\\\"],\\\"az-cyrl\\\":[\\\"Cyrl\\\",[\\\"EU\\\",\\\"ME\\\"],\\n\\\"азәрбајҹанҹа\\\"],\\\"az-latn\\\":[\\\"az\\\"],\\\"azb\\\":[\\\"Arab\\\",[\\\"AS\\\",\\\"ME\\\"],\\\"تۆرکجه\\\"],\\\"azj\\\":[\\\"az\\\"],\\\"ba\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"башҡортса\\\"],\\\"ban\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Bali\\\"],\\\"ban-bali\\\":[\\\"Bali\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"ᬩᬮᬶ\\\"],\\\"bar\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Boarisch\\\"],\\\"bas\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"ɓasaá\\\"],\\\"bat-smg\\\":[\\\"sgs\\\"],\\\"bax\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Shüpamom\\\"],\\\"bax-bamu\\\":[\\\"Bamu\\\",[\\\"AF\\\"],\\\"ꚶꛉ꛰꛲ꚫꛦꚳ\\\"],\\\"bbc\\\":[\\\"bbc-latn\\\"],\\\"bbc-batk\\\":[\\\"Batk\\\",[\\\"AS\\\"],\\\"ᯅᯖᯂ᯲ ᯖᯬᯅ\\\"],\\\"bbc-latn\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Batak Toba\\\"],\\\"bcc\\\":[\\\"Arab\\\",[\\\"AS\\\",\\\"ME\\\"],\\\"جهلسری بلوچی\\\"],\\\"bci\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"wawle\\\"],\\\"bcl\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Bikol Central\\\"],\\\"bdr\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Bajau Sama\\\"],\\\"be\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"беларуская\\\"],\\\"be-tarask\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"беларуская (тарашкевіца)\\\"],\\\"be-x-old\\\":[\\\"be-tarask\\\"],\\\"bem\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"IciBemba\\\"],\\\"bew\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Betawi\\\"],\\\"bfa\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Bari\\\"],\\\"bfq\\\":[\\\"Taml\\\",[\\\"AS\\\"],\\\"படகா\\\"],\\\"bft\\\":[\\\"Arab\\\",[\\\"AS\\\"],\\\"بلتی\\\"],\\\"bfw\\\":[\\\"Orya\\\",[\\\"AS\\\"],\\n\\\"ରେମସାମ୍\\\"],\\\"bg\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"български\\\"],\\\"bgc\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"हरियाणवी\\\"],\\\"bgc-arab\\\":[\\\"Arab\\\",[\\\"AS\\\"],\\\"ہریانوی\\\"],\\\"bgn\\\":[\\\"Arab\\\",[\\\"AS\\\",\\\"ME\\\"],\\\"روچ کپتین بلوچی\\\"],\\\"bh\\\":[\\\"bho\\\"],\\\"bho\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"भोजपुरी\\\"],\\\"bi\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"Bislama\\\"],\\\"bin\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Ẹdo\\\"],\\\"bjn\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Banjar\\\"],\\\"bkm\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Itaŋikom\\\"],\\\"blc\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"ItNuxalkmc\\\"],\\\"blk\\\":[\\\"Mymr\\\",[\\\"AS\\\"],\\\"ပအိုဝ်ႏဘာႏသာႏ\\\"],\\\"bm\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"bamanankan\\\"],\\\"bn\\\":[\\\"Beng\\\",[\\\"AS\\\"],\\\"বাংলা\\\"],\\\"bnn\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"bunun\\\"],\\\"bo\\\":[\\\"Tibt\\\",[\\\"AS\\\"],\\\"བོད་ཡིག\\\"],\\\"bol\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"bòo pìkkà\\\"],\\\"bom\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"bèrom\\\"],\\\"bpy\\\":[\\\"Beng\\\",[\\\"AS\\\"],\\\"বিষ্ণুপ্রিয়া মণিপুরী\\\"],\\\"bqi\\\":[\\\"Arab\\\",[\\\"AS\\\",\\\"ME\\\"],\\\"بختیاری\\\"],\\\"br\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"brezhoneg\\\"],\\\"brh\\\":[\\\"Latn\\\",[\\\"ME\\\",\\\"AS\\\"],\\\"Bráhuí\\\"],\\\"brx\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"बर'\\\"],\\\"bs\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"bosanski\\\"],\\\"btd\\\":[\\\"Latn\\\",[\\n\\\"AS\\\",\\\"PA\\\"],\\\"Batak Dairi\\\"],\\\"btm\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Mandailing\\\"],\\\"bto\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Iriga Bicolano\\\"],\\\"bts\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Sahap Simalungun\\\"],\\\"btx\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"cakap Karo\\\"],\\\"btz\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Batak Alas-Kluet\\\"],\\\"bug\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Basa Ugi\\\"],\\\"bug-bugi\\\":[\\\"Bugi\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"ᨅᨔ ᨕᨘᨁᨗ\\\"],\\\"bug-latn\\\":[\\\"bug\\\"],\\\"bum\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"bulu\\\"],\\\"bwr\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"bura\\\"],\\\"bxr\\\":[\\\"Cyrl\\\",[\\\"AS\\\"],\\\"буряад\\\"],\\\"byn\\\":[\\\"Ethi\\\",[\\\"AF\\\"],\\\"ብሊን\\\"],\\\"byv\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Mə̀dʉ̂mbɑ̀\\\"],\\\"bzj\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Bileez Kriol\\\"],\\\"bzs\\\":[\\\"Sgnw\\\",[\\\"AM\\\"],\\\"Língua brasileira de sinais\\\"],\\\"ca\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"català\\\"],\\\"cak\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Kaqchikel\\\"],\\\"cbk\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Chavacano de Zamboanga\\\"],\\\"cbk-zam\\\":[\\\"cbk\\\"],\\\"ccp\\\":[\\\"Cakm\\\",[\\\"AS\\\"],\\\"𑄌𑄋𑄴𑄟𑄳𑄦\\\"],\\\"cdo\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"閩東語 \\\\/ Mìng-dĕ̤ng-ngṳ̄\\\"],\\\"cdo-hani\\\":[\\\"Hani\\\",[\\\"AS\\\"],\\\"閩東語（漢字）\\\"],\\\"cdo-hans\\\":[\\\"Hans\\\",[\\\"AS\\\"],\\\"闽东语（简化汉字）\\\"],\\\"cdo-hant\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\n\\\"閩東語（傳統漢字）\\\"],\\\"cdo-latn\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Mìng-dĕ̤ng-ngṳ̄ (Bàng-uâ-cê)\\\"],\\\"ce\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"нохчийн\\\"],\\\"ceb\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Cebuano\\\"],\\\"ch\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"Chamoru\\\"],\\\"chm\\\":[\\\"mhr\\\"],\\\"chn\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"chinuk wawa\\\"],\\\"cho\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Chahta anumpa\\\"],\\\"chr\\\":[\\\"Cher\\\",[\\\"AM\\\"],\\\"ᏣᎳᎩ\\\"],\\\"chy\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Tsetsêhestâhese\\\"],\\\"ciw\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Anishinaabemowin\\\"],\\\"cja\\\":[\\\"cja-latn\\\"],\\\"cja-arab\\\":[\\\"Arab\\\",[\\\"AS\\\"],\\\"چم فور\\\"],\\\"cja-cham\\\":[\\\"Cham\\\",[\\\"AS\\\"],\\\"ꨌꩌ ꨚꨭꩉ\\\"],\\\"cja-latn\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Cam pur\\\"],\\\"cjk\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"cokwe\\\"],\\\"cjm\\\":[\\\"cjm-cham\\\"],\\\"cjm-arab\\\":[\\\"Arab\\\",[\\\"AS\\\"],\\\"چم فاي\\\"],\\\"cjm-cham\\\":[\\\"Cham\\\",[\\\"AS\\\"],\\\"ꨌꩌ ꨚꨰ\\\"],\\\"cjm-latn\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Cam pai\\\"],\\\"cjy\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"晉語\\\"],\\\"cjy-hans\\\":[\\\"Hans\\\",[\\\"AS\\\"],\\\"晋语（简化字）\\\"],\\\"cjy-hant\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"晉語（正字）\\\"],\\\"ckb\\\":[\\\"Arab\\\",[\\\"ME\\\"],\\\"کوردی\\\"],\\\"cko\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Anufɔ\\\"],\\\"ckt\\\":[\\\"Cyrl\\\",[\\\"AS\\\"],\\\"ԓыгъоравэтԓьэн\\\"],\\\"ckv\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Kebalan\\\"],\\n\\\"cnh\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Lai holh\\\"],\\\"cnr\\\":[\\\"cnr-latn\\\"],\\\"cnr-cyrl\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"црногорски\\\"],\\\"cnr-latn\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"crnogorski\\\"],\\\"co\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"corsu\\\"],\\\"cop\\\":[\\\"Copt\\\",[\\\"AF\\\",\\\"ME\\\"],\\\"ϯⲙⲉⲧⲣⲉⲙⲛ̀ⲭⲏⲙⲓ\\\"],\\\"cps\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Capiceño\\\"],\\\"cpx\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"莆仙語 \\\\/ Pó-sing-gṳ̂\\\"],\\\"cpx-hans\\\":[\\\"Hans\\\",[\\\"AS\\\"],\\\"莆仙语（简体）\\\"],\\\"cpx-hant\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"莆仙語（繁體）\\\"],\\\"cpx-latn\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Pó-sing-gṳ̂ (Báⁿ-uā-ci̍)\\\"],\\\"cr\\\":[\\\"Cans\\\",[\\\"AM\\\"],\\\"ᓀᐦᐃᔭᐍᐏᐣ\\\"],\\\"cr-cans\\\":[\\\"cr\\\"],\\\"cr-latn\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Nēhiyawēwin\\\"],\\\"crg\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Michif\\\"],\\\"crh\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"qırımtatarca\\\"],\\\"crh-cyrl\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"къырымтатарджа\\\"],\\\"crh-latn\\\":[\\\"crh\\\"],\\\"crh-ro\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"tatarşa\\\"],\\\"cs\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"čeština\\\"],\\\"csb\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"kaszëbsczi\\\"],\\\"cu\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"словѣньскъ \\\\/ ⰔⰎⰑⰂⰡⰐⰠⰔⰍⰟ\\\"],\\\"cv\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"чӑвашла\\\"],\\\"cy\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Cymraeg\\\"],\\\"da\\\":[\\n\\\"Latn\\\",[\\\"EU\\\"],\\\"dansk\\\"],\\\"dag\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"dagbanli\\\"],\\\"dar\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"дарган\\\"],\\\"ddn\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"dendi\\\"],\\\"de\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Deutsch\\\"],\\\"de-at\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Österreichisches Deutsch\\\"],\\\"de-ch\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Schweizer Hochdeutsch\\\"],\\\"de-formal\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Deutsch (Sie-Form)\\\"],\\\"dga\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Dagaare\\\"],\\\"dik\\\":[\\\"din\\\"],\\\"din\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Thuɔŋjäŋ\\\"],\\\"diq\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"AS\\\"],\\\"Zazaki\\\"],\\\"dlg\\\":[\\\"Cyrl\\\",[\\\"EU\\\",\\\"AS\\\"],\\\"долган тыла\\\"],\\\"doi\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"डोगरी\\\"],\\\"dru\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"drekai\\\"],\\\"dsb\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"dolnoserbski\\\"],\\\"dso\\\":[\\\"Orya\\\",[\\\"AS\\\"],\\\"ଦେଶିଆ\\\"],\\\"dtp\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Kadazandusun\\\"],\\\"dty\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"डोटेली\\\"],\\\"dua\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Duálá\\\"],\\\"dv\\\":[\\\"Thaa\\\",[\\\"AS\\\"],\\\"ދިވެހިބަސް\\\"],\\\"dyu\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Julakan\\\"],\\\"dz\\\":[\\\"Tibt\\\",[\\\"AS\\\"],\\\"ཇོང་ཁ\\\"],\\\"ee\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"eʋegbe\\\"],\\\"efi\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"efịk\\\"],\\\"egl\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Emiliàn\\\"],\\\"ekp\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"ẹkpeye\\\"],\\\"el\\\":[\\\"Grek\\\",[\\\"EU\\\"],\\n\\\"Ελληνικά\\\"],\\\"elm\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Eleme\\\"],\\\"eml\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"emiliàn e rumagnòl\\\"],\\\"en\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"AM\\\",\\\"AF\\\",\\\"ME\\\",\\\"AS\\\",\\\"PA\\\",\\\"WW\\\"],\\\"English\\\"],\\\"en-ca\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Canadian English\\\"],\\\"en-gb\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"AS\\\",\\\"PA\\\"],\\\"British English\\\"],\\\"en-simple\\\":[\\\"Latn\\\",[\\\"WW\\\"],\\\"Simple English\\\"],\\\"en-us\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"American English\\\"],\\\"eo\\\":[\\\"Latn\\\",[\\\"WW\\\"],\\\"Esperanto\\\"],\\\"es\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"AM\\\",\\\"AF\\\",\\\"WW\\\",\\\"PA\\\"],\\\"español\\\"],\\\"es-419\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"español de América Latina\\\"],\\\"es-formal\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"AM\\\",\\\"AF\\\",\\\"WW\\\"],\\\"español (formal)\\\"],\\\"es-ni\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"español nicaragüense\\\"],\\\"esu\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Yup'ik\\\"],\\\"et\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"eesti\\\"],\\\"eu\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"euskara\\\"],\\\"ext\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"estremeñu\\\"],\\\"eya\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"I·ya·q\\\"],\\\"fa\\\":[\\\"Arab\\\",[\\\"AS\\\",\\\"ME\\\"],\\\"فارسی\\\"],\\\"fan\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Faŋ\\\"],\\\"fat\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"mfantse\\\"],\\\"fax\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Fala\\\"],\\\"ff\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Fulfulde\\\"],\\\"fi\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"suomi\\\"],\\\"fil\\\":[\\\"tl\\\"],\\\"fit\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"meänkieli\\\"],\\\"fiu-vro\\\":[\\n\\\"vro\\\"],\\\"fj\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"Na Vosa Vakaviti\\\"],\\\"fkv\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"kvääni\\\"],\\\"fo\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"føroyskt\\\"],\\\"fon\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"fɔ̀ngbè\\\"],\\\"fr\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"AM\\\",\\\"WW\\\"],\\\"français\\\"],\\\"frc\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"français cadien\\\"],\\\"frp\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"arpetan\\\"],\\\"frr\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Nordfriisk\\\"],\\\"frs\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Oostfräisk\\\"],\\\"fuf\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Fuuta Jalon\\\"],\\\"fur\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"furlan\\\"],\\\"fuv\\\":[\\\"ff\\\"],\\\"fvr\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"poor’íŋ belé’ŋ\\\"],\\\"fy\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Frysk\\\"],\\\"ga\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Gaeilge\\\"],\\\"gaa\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Ga\\\"],\\\"gag\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Gagauz\\\"],\\\"gah\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Alekano\\\"],\\\"gan\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"贛語\\\"],\\\"gan-hans\\\":[\\\"Hans\\\",[\\\"AS\\\"],\\\"赣语（简体）\\\"],\\\"gan-hant\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"贛語（繁體）\\\"],\\\"gaz\\\":[\\\"om\\\"],\\\"gbm\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"गढ़वळि\\\"],\\\"gbz\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Dari-e Mazdeyasnā\\\"],\\\"gcf\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"kréyòl Gwadloup\\\"],\\\"gcr\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"kriyòl gwiyannen\\\"],\\\"gd\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Gàidhlig\\\"],\\\"gez\\\":[\\\"Ethi\\\",[\\\"AF\\\"],\\\"ግዕዝ\\\"],\\\"gju-arab\\\":[\\n\\\"Arab\\\",[\\\"AS\\\"],\\\"گوجری\\\"],\\\"gju-deva\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"गुज्जरी\\\"],\\\"gl\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"galego\\\"],\\\"gld\\\":[\\\"Cyrl\\\",[\\\"AS\\\"],\\\"на̄ни\\\"],\\\"glk\\\":[\\\"Arab\\\",[\\\"AS\\\",\\\"ME\\\"],\\\"گیلکی\\\"],\\\"gn\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Avañe'ẽ\\\"],\\\"gom\\\":[\\\"gom-deva\\\"],\\\"gom-deva\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"गोंयची कोंकणी\\\"],\\\"gom-latn\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Gõychi Konknni\\\"],\\\"gor\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Bahasa Hulontalo\\\"],\\\"got\\\":[\\\"Goth\\\",[\\\"EU\\\"],\\\"𐌲𐌿𐍄𐌹𐍃𐌺\\\"],\\\"gpe\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Ghanaian Pidgin\\\"],\\\"grc\\\":[\\\"Grek\\\",[\\\"EU\\\"],\\\"Ἀρχαία ἑλληνικὴ\\\"],\\\"gsw\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Alemannisch\\\"],\\\"gu\\\":[\\\"Gujr\\\",[\\\"AS\\\"],\\\"ગુજરાતી\\\"],\\\"guc\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"wayuunaiki\\\"],\\\"gum\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Namtrik\\\"],\\\"gur\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"farefare\\\"],\\\"guw\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"gungbe\\\"],\\\"gv\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Gaelg\\\"],\\\"ha\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Hausa\\\"],\\\"ha-arab\\\":[\\\"Arab\\\",[\\\"AF\\\"],\\\"هَوُسَ\\\"],\\\"ha-latn\\\":[\\\"ha\\\"],\\\"hai\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"X̱aat Kíl\\\"],\\\"hak\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"客家語 \\\\/ Hak-kâ-ngî\\\"],\\\"hak-hans\\\":[\\\"Hans\\\",[\\\"AS\\\"],\\\"客家语（简体）\\\"],\\n\\\"hak-hant\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"客家語（繁體）\\\"],\\\"hak-latn\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Hak-kâ-ngî (Pha̍k-fa-sṳ)\\\"],\\\"hav\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Kihavu\\\"],\\\"haw\\\":[\\\"Latn\\\",[\\\"AM\\\",\\\"PA\\\"],\\\"Hawaiʻi\\\"],\\\"he\\\":[\\\"Hebr\\\",[\\\"ME\\\"],\\\"עברית\\\"],\\\"hi\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"हिन्दी\\\"],\\\"hif\\\":[\\\"Latn\\\",[\\\"PA\\\",\\\"AS\\\"],\\\"Fiji Hindi\\\"],\\\"hif-deva\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"फ़ीजी हिन्दी\\\"],\\\"hif-latn\\\":[\\\"hif\\\"],\\\"hil\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Ilonggo\\\"],\\\"hke\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"kihunde\\\"],\\\"hne\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"छत्तीसगढ़ी\\\"],\\\"hno\\\":[\\\"Arab\\\",[\\\"AS\\\"],\\\"ہندکو\\\"],\\\"ho\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"Hiri Motu\\\"],\\\"hoc\\\":[\\\"Wara\\\",[\\\"AS\\\"],\\\"𑢹𑣉𑣉\\\"],\\\"hoc-latn\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Ho\\\"],\\\"hr\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"hrvatski\\\"],\\\"hrx\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Hunsrik\\\"],\\\"hsb\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"hornjoserbsce\\\"],\\\"hsn\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"湘語\\\"],\\\"ht\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Kreyòl ayisyen\\\"],\\\"hu\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"magyar\\\"],\\\"hu-formal\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Magyar (magázó)\\\"],\\\"hy\\\":[\\\"Armn\\\",[\\\"EU\\\",\\\"ME\\\"],\\\"հայերեն\\\"],\\\"hyw\\\":[\\\"Armn\\\",[\\\"EU\\\",\\\"ME\\\"],\\\"Արեւմտահայերէն\\\"],\\\"hz\\\":[\\\"Latn\\\",[\\n\\\"AF\\\"],\\\"Otsiherero\\\"],\\\"ia\\\":[\\\"Latn\\\",[\\\"WW\\\"],\\\"interlingua\\\"],\\\"iba\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Jaku Iban\\\"],\\\"ibb\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"ibibio\\\"],\\\"id\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Bahasa Indonesia\\\"],\\\"ie\\\":[\\\"Latn\\\",[\\\"WW\\\"],\\\"Interlingue\\\"],\\\"ig\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Igbo\\\"],\\\"igb\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Ebira\\\"],\\\"igl\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Igala\\\"],\\\"ii\\\":[\\\"Yiii\\\",[\\\"AS\\\"],\\\"ꆇꉙ\\\"],\\\"ik\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Iñupiatun\\\"],\\\"ike-cans\\\":[\\\"Cans\\\",[\\\"AM\\\"],\\\"ᐃᓄᒃᑎᑐᑦ\\\"],\\\"ike-latn\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"inuktitut\\\"],\\\"ilo\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Ilokano\\\"],\\\"inh\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"гӀалгӀай\\\"],\\\"io\\\":[\\\"Latn\\\",[\\\"WW\\\"],\\\"Ido\\\"],\\\"is\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"íslenska\\\"],\\\"ish\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"awain\\\"],\\\"isv\\\":[\\\"isv-latn\\\"],\\\"isv-cyrl\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"меджусловјанскы\\\"],\\\"isv-latn\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"medžuslovjansky\\\"],\\\"it\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"italiano\\\"],\\\"iu\\\":[\\\"ike-cans\\\"],\\\"izh\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"ižoran keel\\\"],\\\"ja\\\":[\\\"Jpan\\\",[\\\"AS\\\"],\\\"日本語\\\"],\\\"jab\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Hyam\\\"],\\\"jac\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Abꞌxubꞌal Poptiꞌ\\\"],\\\"jam\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Patois\\\"],\\\"jax\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Jambi\\\"],\\\"jbo\\\":[\\n\\\"Latn\\\",[\\\"WW\\\"],\\\"lojban\\\"],\\\"jdt\\\":[\\\"jdt-cyrl\\\"],\\\"jdt-cyrl\\\":[\\\"Cyrl\\\",[\\\"EU\\\",\\\"AS\\\"],\\\"жугьури\\\"],\\\"jje\\\":[\\\"Kore\\\",[\\\"AS\\\"],\\\"제주말\\\"],\\\"juk\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Nene Wapan\\\"],\\\"jut\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"jysk\\\"],\\\"jv\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Jawa\\\"],\\\"jv-java\\\":[\\\"Java\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"ꦗꦮ\\\"],\\\"ka\\\":[\\\"Geor\\\",[\\\"EU\\\"],\\\"ქართული\\\"],\\\"kaa\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Qaraqalpaqsha\\\"],\\\"kab\\\":[\\\"Latn\\\",[\\\"AF\\\",\\\"EU\\\"],\\\"Taqbaylit\\\"],\\\"kac\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Jinghpaw\\\"],\\\"kai\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Karai-karai\\\"],\\\"kaj\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Jju\\\"],\\\"kam\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"kĩkamba\\\"],\\\"kbd\\\":[\\\"Cyrl\\\",[\\\"EU\\\",\\\"ME\\\"],\\\"адыгэбзэ\\\"],\\\"kbd-cyrl\\\":[\\\"kbd\\\"],\\\"kbd-latn\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Qabardjajəbza\\\"],\\\"kbp\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Kabɩyɛ\\\"],\\\"kcg\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Tyap\\\"],\\\"kck\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"tjikalanga\\\"],\\\"kea\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"kabuverdianu\\\"],\\\"ken\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"kɛ́nyáŋ\\\"],\\\"kg\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Kongo\\\"],\\\"kge\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Kumoring\\\"],\\\"kge-arab\\\":[\\\"Arab\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"كوموريڠ\\\"],\\\"kgg\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"गेम्येहाक़ गिपन\\\"],\\\"kgp\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\n\\\"Kaingáng\\\"],\\\"khk\\\":[\\\"mn\\\"],\\\"khw\\\":[\\\"Arab\\\",[\\\"ME\\\",\\\"AS\\\"],\\\"کھوار\\\"],\\\"ki\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Gĩkũyũ\\\"],\\\"kip\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"शेषी पाङ\\\"],\\\"kiu\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"ME\\\"],\\\"Kırmancki\\\"],\\\"kj\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Kwanyama\\\"],\\\"kjh\\\":[\\\"Cyrl\\\",[\\\"AS\\\"],\\\"хакас\\\"],\\\"kjp\\\":[\\\"Mymr\\\",[\\\"AS\\\"],\\\"ဖၠုံလိက်\\\"],\\\"kk\\\":[\\\"kk-cyrl\\\"],\\\"kk-arab\\\":[\\\"Arab\\\",[\\\"EU\\\",\\\"AS\\\"],\\\"قازاقشا (تٶتە)\\\"],\\\"kk-cn\\\":[\\\"kk-arab\\\"],\\\"kk-cyrl\\\":[\\\"Cyrl\\\",[\\\"EU\\\",\\\"AS\\\"],\\\"қазақша\\\"],\\\"kk-kz\\\":[\\\"kk-cyrl\\\"],\\\"kk-latn\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"AS\\\",\\\"ME\\\"],\\\"qazaqşa\\\"],\\\"kk-tr\\\":[\\\"kk-latn\\\"],\\\"kl\\\":[\\\"Latn\\\",[\\\"AM\\\",\\\"EU\\\"],\\\"kalaallisut\\\"],\\\"km\\\":[\\\"Khmr\\\",[\\\"AS\\\"],\\\"ភាសាខ្មែរ\\\"],\\\"kmb\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"kimbundu\\\"],\\\"kmr\\\":[\\\"ku-latn\\\"],\\\"kn\\\":[\\\"Knda\\\",[\\\"AS\\\"],\\\"ಕನ್ನಡ\\\"],\\\"knc\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Yerwa Kanuri\\\"],\\\"knn\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"महाराष्ट्रीय कोंकणी\\\"],\\\"ko\\\":[\\\"Kore\\\",[\\\"AS\\\"],\\\"한국어\\\"],\\\"ko-kp\\\":[\\\"Kore\\\",[\\\"AS\\\"],\\\"조선말\\\"],\\\"koi\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"перем коми\\\"],\\\"koy\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Denaakkenaageʼ\\\"],\\\"kr\\\":[\\\"Latn\\\",[\\n\\\"AF\\\"],\\\"kanuri\\\"],\\\"krc\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"къарачай-малкъар\\\"],\\\"kri\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Krio\\\"],\\\"krj\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Kinaray-a\\\"],\\\"krl\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Karjala\\\"],\\\"ks\\\":[\\\"Arab\\\",[\\\"AS\\\"],\\\"کٲشُر\\\"],\\\"ks-arab\\\":[\\\"ks\\\"],\\\"ks-deva\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"कॉशुर\\\"],\\\"ksf\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Bafia\\\"],\\\"ksh\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Ripoarisch\\\"],\\\"ksw\\\":[\\\"Mymr\\\",[\\\"AS\\\"],\\\"စှီၤ\\\"],\\\"ku\\\":[\\\"ku-latn\\\"],\\\"ku-arab\\\":[\\\"Arab\\\",[\\\"EU\\\",\\\"ME\\\"],\\\"کوردی (عەرەبی)\\\"],\\\"ku-latn\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"ME\\\"],\\\"kurdî\\\"],\\\"kum\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"къумукъ\\\"],\\\"kus\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Kʋsaal\\\"],\\\"kv\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"коми\\\"],\\\"kw\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"kernowek\\\"],\\\"ky\\\":[\\\"Cyrl\\\",[\\\"AS\\\"],\\\"кыргызча\\\"],\\\"la\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Latina\\\"],\\\"lad\\\":[\\\"lad-latn\\\"],\\\"lad-hebr\\\":[\\\"Hebr\\\",[\\\"ME\\\",\\\"EU\\\",\\\"AM\\\"],\\\"לאדינו\\\"],\\\"lad-latn\\\":[\\\"Latn\\\",[\\\"ME\\\",\\\"EU\\\",\\\"AM\\\"],\\\"Ladino\\\"],\\\"lag\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Kilaangi\\\"],\\\"laj\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Lëblaŋo\\\"],\\\"lb\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Lëtzebuergesch\\\"],\\\"lbe\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"лакку\\\"],\\\"ldn\\\":[\\\"Latn\\\",[\\\"WW\\\"],\\\"Láadan\\\"],\\\"lez\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\n\\\"лезги\\\"],\\\"lfn\\\":[\\\"Latn\\\",[\\\"WW\\\"],\\\"Lingua Franca Nova\\\"],\\\"lg\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Luganda\\\"],\\\"li\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Limburgs\\\"],\\\"lij\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Ligure\\\"],\\\"lij-mc\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"munegascu\\\"],\\\"liv\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Līvõ kēļ\\\"],\\\"ljp\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Lampung Api\\\"],\\\"lki\\\":[\\\"Arab\\\",[\\\"AS\\\",\\\"ME\\\"],\\\"لەکی\\\"],\\\"lkt\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Lakȟótiyapi\\\"],\\\"lld\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Ladin\\\"],\\\"lmo\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"lombard\\\"],\\\"ln\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"lingála\\\"],\\\"lo\\\":[\\\"Laoo\\\",[\\\"AS\\\"],\\\"ລາວ\\\"],\\\"lou\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Kouri-Vini\\\"],\\\"loz\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Silozi\\\"],\\\"lrc\\\":[\\\"Arab\\\",[\\\"AS\\\",\\\"ME\\\"],\\\"لۊری شومالی\\\"],\\\"lt\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"lietuvių\\\"],\\\"ltg\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"latgaļu\\\"],\\\"lua\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"ciluba\\\"],\\\"lud\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"lüüdi\\\"],\\\"lue\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"chiluvale\\\"],\\\"luo\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"dholuo\\\"],\\\"lus\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Mizo ţawng\\\"],\\\"lut\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"dxʷləšucid\\\"],\\\"luz\\\":[\\\"Arab\\\",[\\\"ME\\\"],\\\"لئری دوٙمینی\\\"],\\\"lv\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"latviešu\\\"],\\\"lvs\\\":[\\\"lv\\\"],\\\"lzh\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"文言\\\"],\\\"lzz\\\":[\\\"Latn\\\",[\\\"EU\\\",\\n\\\"ME\\\"],\\\"Lazuri\\\"],\\\"mad\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Madhurâ\\\"],\\\"mag\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"मगही\\\"],\\\"mai\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"मैथिली\\\"],\\\"mak\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Mangkasarak\\\"],\\\"mak-bugi\\\":[\\\"Bugi\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"ᨆᨀᨔᨑ\\\"],\\\"map-bms\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Basa Banyumasan\\\"],\\\"maw\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Ŋmampulli\\\"],\\\"mcn\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"vùn màsànà\\\"],\\\"mdf\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"мокшень\\\"],\\\"mdh\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Magindanawn\\\"],\\\"mey\\\":[\\\"Arab\\\",[\\\"AF\\\"],\\\"الحسانية\\\"],\\\"mfa\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Klate-Ttaning\\\"],\\\"mfe\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Morisyen\\\"],\\\"mg\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Malagasy\\\"],\\\"mh\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"Ebon\\\"],\\\"mhr\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"олык марий\\\"],\\\"mi\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"Māori\\\"],\\\"mic\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Mi'kmaq\\\"],\\\"min\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Minangkabau\\\"],\\\"miq\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Mískitu\\\"],\\\"mk\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"македонски\\\"],\\\"ml\\\":[\\\"Mlym\\\",[\\\"AS\\\",\\\"ME\\\"],\\\"മലയാളം\\\"],\\\"mn\\\":[\\\"Cyrl\\\",[\\\"AS\\\"],\\\"монгол\\\"],\\\"mn-cyrl\\\":[\\\"mn\\\"],\\\"mn-mong\\\":[\\\"mvf\\\"],\\\"mnc\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"manju gisun\\\"],\\\"mnc-latn\\\":[\\\"mnc\\\"],\\\"mnc-mong\\\":[\\n\\\"Mong\\\",[\\\"AS\\\"],\\\"ᠮᠠᠨᠵᡠ ᡤᡳᠰᡠᠨ\\\"],\\\"mni\\\":[\\\"Mtei\\\",[\\\"AS\\\"],\\\"ꯃꯤꯇꯩ ꯂꯣꯟ\\\"],\\\"mni-beng\\\":[\\\"Beng\\\",[\\\"AS\\\"],\\\"মেইতেই লোন্\\\"],\\\"mns\\\":[\\\"Cyrl\\\",[\\\"EU\\\",\\\"AS\\\"],\\\"ма̄ньси\\\"],\\\"mnw\\\":[\\\"Mymr\\\",[\\\"AS\\\"],\\\"ဘာသာမန်\\\"],\\\"mo\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"молдовеняскэ\\\"],\\\"moe\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"innu-aimun\\\"],\\\"mos\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"moore\\\"],\\\"mr\\\":[\\\"Deva\\\",[\\\"AS\\\",\\\"ME\\\"],\\\"मराठी\\\"],\\\"mrh\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Mara\\\"],\\\"mrj\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"кырык мары\\\"],\\\"mrt\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Margi\\\"],\\\"mrv\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"Magareva\\\"],\\\"ms\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Bahasa Melayu\\\"],\\\"ms-arab\\\":[\\\"Arab\\\",[\\\"AS\\\"],\\\"بهاس ملايو\\\"],\\\"msi\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Bahasa Sabah\\\"],\\\"mt\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Malti\\\"],\\\"mui\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Baso Palembang\\\"],\\\"mus\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Mvskoke\\\"],\\\"mvf\\\":[\\\"Mong\\\",[\\\"AS\\\"],\\\"ᠮᠣᠩᠭᠣᠯ\\\"],\\\"mwl\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Mirandés\\\"],\\\"mwv\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Behase Mentawei\\\"],\\\"mww\\\":[\\\"mww-latn\\\"],\\\"mww-latn\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Hmoob Dawb\\\"],\\\"my\\\":[\\\"Mymr\\\",[\\\"AS\\\"],\\\"မြန်မာဘာသာ\\\"],\\\"myv\\\":[\\n\\\"Cyrl\\\",[\\\"EU\\\"],\\\"эрзянь\\\"],\\\"mzn\\\":[\\\"Arab\\\",[\\\"ME\\\",\\\"AS\\\"],\\\"مازِرونی\\\"],\\\"na\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"Dorerin Naoero\\\"],\\\"nah\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Nāhuatl\\\"],\\\"nan\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"閩南語 \\\\/ Bân-lâm-gí\\\"],\\\"nan-hani\\\":[\\\"Hani\\\",[\\\"AS\\\"],\\\"閩南語（漢字）\\\"],\\\"nan-hans\\\":[\\\"Hans\\\",[\\\"AS\\\"],\\\"闽南语（简化汉字）\\\"],\\\"nan-hant\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"閩南語（傳統漢字）\\\"],\\\"nan-latn\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Bân-lâm-gí (Lô-má-jī)\\\"],\\\"nan-latn-pehoeji\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Bân-lâm-gí (Pe̍h-ōe-jī)\\\"],\\\"nan-latn-tailo\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Bân-lâm-gí (Tâi-lô)\\\"],\\\"nap\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Napulitano\\\"],\\\"naq\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Khoekhoegowab\\\"],\\\"nb\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"norsk (bokmål)\\\"],\\\"nd\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"siNdebele saseNyakatho\\\"],\\\"nds\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Plattdüütsch\\\"],\\\"nds-nl\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Nedersaksisch\\\"],\\\"ne\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"नेपाली\\\"],\\\"new\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"नेपाल भाषा\\\"],\\\"ng\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Oshiwambo\\\"],\\\"nia\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Li Niha\\\"],\\\"nit\\\":[\\\"Telu\\\",[\\\"AS\\\"],\\\"కొలామి\\\"],\\\"niu\\\":[\\n\\\"Latn\\\",[\\\"PA\\\"],\\\"ko e vagahau Niuē\\\"],\\\"njo\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Ao\\\"],\\\"nl\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"AM\\\"],\\\"Nederlands\\\"],\\\"nl-informal\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"AM\\\"],\\\"Nederlands (informeel)\\\"],\\\"nmz\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"nawdm\\\"],\\\"nn\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"norsk (nynorsk)\\\"],\\\"nn-hognorsk\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"norsk (høgnorsk)\\\"],\\\"nnh\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"ngiembɔɔn\\\"],\\\"no\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"norsk\\\"],\\\"nod\\\":[\\\"Lana\\\",[\\\"AS\\\"],\\\"ᨣᩴᩤᨾᩮᩥᩬᨦ\\\"],\\\"nod-thai\\\":[\\\"Thai\\\",[\\\"AS\\\"],\\\"คำเมือง\\\"],\\\"nog\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"ногайша\\\"],\\\"nov\\\":[\\\"Latn\\\",[\\\"WW\\\"],\\\"Novial\\\"],\\\"npi\\\":[\\\"ne\\\"],\\\"nqo\\\":[\\\"Nkoo\\\",[\\\"AF\\\"],\\\"ߒߞߏ\\\"],\\\"nr\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"isiNdebele seSewula\\\"],\\\"nrf-gg\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Guernésiais\\\"],\\\"nrf-je\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Jèrriais\\\"],\\\"nrm\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Nouormand\\\"],\\\"nso\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Sesotho sa Leboa\\\"],\\\"nup\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Nupe\\\"],\\\"nus\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Thok Naath\\\"],\\\"nv\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Diné bizaad\\\"],\\\"ny\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Chi-Chewa\\\"],\\\"nyn\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"runyankore\\\"],\\\"nyo\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Orunyoro\\\"],\\\"nys\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"Nyungar\\\"],\\\"nzi\\\":[\\n\\\"Latn\\\",[\\\"AF\\\"],\\\"Nzema\\\"],\\\"oc\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"occitan\\\"],\\\"ojb\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Ojibwemowin\\\"],\\\"oka\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"n̓səl̓xcin̓\\\"],\\\"olo\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"livvinkarjala\\\"],\\\"om\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Oromoo\\\"],\\\"ood\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"ʼOʼodham ha-ñeʼokĭ\\\"],\\\"or\\\":[\\\"Orya\\\",[\\\"AS\\\"],\\\"ଓଡ଼ିଆ\\\"],\\\"ory\\\":[\\\"or\\\"],\\\"os\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"ирон\\\"],\\\"osi\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Using\\\"],\\\"ota\\\":[\\\"Arab\\\",[\\\"AS\\\",\\\"EU\\\"],\\\"لسان عثمانى\\\"],\\\"ovd\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"övdalsk\\\"],\\\"pa\\\":[\\\"Guru\\\",[\\\"AS\\\"],\\\"ਪੰਜਾਬੀ\\\"],\\\"pa-arab\\\":[\\\"pnb\\\"],\\\"pa-guru\\\":[\\\"pa\\\"],\\\"pag\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Pangasinan\\\"],\\\"pam\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Kapampangan\\\"],\\\"pap\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Papiamentu\\\"],\\\"pap-aw\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Papiamento (Aruba)\\\"],\\\"pbb\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Nasa Yuwe\\\"],\\\"pbt\\\":[\\\"ps\\\"],\\\"pcd\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Picard\\\"],\\\"pcm\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Naijá\\\"],\\\"pdc\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"AM\\\"],\\\"Deitsch\\\"],\\\"pdt\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"AM\\\"],\\\"Plautdietsch\\\"],\\\"pes\\\":[\\\"fa\\\"],\\\"pey\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"PA\\\",\\\"AS\\\"],\\\"Petjoh\\\"],\\\"pfl\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Pälzisch\\\"],\\\"phr\\\":[\\\"Arab\\\",[\\\"AS\\\"],\\\"پوٹھواری\\\"],\\\"pi\\\":[\\n\\\"Deva\\\",[\\\"AS\\\"],\\\"पालि\\\"],\\\"pih\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"Norfuk \\\\/ Pitkern\\\"],\\\"pis\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"Solomon Aelan Pijin\\\"],\\\"piu\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"Pintupi-Luritja\\\"],\\\"pjt\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"Pitjantjatjara\\\"],\\\"pko\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Pökoot\\\"],\\\"pl\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"polski\\\"],\\\"plt\\\":[\\\"mg\\\"],\\\"pms\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Piemontèis\\\"],\\\"pnb\\\":[\\\"Arab\\\",[\\\"AS\\\",\\\"ME\\\"],\\\"پنجابی\\\"],\\\"pnt\\\":[\\\"Grek\\\",[\\\"EU\\\"],\\\"Ποντιακά\\\"],\\\"pov\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"guinensi\\\"],\\\"ppl\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Nawat\\\"],\\\"prg\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Prūsiskan\\\"],\\\"prs\\\":[\\\"Arab\\\",[\\\"AS\\\",\\\"ME\\\"],\\\"دری\\\"],\\\"ps\\\":[\\\"Arab\\\",[\\\"AS\\\",\\\"ME\\\"],\\\"پښتو\\\"],\\\"pt\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"AM\\\",\\\"AS\\\",\\\"PA\\\",\\\"AF\\\",\\\"WW\\\"],\\\"português\\\"],\\\"pt-br\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"português do Brasil\\\"],\\\"pwn\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"pinayuanan\\\"],\\\"pwo\\\":[\\\"Mymr\\\",[\\\"AS\\\"],\\\"ဖျိၩ့ၡိ\\\"],\\\"pzh\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Pazeh\\\"],\\\"qu\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Runa Simi\\\"],\\\"quc\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"K'iche'\\\"],\\\"qug\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Runa shimi\\\"],\\\"quy\\\":[\\\"qu\\\"],\\\"qwh\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"anqash qichwa\\\"],\\\"qxp\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Punu qhichwa\\\"],\\\"rag\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Lologooli\\\"],\\n\\\"raj\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"राजस्थानी\\\"],\\\"rap\\\":[\\\"Latn\\\",[\\\"PA\\\",\\\"AM\\\"],\\\"arero rapa nui\\\"],\\\"rcf\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Kreol Réyoné\\\"],\\\"rej\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Jang\\\"],\\\"rgn\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Rumagnôl\\\"],\\\"rhg\\\":[\\\"Rohg\\\",[\\\"AS\\\"],\\\"𐴌𐴟𐴇𐴥𐴝𐴚𐴒𐴙𐴝\\\"],\\\"rif\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Tarifit\\\"],\\\"rki\\\":[\\\"Mymr\\\",[\\\"AS\\\"],\\\"ရခိုင်\\\"],\\\"rm\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"rumantsch\\\"],\\\"rm-puter\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"puter\\\"],\\\"rm-rumgr\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"rumantsch grischun\\\"],\\\"rm-surmiran\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"surmiran\\\"],\\\"rm-sursilv\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"sursilvan\\\"],\\\"rm-sutsilv\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"sutsilvan\\\"],\\\"rm-vallader\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"vallader\\\"],\\\"rmc\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"romaňi čhib\\\"],\\\"rmf\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"kaalengo tšimb\\\"],\\\"rml-cyrl\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"романы\\\"],\\\"rmy\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Romani\\\"],\\\"rn\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"ikirundi\\\"],\\\"ro\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"română\\\"],\\\"roa-rup\\\":[\\\"rup\\\"],\\\"roa-tara\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"tarandíne\\\"],\\\"rsk\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"руски\\\"],\\\"rtm\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"Faeag Rotuma\\\"],\\\"ru\\\":[\\\"Cyrl\\\",[\\\"EU\\\",\\\"AS\\\",\\\"ME\\\"],\\n\\\"русский\\\"],\\\"rue\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"русиньскый\\\"],\\\"rup\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"armãneashti\\\"],\\\"ruq\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"Влахесте\\\"],\\\"ruq-cyrl\\\":[\\\"ruq\\\"],\\\"ruq-latn\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Vlăheşte\\\"],\\\"rut\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"мыхаӀбишды\\\"],\\\"rw\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Ikinyarwanda\\\"],\\\"rwr\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"मारवाड़ी\\\"],\\\"ryu\\\":[\\\"Jpan\\\",[\\\"AS\\\"],\\\"うちなーぐち\\\"],\\\"sa\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"संस्कृतम्\\\"],\\\"sah\\\":[\\\"Cyrl\\\",[\\\"EU\\\",\\\"AS\\\"],\\\"саха тыла\\\"],\\\"sas\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Sasak\\\"],\\\"sat\\\":[\\\"Olck\\\",[\\\"AS\\\"],\\\"ᱥᱟᱱᱛᱟᱲᱤ\\\"],\\\"saz\\\":[\\\"Saur\\\",[\\\"AS\\\"],\\\"ꢱꣃꢬꢵꢯ꣄ꢡ꣄ꢬꢵ\\\"],\\\"sc\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"sardu\\\"],\\\"scn\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"sicilianu\\\"],\\\"sco\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Scots\\\"],\\\"sd\\\":[\\\"Arab\\\",[\\\"AS\\\"],\\\"سنڌي\\\"],\\\"sdc\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Sassaresu\\\"],\\\"sdh\\\":[\\\"Arab\\\",[\\\"ME\\\"],\\\"کوردی خوارگ\\\"],\\\"se\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"davvisámegiella\\\"],\\\"se-fi\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"davvisámegiella (Suoma bealde)\\\"],\\\"se-no\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"davvisámegiella (Norgga bealde)\\\"],\\\"se-se\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\n\\\"davvisámegiella (Ruoŧa bealde)\\\"],\\\"sei\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Cmique Itom\\\"],\\\"ses\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Koyraboro Senni\\\"],\\\"sg\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Sängö\\\"],\\\"sgh\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"xuɣ̌nůni\\\"],\\\"sgs\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"žemaitėška\\\"],\\\"sh\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"srpskohrvatski \\\\/ српскохрватски\\\"],\\\"sh-cyrl\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"српскохрватски\\\"],\\\"sh-latn\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"srpskohrvatski\\\"],\\\"shi\\\":[\\\"shi-latn\\\"],\\\"shi-latn\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Taclḥit\\\"],\\\"shi-tfng\\\":[\\\"Tfng\\\",[\\\"AF\\\"],\\\"ⵜⴰⵛⵍⵃⵉⵜ\\\"],\\\"shn\\\":[\\\"Mymr\\\",[\\\"AS\\\"],\\\"တႆး\\\"],\\\"shy\\\":[\\\"shy-latn\\\"],\\\"shy-latn\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"tacawit\\\"],\\\"si\\\":[\\\"Sinh\\\",[\\\"AS\\\"],\\\"සිංහල\\\"],\\\"simple\\\":[\\\"en-simple\\\"],\\\"sjd\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"кӣллт са̄мь кӣлл\\\"],\\\"sje\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"bidumsámegiella\\\"],\\\"sjo\\\":[\\\"Mong\\\",[\\\"AS\\\"],\\\"ᠰᡞᠪᡝ ᡤᡞᠰᡠᠨ\\\"],\\\"sju\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"ubmejesámiengiälla\\\"],\\\"sk\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"slovenčina\\\"],\\\"skr\\\":[\\\"skr-arab\\\"],\\\"skr-arab\\\":[\\\"Arab\\\",[\\\"AS\\\"],\\\"سرائیکی\\\"],\\\"sl\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"slovenščina\\\"],\\\"sli\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\n\\\"Schläsch\\\"],\\\"slr\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Salırça\\\"],\\\"sly\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Bahasa Selayar\\\"],\\\"sm\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"Gagana Samoa\\\"],\\\"sma\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"åarjelsaemien\\\"],\\\"smj\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"julevsámegiella\\\"],\\\"smn\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"anarâškielâ\\\"],\\\"sms\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"nuõrttsääʹmǩiõll\\\"],\\\"sn\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"chiShona\\\"],\\\"so\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Soomaaliga\\\"],\\\"son\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"soŋay\\\"],\\\"sq\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"shqip\\\"],\\\"sr\\\":[\\\"sr-cyrl\\\"],\\\"sr-cyrl\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"српски\\\"],\\\"sr-ec\\\":[\\\"sr-cyrl\\\"],\\\"sr-el\\\":[\\\"sr-latn\\\"],\\\"sr-latn\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"srpski\\\"],\\\"srn\\\":[\\\"Latn\\\",[\\\"AM\\\",\\\"EU\\\"],\\\"Sranantongo\\\"],\\\"sro\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"sardu campidanesu\\\"],\\\"srq\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"mbia cheë\\\"],\\\"ss\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"SiSwati\\\"],\\\"ssy\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Saaho\\\"],\\\"st\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Sesotho\\\"],\\\"stq\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Seeltersk\\\"],\\\"sty\\\":[\\\"Cyrl\\\",[\\\"EU\\\",\\\"AS\\\"],\\\"себертатар\\\"],\\\"su\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Sunda\\\"],\\\"sv\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"svenska\\\"],\\\"sw\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Kiswahili\\\"],\\\"swb\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Shikomoro\\\"],\\\"swh\\\":[\\\"sw\\\"],\\\"sxr\\\":[\\\"Latn\\\",[\\\"AS\\\"\\n],\\\"Hla'alua\\\"],\\\"sxu\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Säggssch\\\"],\\\"syc\\\":[\\\"Syrc\\\",[\\\"ME\\\"],\\\"ܣܘܪܝܝܐ\\\"],\\\"syl\\\":[\\\"Sylo\\\",[\\\"AS\\\"],\\\"ꠍꠤꠟꠐꠤ\\\"],\\\"syl-beng\\\":[\\\"Beng\\\",[\\\"AS\\\"],\\\"সিলেটি\\\"],\\\"syl-sylo\\\":[\\\"syl\\\"],\\\"szl\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"ślůnski\\\"],\\\"szy\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Sakizaya\\\"],\\\"ta\\\":[\\\"Taml\\\",[\\\"AS\\\"],\\\"தமிழ்\\\"],\\\"tao\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Ciriciring No Tao\\\"],\\\"taq\\\":[\\\"taq-tfng\\\"],\\\"taq-latn\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"təmajəq\\\"],\\\"taq-tfng\\\":[\\\"Tfng\\\",[\\\"AF\\\"],\\\"ⵜⴰⵎⴰⵌⴰⵆ\\\"],\\\"tay\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Tayal\\\"],\\\"tcy\\\":[\\\"Knda\\\",[\\\"AS\\\"],\\\"ತುಳು\\\"],\\\"tdd\\\":[\\\"Tale\\\",[\\\"AS\\\"],\\\"ᥖᥭᥰ ᥖᥬᥲ ᥑᥨᥒᥰ\\\"],\\\"te\\\":[\\\"Telu\\\",[\\\"AS\\\"],\\\"తెలుగు\\\"],\\\"tet\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"tetun\\\"],\\\"tg\\\":[\\\"Cyrl\\\",[\\\"AS\\\"],\\\"тоҷикӣ\\\"],\\\"tg-cyrl\\\":[\\\"tg\\\"],\\\"tg-latn\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"tojikī\\\"],\\\"th\\\":[\\\"Thai\\\",[\\\"AS\\\"],\\\"ไทย\\\"],\\\"thq\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"काेचिला थारु\\\"],\\\"thr\\\":[\\\"Deva\\\",[\\\"AS\\\"],\\\"राना थारू\\\"],\\\"ti\\\":[\\\"Ethi\\\",[\\\"AF\\\"],\\\"ትግርኛ\\\"],\\\"tig\\\":[\\\"Ethi\\\",[\\\"AF\\\"],\\\"ትግሬ\\\"],\\\"tiv\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"tiv\\\"],\\\"tji\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\n\\\"bifzivsar\\\"],\\\"tk\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Türkmençe\\\"],\\\"tkr\\\":[\\\"Cyrl\\\",[\\\"AS\\\"],\\\"цӀаӀхна миз\\\"],\\\"tl\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Tagalog\\\"],\\\"tly\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"AS\\\",\\\"ME\\\"],\\\"tolışi\\\"],\\\"tly-cyrl\\\":[\\\"Cyrl\\\",[\\\"EU\\\",\\\"AS\\\",\\\"ME\\\"],\\\"толыши\\\"],\\\"tmr\\\":[\\\"Hebr\\\",[\\\"ME\\\",\\\"EU\\\",\\\"AM\\\"],\\\"ארמית בבלית\\\"],\\\"tn\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Setswana\\\"],\\\"to\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"lea faka-Tonga\\\"],\\\"toi\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"chitonga\\\"],\\\"tok\\\":[\\\"Latn\\\",[\\\"WW\\\"],\\\"toki pona\\\"],\\\"tokipona\\\":[\\\"tok\\\"],\\\"tpi\\\":[\\\"Latn\\\",[\\\"PA\\\",\\\"AS\\\"],\\\"Tok Pisin\\\"],\\\"tr\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"ME\\\"],\\\"Türkçe\\\"],\\\"trp\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Kokborok\\\"],\\\"tru\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Ṫuroyo\\\"],\\\"trv\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Seediq\\\"],\\\"trw\\\":[\\\"Arab\\\",[\\\"AS\\\"],\\\"توروالی\\\"],\\\"ts\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Xitsonga\\\"],\\\"tsd\\\":[\\\"Grek\\\",[\\\"EU\\\"],\\\"Τσακωνικά\\\"],\\\"tsg\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Sinūg\\\"],\\\"tsu\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"cou\\\"],\\\"tt\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"татарча\\\"],\\\"tt-cyrl\\\":[\\\"tt\\\"],\\\"tt-latn\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"tatarça\\\"],\\\"ttj\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Orutooro\\\"],\\\"ttt\\\":[\\\"Cyrl\\\",[\\\"AS\\\"],\\\"Tati\\\"],\\\"tum\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"chiTumbuka\\\"],\\\"tw\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Twi\\\"],\\\"twd\\\":[\\n\\\"Latn\\\",[\\\"EU\\\"],\\\"Tweants\\\"],\\\"ty\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"reo tahiti\\\"],\\\"tyv\\\":[\\\"Cyrl\\\",[\\\"AS\\\"],\\\"тыва дыл\\\"],\\\"tzl\\\":[\\\"Latn\\\",[\\\"WW\\\"],\\\"Talossan\\\"],\\\"tzm\\\":[\\\"Tfng\\\",[\\\"AF\\\"],\\\"ⵜⴰⵎⴰⵣⵉⵖⵜ\\\"],\\\"udm\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"удмурт\\\"],\\\"ug\\\":[\\\"ug-arab\\\"],\\\"ug-arab\\\":[\\\"Arab\\\",[\\\"AS\\\"],\\\"ئۇيغۇرچە\\\"],\\\"ug-cyrl\\\":[\\\"Cyrl\\\",[\\\"AS\\\"],\\\"уйғурчә\\\"],\\\"ug-latn\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"uyghurche\\\"],\\\"uk\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"українська\\\"],\\\"umb\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"umbundu\\\"],\\\"umu\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Huluníixsuwaakan\\\"],\\\"ur\\\":[\\\"Arab\\\",[\\\"AS\\\",\\\"ME\\\"],\\\"اردو\\\"],\\\"uz\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"oʻzbekcha\\\"],\\\"uz-cyrl\\\":[\\\"Cyrl\\\",[\\\"AS\\\"],\\\"ўзбекча\\\"],\\\"uz-latn\\\":[\\\"uz\\\"],\\\"uzn\\\":[\\\"uz\\\"],\\\"vai\\\":[\\\"Vaii\\\",[\\\"AF\\\"],\\\"ꕙꔤ\\\"],\\\"ve\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Tshivenda\\\"],\\\"vec\\\":[\\\"Latn\\\",[\\\"EU\\\",\\\"AM\\\"],\\\"vèneto\\\"],\\\"vep\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"vepsän kel’\\\"],\\\"vi\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Tiếng Việt\\\"],\\\"vls\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"West-Vlams\\\"],\\\"vmf\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Mainfränkisch\\\"],\\\"vmw\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"emakhuwa\\\"],\\\"vo\\\":[\\\"Latn\\\",[\\\"WW\\\"],\\\"Volapük\\\"],\\\"vot\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Vaďďa\\\"],\\\"vro\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"võro\\\"\\n],\\\"wa\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"walon\\\"],\\\"wal\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"wolaytta\\\"],\\\"war\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Winaray\\\"],\\\"wls\\\":[\\\"Latn\\\",[\\\"PA\\\"],\\\"Faka'uvea\\\"],\\\"wlx\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"waale\\\"],\\\"wo\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Wolof\\\"],\\\"wsg\\\":[\\\"Telu\\\",[\\\"AS\\\"],\\\"గోండి\\\"],\\\"wuu\\\":[\\\"Hani\\\",[\\\"AS\\\"],\\\"吴语\\\"],\\\"wuu-hans\\\":[\\\"Hans\\\",[\\\"AS\\\"],\\\"吴语（简体）\\\"],\\\"wuu-hant\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"吳語（正體）\\\"],\\\"xal\\\":[\\\"Cyrl\\\",[\\\"EU\\\"],\\\"хальмг\\\"],\\\"xh\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"isiXhosa\\\"],\\\"xmf\\\":[\\\"Geor\\\",[\\\"EU\\\"],\\\"მარგალური\\\"],\\\"xmm\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Manado\\\"],\\\"xnb\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Kanakanavu\\\"],\\\"xon\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"likpakpaanl\\\"],\\\"xsy\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"SaiSiyat\\\"],\\\"ydd\\\":[\\\"yi\\\"],\\\"yi\\\":[\\\"Hebr\\\",[\\\"ME\\\",\\\"EU\\\",\\\"AM\\\"],\\\"ייִדיש\\\"],\\\"yo\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"Yorùbá\\\"],\\\"yoi\\\":[\\\"Jpan\\\",[\\\"AS\\\"],\\\"与那国物言\\\"],\\\"yrk\\\":[\\\"Cyrl\\\",[\\\"AS\\\"],\\\"ненэцяʼ вада\\\"],\\\"yrl\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Nhẽẽgatú\\\"],\\\"yua\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Maaya T'aan\\\"],\\\"yue\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"粵語\\\"],\\\"yue-hans\\\":[\\\"Hans\\\",[\\\"AS\\\"],\\\"粵语（简体）\\\"],\\\"yue-hant\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"粵語（繁體）\\\"],\\n\\\"za\\\":[\\\"Latn\\\",[\\\"AS\\\"],\\\"Vahcuengh\\\"],\\\"zea\\\":[\\\"Latn\\\",[\\\"EU\\\"],\\\"Zeêuws\\\"],\\\"zgh\\\":[\\\"Tfng\\\",[\\\"AF\\\"],\\\"ⵜⴰⵎⴰⵣⵉⵖⵜ ⵜⴰⵏⴰⵡⴰⵢⵜ\\\"],\\\"zgh-latn\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"tamaziɣt tanawayt\\\"],\\\"zh\\\":[\\\"Hani\\\",[\\\"AS\\\",\\\"PA\\\",\\\"AM\\\",\\\"WW\\\"],\\\"中文\\\"],\\\"zh-cdo\\\":[\\\"cdo\\\"],\\\"zh-classical\\\":[\\\"lzh\\\"],\\\"zh-cn\\\":[\\\"Hans\\\",[\\\"AS\\\"],\\\"中文（中国大陆）\\\"],\\\"zh-hans\\\":[\\\"Hans\\\",[\\\"AS\\\",\\\"PA\\\",\\\"AM\\\",\\\"WW\\\"],\\\"中文（简体）\\\"],\\\"zh-hant\\\":[\\\"Hant\\\",[\\\"AS\\\",\\\"PA\\\",\\\"AM\\\",\\\"WW\\\"],\\\"中文（繁體）\\\"],\\\"zh-hk\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"中文（香港）\\\"],\\\"zh-min-nan\\\":[\\\"nan\\\"],\\\"zh-mo\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"中文（澳門）\\\"],\\\"zh-my\\\":[\\\"Hans\\\",[\\\"AS\\\"],\\\"中文（马来西亚）\\\"],\\\"zh-sg\\\":[\\\"Hans\\\",[\\\"AS\\\"],\\\"中文（新加坡）\\\"],\\\"zh-tw\\\":[\\\"Hant\\\",[\\\"AS\\\"],\\\"中文（臺灣）\\\"],\\\"zh-yue\\\":[\\\"yue\\\"],\\\"zmi\\\":[\\\"Latn\\\",[\\\"AS\\\",\\\"PA\\\"],\\\"Nismilan\\\"],\\\"zsm\\\":[\\\"ms\\\"],\\\"zu\\\":[\\\"Latn\\\",[\\\"AF\\\"],\\\"isiZulu\\\"],\\\"zun\\\":[\\\"Latn\\\",[\\\"AM\\\"],\\\"Shiwi'ma\\\"]},\\\"scriptgroups\\\":{\\\"Latin\\\":[\\\"Latn\\\",\\\"Goth\\\"],\\\"Greek\\\":[\\\"Grek\\\"],\\\"WestCaucasian\\\":[\\\"Armn\\\",\\\"Geor\\\"],\\\"Arabic\\\":[\\\"Arab\\\"],\\\"MiddleEastern\\\":[\\\"Hebr\\\",\\\"Syrc\\\"],\\\"African\\\":[\\\"Bamu\\\",\\\"Copt\\\",\\n\\\"Ethi\\\",\\\"Nkoo\\\",\\\"Tfng\\\",\\\"Vaii\\\"],\\\"SouthAsian\\\":[\\\"Beng\\\",\\\"Cakm\\\",\\\"Deva\\\",\\\"Gujr\\\",\\\"Guru\\\",\\\"Knda\\\",\\\"Mlym\\\",\\\"Mtei\\\",\\\"Olck\\\",\\\"Orya\\\",\\\"Rohg\\\",\\\"Saur\\\",\\\"Sinh\\\",\\\"Sylo\\\",\\\"Taml\\\",\\\"Telu\\\",\\\"Tibt\\\",\\\"Thaa\\\",\\\"Wara\\\"],\\\"Cyrillic\\\":[\\\"Cyrl\\\"],\\\"CJK\\\":[\\\"Hani\\\",\\\"Hans\\\",\\\"Hant\\\",\\\"Kore\\\",\\\"Jpan\\\",\\\"Yiii\\\"],\\\"SouthEastAsian\\\":[\\\"Bali\\\",\\\"Batk\\\",\\\"Bugi\\\",\\\"Cham\\\",\\\"Java\\\",\\\"Khmr\\\",\\\"Laoo\\\",\\\"Lana\\\",\\\"Mymr\\\",\\\"Thai\\\",\\\"Tale\\\"],\\\"Mongolian\\\":[\\\"Mong\\\"],\\\"SignWriting\\\":[\\\"Sgnw\\\"],\\\"NativeAmerican\\\":[\\\"Cher\\\",\\\"Cans\\\"],\\\"Special\\\":[\\\"Zyyy\\\"]},\\\"rtlscripts\\\":[\\\"Arab\\\",\\\"Hebr\\\",\\\"Syrc\\\",\\\"Nkoo\\\",\\\"Rohg\\\",\\\"Thaa\\\"],\\\"regiongroups\\\":{\\\"WW\\\":1,\\\"SP\\\":1,\\\"AM\\\":2,\\\"EU\\\":3,\\\"ME\\\":3,\\\"AF\\\":3,\\\"AS\\\":4,\\\"PA\\\":4},\\\"territories\\\":{\\\"AC\\\":[\\\"en\\\"],\\\"AD\\\":[\\\"ca\\\",\\\"es\\\",\\\"fr\\\"],\\\"AE\\\":[\\\"ar\\\",\\\"en\\\",\\\"ml\\\",\\\"ps\\\",\\\"fa\\\"],\\\"AF\\\":[\\\"fa\\\",\\\"ps\\\",\\\"uz\\\",\\\"tk\\\",\\\"bgn\\\",\\\"kaa\\\",\\\"ug-arab\\\",\\\"kk-arab\\\",\\\"kk-cyrl\\\"],\\\"AG\\\":[\\\"en\\\",\\\"pt\\\"],\\\"AI\\\":[\\\"en\\\"],\\\"AL\\\":[\\\"sq\\\",\\\"el\\\",\\\"mk\\\"],\\\"AM\\\":[\\\"hy\\\",\\\"ru\\\",\\\"ku-latn\\\",\\\"az\\\"],\\\"AO\\\":[\\\"pt\\\",\\\"umb\\\",\\\"kmb\\\",\\\"ln\\\"],\\\"AR\\\":[\\\"es\\\",\\\"en\\\",\\\"cy\\\",\\\"gn\\\"],\\\"AS\\\":[\\\"sm\\\",\\\"en\\\"],\\\"AT\\\":[\\\"de\\\",\\\"bar\\\",\\\"en\\\",\\\"fr\\\",\\\"it\\\",\\\"hr\\\",\\\"sl\\\",\\\"hu\\\"],\\\"AU\\\":[\\\"en\\\",\\\"zh-hant\\\",\\\"zh\\\",\\\"it\\\"],\\\"AW\\\":[\\\"nl\\\",\\\"pap\\\",\\\"en\\\"],\\\"AX\\\":[\\\"sv\\\"],\\\"AZ\\\":[\\n\\\"az\\\",\\\"az-cyrl\\\",\\\"tly\\\",\\\"ku-latn\\\",\\\"ttt\\\",\\\"tkr\\\"],\\\"BA\\\":[\\\"bs\\\",\\\"en\\\",\\\"hr\\\",\\\"sr-cyrl\\\",\\\"sr-latn\\\"],\\\"BB\\\":[\\\"en\\\"],\\\"BD\\\":[\\\"bn\\\",\\\"en\\\",\\\"syl\\\",\\\"rhg\\\",\\\"ccp\\\",\\\"my\\\",\\\"mni\\\"],\\\"BE\\\":[\\\"en\\\",\\\"nl\\\",\\\"fr\\\",\\\"de\\\",\\\"vls\\\",\\\"wa\\\"],\\\"BF\\\":[\\\"mos\\\",\\\"dyu\\\",\\\"fr\\\",\\\"ff\\\"],\\\"BG\\\":[\\\"bg\\\",\\\"en\\\",\\\"ru\\\",\\\"tr\\\",\\\"de\\\"],\\\"BH\\\":[\\\"ar\\\",\\\"ml\\\"],\\\"BI\\\":[\\\"rn\\\",\\\"fr\\\",\\\"sw\\\",\\\"en\\\"],\\\"BJ\\\":[\\\"fr\\\",\\\"fon\\\",\\\"yo\\\"],\\\"BL\\\":[\\\"fr\\\"],\\\"BM\\\":[\\\"en\\\"],\\\"BN\\\":[\\\"ms\\\",\\\"zh-hant\\\",\\\"zh\\\",\\\"ms-arab\\\",\\\"en\\\"],\\\"BO\\\":[\\\"es\\\",\\\"qu\\\",\\\"ay\\\",\\\"gn\\\",\\\"aro\\\"],\\\"BQ\\\":[\\\"pap\\\",\\\"nl\\\"],\\\"BR\\\":[\\\"pt\\\",\\\"en\\\",\\\"de\\\",\\\"hrx\\\",\\\"it\\\",\\\"vec\\\",\\\"ja\\\",\\\"es\\\",\\\"kgp\\\",\\\"ko\\\",\\\"yrl\\\"],\\\"BS\\\":[\\\"en\\\"],\\\"BT\\\":[\\\"dz\\\",\\\"ne\\\",\\\"en\\\"],\\\"BV\\\":[\\\"no\\\"],\\\"BW\\\":[\\\"en\\\",\\\"tn\\\",\\\"af\\\"],\\\"BY\\\":[\\\"ru\\\",\\\"be\\\"],\\\"BZ\\\":[\\\"en\\\",\\\"es\\\",\\\"bzj\\\"],\\\"CA\\\":[\\\"en\\\",\\\"fr\\\",\\\"es\\\",\\\"zh\\\",\\\"pa\\\",\\\"ar\\\",\\\"hi\\\",\\\"tl\\\",\\\"yue\\\",\\\"it\\\",\\\"de\\\",\\\"ur\\\",\\\"pt\\\",\\\"ru\\\",\\\"ta\\\",\\\"vi\\\",\\\"fa\\\",\\\"gu\\\",\\\"pl\\\",\\\"ko\\\",\\\"el\\\",\\\"uk\\\",\\\"bn\\\",\\\"ro\\\",\\\"nl\\\",\\\"ja\\\",\\\"sr-cyrl\\\",\\\"tr\\\",\\\"hr\\\",\\\"hu\\\",\\\"so\\\",\\\"ike-cans\\\",\\\"pdt\\\",\\\"moe\\\",\\\"mic\\\",\\\"atj\\\",\\\"cr\\\",\\\"war\\\",\\\"crg\\\",\\\"oka\\\"],\\\"CC\\\":[\\\"ms-arab\\\",\\\"ms\\\",\\\"en\\\"],\\\"CD\\\":[\\\"fr\\\",\\\"sw\\\",\\\"lua\\\",\\\"ln\\\",\\\"kg\\\",\\\"rw\\\"],\\\"CF\\\":[\\\"sg\\\",\\\"fr\\\",\\\"ln\\\"],\\\"CG\\\":[\\\"fr\\\",\\\"ln\\\"],\\\"CH\\\":[\\\"de\\\",\\\"gsw\\\",\\\"en\\\",\\\"fr\\\",\\\"it\\\",\\\"lmo\\\",\\\"pt\\\",\\\"rm\\\"],\\\"CI\\\":[\\\"fr\\\",\\\"bci\\\"],\\n\\\"CK\\\":[\\\"en\\\"],\\\"CL\\\":[\\\"es\\\",\\\"en\\\",\\\"arn\\\"],\\\"CM\\\":[\\\"fr\\\",\\\"en\\\",\\\"bum\\\",\\\"ff\\\",\\\"nnh\\\",\\\"bkm\\\",\\\"bas\\\",\\\"bax\\\",\\\"byv\\\",\\\"dua\\\",\\\"ar\\\",\\\"ksf\\\",\\\"ken\\\",\\\"agq\\\",\\\"ha-arab\\\",\\\"ha\\\"],\\\"CN\\\":[\\\"zh\\\",\\\"wuu\\\",\\\"yue\\\",\\\"yue-hans\\\",\\\"hsn\\\",\\\"hak\\\",\\\"nan\\\",\\\"gan\\\",\\\"ii\\\",\\\"ug-arab\\\",\\\"za\\\",\\\"mvf\\\",\\\"mn\\\",\\\"bo\\\",\\\"ko\\\",\\\"kk-arab\\\",\\\"kk-cyrl\\\",\\\"ky\\\",\\\"tdd\\\",\\\"mww-latn\\\",\\\"en\\\",\\\"ru\\\",\\\"vi\\\",\\\"uz-cyrl\\\",\\\"uz\\\",\\\"lzh\\\"],\\\"CO\\\":[\\\"es\\\",\\\"guc\\\",\\\"yrl\\\"],\\\"CQ\\\":[\\\"en\\\"],\\\"CR\\\":[\\\"es\\\"],\\\"CU\\\":[\\\"es\\\"],\\\"CV\\\":[\\\"kea\\\",\\\"pt\\\"],\\\"CW\\\":[\\\"pap\\\",\\\"nl\\\",\\\"es\\\"],\\\"CX\\\":[\\\"en\\\"],\\\"CY\\\":[\\\"el\\\",\\\"en\\\",\\\"tr\\\",\\\"fr\\\",\\\"hy\\\",\\\"ar\\\"],\\\"CZ\\\":[\\\"cs\\\",\\\"en\\\",\\\"sk\\\",\\\"de\\\",\\\"pl\\\"],\\\"DE\\\":[\\\"de\\\",\\\"en\\\",\\\"fr\\\",\\\"bar\\\",\\\"nds\\\",\\\"nl\\\",\\\"it\\\",\\\"es\\\",\\\"ru\\\",\\\"vmf\\\",\\\"tr\\\",\\\"gsw\\\",\\\"da\\\",\\\"hr\\\",\\\"ku-latn\\\",\\\"el\\\",\\\"ksh\\\",\\\"pl\\\",\\\"hsb\\\",\\\"frr\\\",\\\"dsb\\\",\\\"frs\\\",\\\"stq\\\",\\\"pfl\\\"],\\\"DG\\\":[\\\"en\\\"],\\\"DJ\\\":[\\\"fr\\\",\\\"aa\\\",\\\"so\\\",\\\"ar\\\"],\\\"DK\\\":[\\\"da\\\",\\\"en\\\",\\\"de\\\",\\\"sv\\\",\\\"fo\\\",\\\"kl\\\",\\\"jut\\\"],\\\"DM\\\":[\\\"en\\\"],\\\"DO\\\":[\\\"es\\\",\\\"en\\\"],\\\"DZ\\\":[\\\"arq\\\",\\\"ar\\\",\\\"fr\\\",\\\"mey\\\",\\\"kab\\\",\\\"en\\\"],\\\"EA\\\":[\\\"es\\\"],\\\"EC\\\":[\\\"es\\\",\\\"qu\\\",\\\"qug\\\"],\\\"EE\\\":[\\\"et\\\",\\\"ru\\\",\\\"en\\\",\\\"fi\\\",\\\"vro\\\",\\\"ie\\\"],\\\"EG\\\":[\\\"ar\\\",\\\"arz\\\",\\\"en\\\",\\\"cop\\\",\\\"el\\\"],\\\"EH\\\":[\\\"ar\\\",\\\"mey\\\"],\\\"ER\\\":[\\\"ti\\\",\\\"en\\\",\\\"tig\\\",\\\"ar\\\",\\\"aa\\\",\\\"ssy\\\",\\\"byn\\\"],\\\"ES\\\":[\\\"es\\\",\\\"en\\\",\\\"ca\\\",\\\"gl\\\",\\\"eu\\\",\\\"ast\\\",\\n\\\"ext\\\",\\\"an\\\",\\\"oc\\\"],\\\"ET\\\":[\\\"en\\\",\\\"am\\\",\\\"om\\\",\\\"so\\\",\\\"ti\\\",\\\"wal\\\",\\\"aa\\\",\\\"gez\\\"],\\\"FI\\\":[\\\"fi\\\",\\\"en\\\",\\\"sv\\\",\\\"de\\\",\\\"ru\\\",\\\"et\\\",\\\"rmf\\\",\\\"se\\\",\\\"smn\\\",\\\"sms\\\"],\\\"FJ\\\":[\\\"en\\\",\\\"hi\\\",\\\"hif\\\",\\\"fj\\\",\\\"rtm\\\"],\\\"FK\\\":[\\\"en\\\"],\\\"FM\\\":[\\\"en\\\"],\\\"FO\\\":[\\\"fo\\\"],\\\"FR\\\":[\\\"fr\\\",\\\"en\\\",\\\"es\\\",\\\"de\\\",\\\"oc\\\",\\\"it\\\",\\\"pt\\\",\\\"pcd\\\",\\\"gsw\\\",\\\"br\\\",\\\"co\\\",\\\"ca\\\",\\\"nl\\\",\\\"eu\\\",\\\"frp\\\",\\\"mww-latn\\\",\\\"ia\\\"],\\\"GA\\\":[\\\"fr\\\"],\\\"GB\\\":[\\\"en\\\",\\\"fr\\\",\\\"de\\\",\\\"es\\\",\\\"pl\\\",\\\"pa\\\",\\\"ur\\\",\\\"ta\\\",\\\"gu\\\",\\\"sco\\\",\\\"cy\\\",\\\"ro\\\",\\\"bn\\\",\\\"ar\\\",\\\"zh-hant\\\",\\\"zh\\\",\\\"it\\\",\\\"lt\\\",\\\"pt\\\",\\\"so\\\",\\\"tr\\\",\\\"ga\\\",\\\"gd\\\",\\\"kw\\\",\\\"pi\\\"],\\\"GD\\\":[\\\"en\\\"],\\\"GE\\\":[\\\"ka\\\",\\\"xmf\\\",\\\"ru\\\",\\\"hy\\\",\\\"ab\\\",\\\"os\\\",\\\"ku-latn\\\",\\\"lzz\\\"],\\\"GF\\\":[\\\"fr\\\",\\\"gcr\\\",\\\"zh-hant\\\",\\\"zh\\\"],\\\"GG\\\":[\\\"en\\\"],\\\"GH\\\":[\\\"en\\\",\\\"ee\\\",\\\"abr\\\",\\\"gur\\\",\\\"ada\\\",\\\"gaa\\\",\\\"nzi\\\",\\\"ha\\\",\\\"ff\\\"],\\\"GI\\\":[\\\"en\\\",\\\"es\\\"],\\\"GL\\\":[\\\"kl\\\",\\\"da\\\"],\\\"GM\\\":[\\\"en\\\",\\\"ff\\\"],\\\"GN\\\":[\\\"fr\\\",\\\"ff\\\",\\\"nqo\\\"],\\\"GP\\\":[\\\"fr\\\"],\\\"GQ\\\":[\\\"es\\\",\\\"fan\\\",\\\"fr\\\",\\\"pt\\\"],\\\"GR\\\":[\\\"el\\\",\\\"en\\\",\\\"fr\\\",\\\"de\\\",\\\"pnt\\\",\\\"mk\\\",\\\"tr\\\",\\\"bg\\\",\\\"sq\\\",\\\"tsd\\\",\\\"grc\\\"],\\\"GS\\\":[\\\"en\\\"],\\\"GT\\\":[\\\"es\\\",\\\"cak\\\",\\\"quc\\\",\\\"en\\\",\\\"jac\\\"],\\\"GU\\\":[\\\"en\\\",\\\"ch\\\"],\\\"GW\\\":[\\\"pt\\\",\\\"fr\\\",\\\"ff\\\"],\\\"GY\\\":[\\\"en\\\"],\\\"HK\\\":[\\\"zh-hant\\\",\\\"zh\\\",\\\"yue\\\",\\\"en\\\"],\\\"HN\\\":[\\\"es\\\",\\\"en\\\"],\\\"HR\\\":[\\\"hr\\\",\\\"en\\\",\\\"it\\\",\\\"vec\\\"],\\\"HT\\\":[\\\"ht\\\",\\\"fr\\\"],\\\"HU\\\":[\\\"hu\\\",\\n\\\"en\\\",\\\"de\\\",\\\"fr\\\",\\\"ro\\\",\\\"hr\\\",\\\"sk\\\",\\\"sl\\\"],\\\"IC\\\":[\\\"es\\\"],\\\"ID\\\":[\\\"id\\\",\\\"jv\\\",\\\"su\\\",\\\"mad\\\",\\\"ms\\\",\\\"min\\\",\\\"bew\\\",\\\"ban\\\",\\\"bug\\\",\\\"bjn\\\",\\\"ace\\\",\\\"ms-arab\\\",\\\"sas\\\",\\\"bbc-latn\\\",\\\"zh-hant\\\",\\\"zh\\\",\\\"mak\\\",\\\"ljp\\\",\\\"rej\\\",\\\"gor\\\",\\\"kge\\\",\\\"sly\\\",\\\"mwv\\\",\\\"ban-bali\\\"],\\\"IE\\\":[\\\"en\\\",\\\"ga\\\",\\\"fr\\\"],\\\"IL\\\":[\\\"he\\\",\\\"en\\\",\\\"ar\\\",\\\"apc\\\",\\\"ru\\\",\\\"ro\\\",\\\"yi\\\",\\\"pl\\\",\\\"lad-latn\\\",\\\"hu\\\",\\\"am\\\",\\\"ti\\\",\\\"ml\\\"],\\\"IM\\\":[\\\"en\\\",\\\"gv\\\"],\\\"IN\\\":[\\\"hi\\\",\\\"en\\\",\\\"bn\\\",\\\"te\\\",\\\"mr\\\",\\\"ta\\\",\\\"ur\\\",\\\"gu\\\",\\\"kn\\\",\\\"ml\\\",\\\"or\\\",\\\"pa\\\",\\\"bho\\\",\\\"awa\\\",\\\"as\\\",\\\"bgc\\\",\\\"mag\\\",\\\"mai\\\",\\\"hne\\\",\\\"ne\\\",\\\"sat\\\",\\\"ks\\\",\\\"knn\\\",\\\"gbm\\\",\\\"sd\\\",\\\"doi\\\",\\\"tcy\\\",\\\"brx\\\",\\\"mni\\\",\\\"raj\\\",\\\"hoc\\\",\\\"saz\\\",\\\"ccp\\\",\\\"bfq\\\",\\\"njo\\\",\\\"wsg\\\",\\\"bo\\\",\\\"bpy\\\",\\\"bft\\\",\\\"mrh\\\",\\\"sa\\\",\\\"dv\\\",\\\"dz\\\",\\\"pi\\\"],\\\"IO\\\":[\\\"en\\\"],\\\"IQ\\\":[\\\"ar\\\",\\\"en\\\",\\\"ckb\\\",\\\"ku-arab\\\",\\\"ku-latn\\\",\\\"azb\\\",\\\"az\\\",\\\"fa\\\",\\\"lrc\\\"],\\\"IR\\\":[\\\"fa\\\",\\\"azb\\\",\\\"az\\\",\\\"mzn\\\",\\\"glk\\\",\\\"sdh\\\",\\\"tk\\\",\\\"lrc\\\",\\\"ar\\\",\\\"bqi\\\",\\\"luz\\\",\\\"lki\\\",\\\"kaa\\\",\\\"ckb\\\",\\\"ku-arab\\\",\\\"ku-latn\\\",\\\"bgn\\\",\\\"hy\\\",\\\"ps\\\",\\\"ka\\\",\\\"gbz\\\",\\\"kk-arab\\\",\\\"kk-cyrl\\\"],\\\"IS\\\":[\\\"is\\\",\\\"da\\\"],\\\"IT\\\":[\\\"it\\\",\\\"en\\\",\\\"fr\\\",\\\"lmo\\\",\\\"sc\\\",\\\"de\\\",\\\"vec\\\",\\\"pms\\\",\\\"nap\\\",\\\"lij\\\",\\\"scn\\\",\\\"sl\\\",\\\"sdc\\\",\\\"fur\\\",\\\"egl\\\",\\\"lld\\\",\\\"ca\\\",\\\"el\\\",\\\"hr\\\",\\\"rgn\\\"],\\\"JE\\\":[\\\"en\\\"],\\\"JM\\\":[\\\"en\\\",\\\"jam\\\"],\\\"JO\\\":[\\\"ar\\\",\\\"apc\\\",\\\"en\\\",\\n\\\"ady\\\"],\\\"JP\\\":[\\\"ja\\\",\\\"ryu\\\",\\\"ko\\\"],\\\"KE\\\":[\\\"sw\\\",\\\"en\\\",\\\"ki\\\",\\\"luo\\\",\\\"kam\\\",\\\"so\\\",\\\"pko\\\",\\\"om\\\",\\\"ar\\\",\\\"pa\\\",\\\"gu\\\"],\\\"KG\\\":[\\\"ky\\\",\\\"ru\\\",\\\"kaa\\\"],\\\"KH\\\":[\\\"km\\\",\\\"cja-latn\\\"],\\\"KI\\\":[\\\"en\\\"],\\\"KM\\\":[\\\"ar\\\",\\\"fr\\\"],\\\"KN\\\":[\\\"en\\\"],\\\"KP\\\":[\\\"ko\\\"],\\\"KR\\\":[\\\"ko\\\"],\\\"KW\\\":[\\\"ar\\\"],\\\"KY\\\":[\\\"en\\\"],\\\"KZ\\\":[\\\"ru\\\",\\\"kk-cyrl\\\",\\\"en\\\",\\\"de\\\",\\\"ug-cyrl\\\",\\\"ug-arab\\\",\\\"kaa\\\"],\\\"LA\\\":[\\\"lo\\\",\\\"mww-latn\\\"],\\\"LB\\\":[\\\"apc\\\",\\\"ar\\\",\\\"en\\\",\\\"fr\\\",\\\"hy\\\",\\\"ku-arab\\\",\\\"ku-latn\\\"],\\\"LC\\\":[\\\"en\\\"],\\\"LI\\\":[\\\"de\\\",\\\"gsw\\\"],\\\"LK\\\":[\\\"si\\\",\\\"ta\\\",\\\"en\\\",\\\"pi\\\"],\\\"LR\\\":[\\\"en\\\",\\\"vai\\\",\\\"ff\\\"],\\\"LS\\\":[\\\"st\\\",\\\"en\\\",\\\"zu\\\",\\\"ss\\\",\\\"xh\\\"],\\\"LT\\\":[\\\"lt\\\",\\\"ru\\\",\\\"en\\\",\\\"de\\\",\\\"sgs\\\"],\\\"LU\\\":[\\\"fr\\\",\\\"lb\\\",\\\"de\\\",\\\"en\\\",\\\"pt\\\"],\\\"LV\\\":[\\\"lv\\\",\\\"en\\\",\\\"ru\\\",\\\"ltg\\\"],\\\"LY\\\":[\\\"ar\\\"],\\\"MA\\\":[\\\"ary\\\",\\\"ar\\\",\\\"fr\\\",\\\"zgh\\\",\\\"en\\\",\\\"tzm\\\",\\\"shi-latn\\\",\\\"rif\\\",\\\"mey\\\",\\\"es\\\"],\\\"MC\\\":[\\\"fr\\\"],\\\"MD\\\":[\\\"ro\\\",\\\"uk\\\",\\\"bg\\\",\\\"gag\\\",\\\"ru\\\"],\\\"ME\\\":[\\\"sr-latn\\\",\\\"sr-cyrl\\\",\\\"sq\\\"],\\\"MF\\\":[\\\"fr\\\"],\\\"MG\\\":[\\\"mg\\\",\\\"fr\\\",\\\"en\\\"],\\\"MH\\\":[\\\"en\\\",\\\"mh\\\"],\\\"MK\\\":[\\\"mk\\\",\\\"sq\\\",\\\"tr\\\"],\\\"ML\\\":[\\\"bm\\\",\\\"fr\\\",\\\"ses\\\",\\\"ar\\\"],\\\"MM\\\":[\\\"my\\\",\\\"shn\\\",\\\"kac\\\",\\\"rhg\\\",\\\"mnw\\\",\\\"mrh\\\",\\\"pi\\\"],\\\"MN\\\":[\\\"mn\\\",\\\"kk-arab\\\",\\\"kk-cyrl\\\",\\\"zh\\\",\\\"ru\\\",\\\"ug-cyrl\\\",\\\"ug-arab\\\"],\\\"MO\\\":[\\\"zh-hant\\\",\\\"zh\\\",\\\"yue\\\",\\\"en\\\",\\\"nan-hant\\\",\\\"nan\\\",\\\"tl\\\",\\\"pt\\\"],\\\"MP\\\":[\\n\\\"en\\\",\\\"ch\\\"],\\\"MQ\\\":[\\\"fr\\\"],\\\"MR\\\":[\\\"mey\\\",\\\"ar\\\",\\\"fr\\\",\\\"ff\\\",\\\"wo\\\"],\\\"MS\\\":[\\\"en\\\"],\\\"MT\\\":[\\\"mt\\\",\\\"en\\\",\\\"it\\\",\\\"fr\\\"],\\\"MU\\\":[\\\"mfe\\\",\\\"fr\\\",\\\"en\\\",\\\"bho\\\",\\\"ur\\\",\\\"ta\\\"],\\\"MV\\\":[\\\"dv\\\",\\\"en\\\"],\\\"MW\\\":[\\\"en\\\",\\\"ny\\\",\\\"tum\\\",\\\"zu\\\"],\\\"MX\\\":[\\\"es\\\",\\\"en\\\",\\\"yua\\\",\\\"vec\\\",\\\"sei\\\"],\\\"MY\\\":[\\\"ms\\\",\\\"en\\\",\\\"zh\\\",\\\"ta\\\",\\\"iba\\\",\\\"jv\\\",\\\"zmi\\\",\\\"dtp\\\",\\\"ml\\\",\\\"bug\\\",\\\"bjn\\\"],\\\"MZ\\\":[\\\"pt\\\",\\\"vmw\\\",\\\"ts\\\",\\\"ny\\\",\\\"sw\\\",\\\"zu\\\"],\\\"NA\\\":[\\\"af\\\",\\\"kj\\\",\\\"ng\\\",\\\"naq\\\",\\\"hz\\\",\\\"en\\\",\\\"de\\\",\\\"tn\\\"],\\\"NC\\\":[\\\"fr\\\"],\\\"NE\\\":[\\\"ha\\\",\\\"fr\\\",\\\"ar\\\",\\\"ff\\\"],\\\"NF\\\":[\\\"en\\\"],\\\"NG\\\":[\\\"en\\\",\\\"pcm\\\",\\\"ha\\\",\\\"ig\\\",\\\"yo\\\",\\\"ff\\\",\\\"tiv\\\",\\\"efi\\\",\\\"ibb\\\",\\\"ha-arab\\\",\\\"bin\\\",\\\"kaj\\\",\\\"kcg\\\",\\\"ar\\\",\\\"ann\\\"],\\\"NI\\\":[\\\"es\\\"],\\\"NL\\\":[\\\"nl\\\",\\\"en\\\",\\\"de\\\",\\\"fr\\\",\\\"nds\\\",\\\"li\\\",\\\"fy\\\",\\\"id\\\",\\\"zea\\\",\\\"rif\\\",\\\"tr\\\"],\\\"NO\\\":[\\\"nb\\\",\\\"no\\\",\\\"nn\\\",\\\"se\\\"],\\\"NP\\\":[\\\"ne\\\",\\\"mai\\\",\\\"bho\\\",\\\"new\\\",\\\"en\\\",\\\"dty\\\",\\\"awa\\\",\\\"thr\\\",\\\"thq\\\",\\\"hi\\\",\\\"bo\\\",\\\"bn\\\"],\\\"NR\\\":[\\\"en\\\",\\\"na\\\"],\\\"NU\\\":[\\\"en\\\",\\\"niu\\\"],\\\"NZ\\\":[\\\"en\\\",\\\"mi\\\"],\\\"OM\\\":[\\\"ar\\\",\\\"fa\\\"],\\\"PA\\\":[\\\"es\\\",\\\"en\\\",\\\"zh-hant\\\",\\\"zh\\\"],\\\"PE\\\":[\\\"es\\\",\\\"qu\\\",\\\"ay\\\"],\\\"PF\\\":[\\\"fr\\\",\\\"ty\\\",\\\"zh-hant\\\",\\\"zh\\\"],\\\"PG\\\":[\\\"tpi\\\",\\\"en\\\",\\\"ho\\\"],\\\"PH\\\":[\\\"en\\\",\\\"tl\\\",\\\"es\\\",\\\"ceb\\\",\\\"ilo\\\",\\\"hil\\\",\\\"war\\\",\\\"pam\\\",\\\"pag\\\",\\\"mdh\\\",\\\"tsg\\\",\\\"zh-hant\\\",\\\"zh\\\",\\\"cps\\\",\\\"krj\\\",\\\"bto\\\"],\\\"PK\\\":[\\\"ur\\\",\\\"pnb\\\",\\\"pa\\\",\\\"en\\\",\\n\\\"ps\\\",\\\"sd\\\",\\\"skr-arab\\\",\\\"hno\\\",\\\"brh\\\",\\\"fa\\\",\\\"bgn\\\",\\\"tg\\\",\\\"bft\\\",\\\"khw\\\",\\\"ks\\\",\\\"trw\\\"],\\\"PL\\\":[\\\"pl\\\",\\\"en\\\",\\\"de\\\",\\\"ru\\\",\\\"szl\\\",\\\"be\\\",\\\"uk\\\",\\\"csb\\\",\\\"sli\\\",\\\"lt\\\",\\\"prg\\\"],\\\"PM\\\":[\\\"fr\\\",\\\"en\\\"],\\\"PN\\\":[\\\"en\\\"],\\\"PR\\\":[\\\"es\\\",\\\"en\\\"],\\\"PS\\\":[\\\"ar\\\",\\\"apc\\\"],\\\"PT\\\":[\\\"pt\\\",\\\"en\\\",\\\"fr\\\",\\\"es\\\",\\\"gl\\\"],\\\"PW\\\":[\\\"en\\\"],\\\"PY\\\":[\\\"gn\\\",\\\"es\\\",\\\"de\\\"],\\\"QA\\\":[\\\"ar\\\",\\\"fa\\\",\\\"ml\\\"],\\\"RE\\\":[\\\"fr\\\",\\\"rcf\\\",\\\"ta\\\"],\\\"RO\\\":[\\\"ro\\\",\\\"en\\\",\\\"fr\\\",\\\"es\\\",\\\"hu\\\",\\\"de\\\",\\\"tr\\\",\\\"sr-latn\\\",\\\"sr-cyrl\\\",\\\"bg\\\",\\\"el\\\",\\\"pl\\\"],\\\"RS\\\":[\\\"sr-cyrl\\\",\\\"sr-latn\\\",\\\"sq\\\",\\\"hu\\\",\\\"ro\\\",\\\"hr\\\",\\\"sk\\\",\\\"uk\\\"],\\\"RU\\\":[\\\"ru\\\",\\\"en\\\",\\\"tt\\\",\\\"cv\\\",\\\"ce\\\",\\\"hy\\\",\\\"ba\\\",\\\"de\\\",\\\"av\\\",\\\"uk\\\",\\\"kbd\\\",\\\"myv\\\",\\\"kum\\\",\\\"sah\\\",\\\"dar\\\",\\\"os\\\",\\\"inh\\\",\\\"az-cyrl\\\",\\\"az\\\",\\\"lez\\\",\\\"mdf\\\",\\\"kk-cyrl\\\",\\\"krc\\\",\\\"mhr\\\",\\\"tyv\\\",\\\"udm\\\",\\\"uz\\\",\\\"tg\\\",\\\"kv\\\",\\\"ady\\\",\\\"xal\\\",\\\"lbe\\\",\\\"ka\\\",\\\"alt\\\",\\\"be\\\",\\\"pnt\\\",\\\"koi\\\",\\\"mrj\\\",\\\"fi\\\",\\\"krl\\\",\\\"sr-cyrl\\\",\\\"mn\\\",\\\"vep\\\",\\\"cu\\\",\\\"kaa\\\",\\\"izh\\\",\\\"vot\\\"],\\\"RW\\\":[\\\"rw\\\",\\\"en\\\",\\\"fr\\\"],\\\"SA\\\":[\\\"ar\\\",\\\"ars\\\"],\\\"SB\\\":[\\\"en\\\",\\\"pis\\\"],\\\"SC\\\":[\\\"fr\\\",\\\"en\\\"],\\\"SD\\\":[\\\"ar\\\",\\\"en\\\",\\\"fvr\\\",\\\"ha-arab\\\",\\\"ha\\\"],\\\"SE\\\":[\\\"sv\\\",\\\"en\\\",\\\"fi\\\",\\\"fit\\\",\\\"se\\\",\\\"yi\\\",\\\"smj\\\",\\\"sma\\\",\\\"ia\\\"],\\\"SG\\\":[\\\"en\\\",\\\"zh\\\",\\\"ms\\\",\\\"ta\\\",\\\"ml\\\",\\\"pa\\\"],\\\"SH\\\":[\\\"en\\\"],\\\"SI\\\":[\\\"sl\\\",\\\"hr\\\",\\\"en\\\",\\\"de\\\",\\\"vec\\\",\\\"hu\\\",\\\"it\\\"],\\\"SJ\\\":[\\\"nb\\\",\\n\\\"ru\\\"],\\\"SK\\\":[\\\"sk\\\",\\\"cs\\\",\\\"en\\\",\\\"de\\\",\\\"hu\\\",\\\"uk\\\",\\\"pl\\\"],\\\"SL\\\":[\\\"kri\\\",\\\"en\\\",\\\"ff\\\"],\\\"SM\\\":[\\\"it\\\",\\\"eo\\\"],\\\"SN\\\":[\\\"wo\\\",\\\"fr\\\",\\\"ff\\\",\\\"mey\\\"],\\\"SO\\\":[\\\"so\\\",\\\"ar\\\",\\\"sw\\\",\\\"om\\\"],\\\"SR\\\":[\\\"nl\\\",\\\"srn\\\",\\\"zh-hant\\\",\\\"zh\\\"],\\\"SS\\\":[\\\"ar\\\",\\\"en\\\",\\\"nus\\\"],\\\"ST\\\":[\\\"pt\\\",\\\"fr\\\"],\\\"SV\\\":[\\\"es\\\",\\\"ppl\\\"],\\\"SX\\\":[\\\"en\\\",\\\"es\\\",\\\"nl\\\"],\\\"SY\\\":[\\\"apc\\\",\\\"ar\\\",\\\"ku-latn\\\",\\\"fr\\\",\\\"hy\\\"],\\\"SZ\\\":[\\\"en\\\",\\\"ss\\\",\\\"zu\\\",\\\"ts\\\"],\\\"TA\\\":[\\\"en\\\"],\\\"TC\\\":[\\\"en\\\"],\\\"TD\\\":[\\\"ar\\\",\\\"fr\\\"],\\\"TF\\\":[\\\"fr\\\"],\\\"TG\\\":[\\\"fr\\\",\\\"ee\\\"],\\\"TH\\\":[\\\"th\\\",\\\"en\\\",\\\"nod\\\",\\\"mfa\\\",\\\"zh-hant\\\",\\\"zh\\\",\\\"mnw\\\",\\\"shn\\\",\\\"mww-latn\\\",\\\"pi\\\"],\\\"TJ\\\":[\\\"tg\\\",\\\"ru\\\",\\\"fa\\\",\\\"ar\\\"],\\\"TK\\\":[\\\"en\\\",\\\"sm\\\"],\\\"TL\\\":[\\\"pt\\\",\\\"tet\\\"],\\\"TM\\\":[\\\"tk\\\",\\\"ru\\\",\\\"uz\\\",\\\"ku-latn\\\",\\\"kaa\\\"],\\\"TN\\\":[\\\"aeb\\\",\\\"ar\\\",\\\"fr\\\"],\\\"TO\\\":[\\\"to\\\",\\\"en\\\"],\\\"TR\\\":[\\\"tr\\\",\\\"en\\\",\\\"ku-latn\\\",\\\"apc\\\",\\\"kbd\\\",\\\"az\\\",\\\"azb\\\",\\\"ar\\\",\\\"bg\\\",\\\"ady\\\",\\\"kiu\\\",\\\"kaa\\\",\\\"hy\\\",\\\"ka\\\",\\\"sr-latn\\\",\\\"sr-cyrl\\\",\\\"lzz\\\",\\\"sq\\\",\\\"pnt\\\",\\\"ab\\\",\\\"el\\\",\\\"tru\\\",\\\"uz\\\",\\\"ky\\\",\\\"kk-cyrl\\\"],\\\"TT\\\":[\\\"en\\\",\\\"es\\\"],\\\"TV\\\":[\\\"en\\\"],\\\"TW\\\":[\\\"zh-hant\\\",\\\"zh\\\",\\\"nan-hant\\\",\\\"nan\\\",\\\"hak-hant\\\",\\\"hak\\\",\\\"trv\\\"],\\\"TZ\\\":[\\\"sw\\\",\\\"en\\\",\\\"lag\\\"],\\\"UA\\\":[\\\"uk\\\",\\\"ru\\\",\\\"pl\\\",\\\"yi\\\",\\\"rue\\\",\\\"be\\\",\\\"crh\\\",\\\"ro\\\",\\\"bg\\\",\\\"tr\\\",\\\"hu\\\",\\\"el\\\"],\\\"UG\\\":[\\\"sw\\\",\\\"lg\\\",\\\"nyn\\\",\\\"en\\\",\\\"laj\\\",\\\"ach\\\",\\\"rw\\\",\\\"ttj\\\",\\n\\\"hi\\\"],\\\"UM\\\":[\\\"en\\\"],\\\"US\\\":[\\\"en\\\",\\\"es\\\",\\\"zh-hant\\\",\\\"zh\\\",\\\"fr\\\",\\\"de\\\",\\\"tl\\\",\\\"it\\\",\\\"vi\\\",\\\"ko\\\",\\\"ru\\\",\\\"mww-latn\\\",\\\"nv\\\",\\\"yi\\\",\\\"pdc\\\",\\\"haw\\\",\\\"frc\\\",\\\"chr\\\",\\\"esu\\\",\\\"cho\\\",\\\"lkt\\\",\\\"ik\\\",\\\"mus\\\",\\\"oka\\\",\\\"io\\\",\\\"jbo\\\"],\\\"UY\\\":[\\\"es\\\"],\\\"UZ\\\":[\\\"uz\\\",\\\"uz-cyrl\\\",\\\"ru\\\",\\\"kaa\\\",\\\"tr\\\"],\\\"VA\\\":[\\\"it\\\",\\\"la\\\"],\\\"VC\\\":[\\\"en\\\"],\\\"VE\\\":[\\\"es\\\",\\\"yrl\\\"],\\\"VG\\\":[\\\"en\\\"],\\\"VI\\\":[\\\"en\\\"],\\\"VN\\\":[\\\"vi\\\",\\\"mww-latn\\\",\\\"zh-hant\\\",\\\"zh\\\",\\\"cjm-cham\\\"],\\\"VU\\\":[\\\"bi\\\",\\\"en\\\",\\\"fr\\\"],\\\"WF\\\":[\\\"fr\\\",\\\"wls\\\"],\\\"WS\\\":[\\\"sm\\\",\\\"en\\\"],\\\"XK\\\":[\\\"sq\\\",\\\"aln\\\",\\\"sr-cyrl\\\",\\\"sr-latn\\\"],\\\"YE\\\":[\\\"ar\\\",\\\"en\\\"],\\\"YT\\\":[\\\"swb\\\",\\\"fr\\\",\\\"sw\\\"],\\\"ZA\\\":[\\\"en\\\",\\\"zu\\\",\\\"xh\\\",\\\"af\\\",\\\"nso\\\",\\\"tn\\\",\\\"st\\\",\\\"ts\\\",\\\"ss\\\",\\\"ve\\\",\\\"hi\\\",\\\"nr\\\",\\\"sw\\\"],\\\"ZM\\\":[\\\"bem\\\",\\\"ny\\\",\\\"en\\\",\\\"toi\\\",\\\"loz\\\",\\\"tum\\\",\\\"lue\\\"],\\\"ZW\\\":[\\\"sn\\\",\\\"en\\\",\\\"nd\\\",\\\"kck\\\",\\\"ny\\\",\\\"ve\\\",\\\"tn\\\"]}}}(jQuery));},{}]},{},[1]);\\n(function($){'use strict';$.uls.data.isRedirect=function(language){return($.uls.data.languages[language]!==undefined&&$.uls.data.languages[language].length===1)?$.uls.data.languages[language][0]:false;};$.uls.data.getScript=function(language){var target=$.uls.data.isRedirect(language);if(target){return $.uls.data.getScript(target);}if(!$.uls.data.languages[language]){return'Zyyy';}return $.uls.data.languages[language][0];};$.uls.data.getRegions=function(language){var target=$.uls.data.isRedirect(language);if(target){return $.uls.data.getRegions(target);}return($.uls.data.languages[language]&&$.uls.data.languages[language][1])||'UNKNOWN';};$.uls.data.getAutonym=function(language){var target=$.uls.data.isRedirect(language);if(target){return $.uls.data.getAutonym(target);}return($.uls.data.languages[language]&&$.uls.data.languages[language][2])||language;};$.uls.data.getAutonyms=function(){var language,autonymsByCode={};for(language in $.uls.data.languages){if($.uls.data.isRedirect(language)){\\ncontinue;}autonymsByCode[language]=$.uls.data.getAutonym(language);}return autonymsByCode;};$.uls.data.getLanguagesInScript=function(script){return $.uls.data.getLanguagesInScripts([script]);};$.uls.data.getLanguagesInScripts=function(scripts){var language,i,languagesInScripts=[];for(language in $.uls.data.languages){if($.uls.data.isRedirect(language)){continue;}for(i=0;i<scripts.length;i++){if(scripts[i]===$.uls.data.getScript(language)){languagesInScripts.push(language);break;}}}return languagesInScripts;};$.uls.data.getLanguagesByScriptGroupInRegion=function(region){return $.uls.data.getLanguagesByScriptGroupInRegions([region]);};$.uls.data.getLanguagesByScriptGroup=function(languages){var languagesByScriptGroup={},language,languageIndex,resolvedRedirect,langScriptGroup;for(languageIndex=0;languageIndex<languages.length;languageIndex++){language=languages[languageIndex];resolvedRedirect=$.uls.data.isRedirect(language)||language;langScriptGroup=$.uls.data.getScriptGroupOfLanguage(resolvedRedirect);\\nif(!languagesByScriptGroup[langScriptGroup]){languagesByScriptGroup[langScriptGroup]=[];}languagesByScriptGroup[langScriptGroup].push(language);}return languagesByScriptGroup;};$.uls.data.getLanguagesByScriptGroupInRegions=function(regions){var language,i,scriptGroup,languagesByScriptGroupInRegions={};for(language in $.uls.data.languages){if($.uls.data.isRedirect(language)){continue;}for(i=0;i<regions.length;i++){if($.uls.data.getRegions(language).indexOf(regions[i])!==-1){scriptGroup=$.uls.data.getScriptGroupOfLanguage(language);if(languagesByScriptGroupInRegions[scriptGroup]===undefined){languagesByScriptGroupInRegions[scriptGroup]=[];}languagesByScriptGroupInRegions[scriptGroup].push(language);break;}}}return languagesByScriptGroupInRegions;};$.uls.data.getGroupOfScript=function(script){var scriptGroup;for(scriptGroup in $.uls.data.scriptgroups){if($.uls.data.scriptgroups[scriptGroup].indexOf(script)!==-1){return scriptGroup;}}return'Other';};$.uls.data.getScriptGroupOfLanguage=function(language){\\nreturn $.uls.data.getGroupOfScript($.uls.data.getScript(language));};$.uls.data.sortByScriptGroup=function(languages){var groupedLanguages,scriptGroups,i,allLanguages=[];groupedLanguages=$.uls.data.getLanguagesByScriptGroup(languages);scriptGroups=Object.keys(groupedLanguages).sort();for(i=0;i<scriptGroups.length;i++){allLanguages=allLanguages.concat(groupedLanguages[scriptGroups[i]]);}return allLanguages;};$.uls.data.sortByAutonym=function(a,b){var autonymA=$.uls.data.getAutonym(a)||a,autonymB=$.uls.data.getAutonym(b)||b;return(autonymA.toLowerCase()<autonymB.toLowerCase())?-1:1;};$.uls.data.isRtl=function(language){return $.uls.data.rtlscripts.indexOf($.uls.data.getScript(language))!==-1;};$.uls.data.getDir=function(language){return $.uls.data.isRtl(language)?'rtl':'ltr';};$.uls.data.getLanguagesInTerritory=function(territory){return $.uls.data.territories[territory]||[];};$.uls.data.addLanguage=function(code,options){if(options.target){$.uls.data.languages[code]=[options.target];}else{\\n$.uls.data.languages[code]=[options.script,options.regions,options.autonym];}};$.uls.data.deleteLanguage=function(code){if($.uls.data.languages[code]){delete $.uls.data.languages[code];return true;}return false;};}(jQuery));\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=jquery.uls.data&skin=vector-2022&version=1ey9x\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=jquery.uls.data&skin=vector-2022&sourcemap=1&version=1ey9x\",\"site@h79it\":\"mw.loader.impl(function(){return[\\\"site@h79it\\\",\\\"\\\"];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=site&skin=vector-2022&version=1qav6\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=site&skin=vector-2022&sourcemap=1&version=1qav6\",\"mediawiki.storage@1utqp\":\"mw.loader.impl(function(){return[\\\"mediawiki.storage@1utqp\\\",{\\\"main\\\":\\\"resources/src/mediawiki.storage/index.js\\\",\\\"files\\\":{\\\"resources/src/mediawiki.storage/index.js\\\":function(require,module,exports){'use strict';const localStorage=(function(){try{return window.localStorage;}catch(e){}}()),sessionStorage=(function(){try{return window.sessionStorage;}catch(e){}}());const SafeStorage=require('./SafeStorage.js');mw.storage=new SafeStorage(localStorage);mw.storage.session=new SafeStorage(sessionStorage);module.exports={local:mw.storage,session:mw.storage.session};\\n},\\\"resources/src/mediawiki.storage/SafeStorage.js\\\":function(require,module,exports){'use strict';const EXPIRY_PREFIX='_EXPIRY_';function SafeStorage(store){this.store=store;if(!window.QUnit){setTimeout(()=>{this.clearExpired();},2000);}}SafeStorage.prototype.get=function(key){if(this.isExpired(key)){return null;}try{return this.store.getItem(key);}catch(e){}return false;};SafeStorage.prototype.set=function(key,value,expiry){if(key.startsWith(EXPIRY_PREFIX)){throw new Error('Key can\\\\'t have a prefix of '+EXPIRY_PREFIX);}if(this.setExpires(key,expiry)===false){return false;}try{this.store.setItem(key,value);return true;}catch(e){}return false;};SafeStorage.prototype.remove=function(key){try{this.store.removeItem(key);this.setExpires(key);return true;}catch(e){}return false;};SafeStorage.prototype.getObject=function(key){const json=this.get(key);if(json===false){return false;}try{return JSON.parse(json);}catch(e){}return null;};SafeStorage.prototype.setObject=function(key,value,expiry){let json;try{json=JSON.stringify(value);return this.set(key,json,expiry);}catch(e){}\\nreturn false;};SafeStorage.prototype.setExpires=function(key,expiry){if(expiry){try{this.store.setItem(EXPIRY_PREFIX+key,Math.floor(Date.now()/1000)+expiry);return true;}catch(e){}}else{try{this.store.removeItem(EXPIRY_PREFIX+key);return true;}catch(e){}}return false;};const MIN_WORK_TIME=3;SafeStorage.prototype.clearExpired=function(){return this.getExpiryKeys().then((keys)=>$.Deferred((d)=>{const iterate=(deadline)=>{while(keys[0]!==undefined&&deadline.timeRemaining()>MIN_WORK_TIME){const key=keys.shift();if(this.isExpired(key)){this.remove(key);}}if(keys[0]!==undefined){mw.requestIdleCallback(iterate);}else{return d.resolve();}};mw.requestIdleCallback(iterate);}));};SafeStorage.prototype.getExpiryKeys=function(){const store=this.store;return $.Deferred((d)=>{mw.requestIdleCallback((deadline)=>{const prefixLength=EXPIRY_PREFIX.length;const keys=[];let length=0;try{length=store.length;}catch(e){}for(let i=0;(i<length&&deadline.timeRemaining()>MIN_WORK_TIME);i++){let key=null;try{key=store.key(i);\\n}catch(e){}if(key!==null&&key.startsWith(EXPIRY_PREFIX)){keys.push(key.slice(prefixLength));}}d.resolve(keys);});}).promise();};SafeStorage.prototype.isExpired=function(key){let expiry;try{expiry=this.store.getItem(EXPIRY_PREFIX+key);}catch(e){return false;}return!!expiry&&expiry<Math.floor(Date.now()/1000);};module.exports=SafeStorage;\\n}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.storage&skin=vector-2022&version=uhj3m\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.storage&skin=vector-2022&sourcemap=1&version=uhj3m\",\"mediawiki.Title@57gg0\":\"mw.loader.impl(function(){return[\\\"mediawiki.Title@57gg0\\\",{\\\"main\\\":\\\"Title.js\\\",\\\"files\\\":{\\\"Title.js\\\":function(require,module,exports){let toUpperMap;const mwString=require('mediawiki.String'),namespaceIds=mw.config.get('wgNamespaceIds'),NS_MAIN=namespaceIds[''],NS_TALK=namespaceIds.talk,NS_SPECIAL=namespaceIds.special,NS_MEDIA=namespaceIds.media,NS_FILE=namespaceIds.file,FILENAME_MAX_BYTES=240,TITLE_MAX_BYTES=255,getNsIdByName=function(ns){if(typeof ns!=='string'){return false;}ns=ns.toLowerCase();if(!Object.hasOwnProperty.call(mw.config.get('wgNamespaceIds'),ns)){return false;}return mw.config.get('wgNamespaceIds')[ns];},isKnownNamespace=function(namespace){return namespace===NS_MAIN||Object.hasOwnProperty.call(mw.config.get('wgFormattedNamespaces'),namespace);},getNamespacePrefix=function(namespace){return namespace===NS_MAIN?'':(mw.config.get('wgFormattedNamespaces')[namespace].replace(/ /g,'_')+':');},rUnderscoreTrim=/^_+|_+$/g,rSplit=/^(.+?)_*:_*(.*)$/,rInvalid=new RegExp('[^'+mw.config.get('wgLegalTitleChars')+']'+'|%[\\\\\\\\dA-Fa-f]{2}'+'|&[\\\\\\\\dA-Za-z\\\\u0080-\\\\uFFFF]+;'),rWhitespace=/[ _\\\\u00A0\\\\u1680\\\\u180E\\\\u2000-\\\\u200A\\\\u2028\\\\u2029\\\\u202F\\\\u205F\\\\u3000]+/g,\\nrUnicodeBidi=/[\\\\u200E\\\\u200F\\\\u202A-\\\\u202E]+/g,sanitationRules=[{pattern:/~{3}/g,replace:'',generalRule:true},{pattern:/[\\\\x00-\\\\x1f\\\\x7f]/g,replace:'',generalRule:true},{pattern:/%([\\\\dA-Fa-f]{2})/g,replace:'% $1',generalRule:true},{pattern:/&(([\\\\dA-Za-z\\\\x80-\\\\xff]+|#\\\\d+|#x[\\\\dA-Fa-f]+);)/g,replace:'& $1',generalRule:true},{pattern:new RegExp('['+mw.config.get('wgIllegalFileChars','')+']','g'),replace:'-',fileRule:true},{pattern:/[}\\\\]>]/g,replace:')',generalRule:true},{pattern:/[{[<]/g,replace:'(',generalRule:true},{pattern:new RegExp(rInvalid.source,'g'),replace:'-',generalRule:true},{pattern:/^(\\\\.|\\\\.\\\\.|\\\\.\\\\/.*|\\\\.\\\\.\\\\/.*|.*\\\\/\\\\.\\\\/.*|.*\\\\/\\\\.\\\\.\\\\/.*|.*\\\\/\\\\.|.*\\\\/\\\\.\\\\.)$/g,replace:'',generalRule:true}],parse=function(title,defaultNamespace){let namespace=defaultNamespace===undefined?NS_MAIN:defaultNamespace;title=title.replace(rUnicodeBidi,'').replace(rWhitespace,'_').replace(rUnderscoreTrim,'');if(title.includes('\\\\uFFFD')){return false;}if(title!==''&&title[0]===':'){namespace=NS_MAIN;title=title.slice(1)\\n.replace(rUnderscoreTrim,'');}if(title===''){return false;}let m=title.match(rSplit);if(m){const id=getNsIdByName(m[1]);if(id!==false){namespace=id;title=m[2];if(namespace===NS_TALK&&(m=title.match(rSplit))){if(getNsIdByName(m[1])!==false){return false;}}}}const i=title.indexOf('#');let fragment;if(i===-1){fragment=null;}else{fragment=title.slice(i+1).replace(/_/g,' ');title=title.slice(0,i).replace(rUnderscoreTrim,'');}if(rInvalid.test(title)){return false;}if(title.includes('.')&&(title==='.'||title==='..'||title.startsWith('./')||title.startsWith('../')||title.includes('/./')||title.includes('/../')||title.endsWith('/.')||title.endsWith('/..'))){return false;}if(title.includes('~~~')){return false;}if(namespace!==NS_SPECIAL&&mwString.byteLength(title)>TITLE_MAX_BYTES){return false;}if(title===''&&namespace!==NS_MAIN){return false;}if(title[0]===':'){return false;}return{namespace:namespace,title:title,fragment:fragment};},text=function(s){return s.replace(/_/g,' ');},sanitize=function(s,filter){\\nconst rules=sanitationRules;for(let i=0,ruleLength=rules.length;i<ruleLength;++i){const rule=rules[i];for(let m=0,filterLength=filter.length;m<filterLength;++m){if(rule[filter[m]]){s=s.replace(rule.pattern,rule.replace);}}}return s;},trimToByteLength=function(s,length){return mwString.trimByteLength('',s,length).newVal;},trimFileNameToByteLength=function(name,extension){return trimToByteLength(name,FILENAME_MAX_BYTES-extension.length-1)+'.'+extension;};function Title(title,namespace){const parsed=parse(title,namespace);if(!parsed){throw new Error('Unable to parse title');}this.namespace=parsed.namespace;this.title=parsed.title;this.fragment=parsed.fragment;}Title.newFromText=function(title,namespace){const parsed=parse(title,namespace);if(!parsed){return null;}const t=Object.create(Title.prototype);t.namespace=parsed.namespace;t.title=parsed.title;t.fragment=parsed.fragment;return t;};Title.makeTitle=function(namespace,title){if(!isKnownNamespace(namespace)){return null;}else{return mw.Title.newFromText(getNamespacePrefix(namespace)+title);\\n}};Title.newFromUserInput=function(title,defaultNamespace,options){let namespace=parseInt(defaultNamespace)||NS_MAIN;options=Object.assign({forUploading:true},options);title=title.replace(/\\\\s/g,' ').trim();if(title!==''&&title[0]===':'){namespace=NS_MAIN;title=title.slice(1).replace(rUnderscoreTrim,'');}const m=title.match(rSplit);if(m){const id=getNsIdByName(m[1]);if(id!==false){namespace=id;title=m[2];}}if(namespace===NS_MEDIA||(options.forUploading&&(namespace===NS_FILE))){title=sanitize(title,['generalRule','fileRule']);const lastDot=title.lastIndexOf('.');if(lastDot===-1||lastDot>=title.length-1){return null;}const ext=title.slice(lastDot+1);title=title.slice(0,lastDot).trim();title=trimFileNameToByteLength(title,ext);}else{title=sanitize(title,['generalRule']);if(namespace!==NS_SPECIAL){title=trimToByteLength(title,TITLE_MAX_BYTES);}}title=title.replace(/^:+/,'');return Title.newFromText(title,namespace);};Title.newFromFileName=function(uncleanName){return Title.newFromUserInput('File:'+uncleanName);\\n};Title.newFromImg=function(img){const src=img.jquery?img[0].src:img.src,data=mw.util.parseImageUrl(src);return data?mw.Title.newFromText('File:'+data.name):null;};Title.isTalkNamespace=function(namespaceId){return namespaceId>NS_MAIN&&namespaceId%2===1;};Title.wantSignaturesNamespace=function(namespaceId){return Title.isTalkNamespace(namespaceId)||mw.config.get('wgExtraSignatureNamespaces').includes(namespaceId);};Title.exists=function(title){const obj=Title.exist.pages;let match;if(typeof title==='string'){match=obj[title];}else if(title instanceof Title){match=obj[title.toString()];}else{throw new Error('mw.Title.exists: title must be a string or an instance of Title');}if(typeof match!=='boolean'){return null;}return match;};Title.exist={pages:{},set:function(titles,state){const pages=this.pages;titles=Array.isArray(titles)?titles:[titles];state=state===undefined?true:!!state;for(let i=0,len=titles.length;i<len;i++){pages[titles[i]]=state;}return true;}};Title.normalizeExtension=function(extension){\\nconst lower=extension.toLowerCase(),normalizations={htm:'html',jpeg:'jpg',mpeg:'mpg',tiff:'tif',ogv:'ogg'};if(Object.hasOwnProperty.call(normalizations,lower)){return normalizations[lower];}else if(/^[\\\\da-z]+$/.test(lower)){return lower;}else{return'';}};Title.phpCharToUpper=function(chr){if(!toUpperMap){toUpperMap=require('./phpCharToUpper.json');}if(toUpperMap[chr]===0){return chr;}return toUpperMap[chr]||chr.toUpperCase();};Title.prototype={constructor:Title,getNamespaceId:function(){return this.namespace;},getNamespacePrefix:function(){return getNamespacePrefix(this.namespace);},getFileNameWithoutExtension:function(){const ext=this.getExtension();if(ext===null){return this.getMain();}return this.getMain().slice(0,-ext.length-1);},getFileNameTextWithoutExtension:function(){return text(this.getFileNameWithoutExtension());},getName:function(){return this.getFileNameWithoutExtension();},getNameText:function(){return text(this.getFileNameTextWithoutExtension());},getExtension:function(){\\nconst lastDot=this.title.lastIndexOf('.');if(lastDot===-1){return null;}return this.title.slice(lastDot+1)||null;},getMain:function(){if(mw.config.get('wgCaseSensitiveNamespaces').includes(this.namespace)||!this.title.length){return this.title;}const firstChar=mwString.charAt(this.title,0);return mw.Title.phpCharToUpper(firstChar)+this.title.slice(firstChar.length);},getMainText:function(){return text(this.getMain());},getPrefixedDb:function(){return this.getNamespacePrefix()+this.getMain();},getPrefixedText:function(){return text(this.getPrefixedDb());},getRelativeText:function(namespace){if(this.getNamespaceId()===namespace){return this.getMainText();}else if(this.getNamespaceId()===NS_MAIN){return':'+this.getPrefixedText();}else{return this.getPrefixedText();}},getFragment:function(){return this.fragment;},getUrl:function(params){const fragment=this.getFragment();if(fragment){return mw.util.getUrl(this.toString()+'#'+fragment,params);}else{return mw.util.getUrl(this.toString(),params);\\n}},isTalkPage:function(){return Title.isTalkNamespace(this.getNamespaceId());},getTalkPage:function(){if(!this.canHaveTalkPage()){return null;}return this.isTalkPage()?this:Title.makeTitle(this.getNamespaceId()+1,this.getMainText());},getSubjectPage:function(){return this.isTalkPage()?Title.makeTitle(this.getNamespaceId()-1,this.getMainText()):this;},canHaveTalkPage:function(){return this.getNamespaceId()>=NS_MAIN;},exists:function(){return Title.exists(this);}};Title.prototype.toString=Title.prototype.getPrefixedDb;Title.prototype.toText=Title.prototype.getPrefixedText;mw.Title=Title;\\n},\\\"phpCharToUpper.json\\\":{\\\"ß\\\":0,\\\"ŉ\\\":0,\\\"ǰ\\\":0,\\\"ʂ\\\":0,\\\"ͅ\\\":0,\\\"ΐ\\\":0,\\\"ΰ\\\":0,\\\"և\\\":0,\\\"ა\\\":0,\\\"ბ\\\":0,\\\"გ\\\":0,\\\"დ\\\":0,\\\"ე\\\":0,\\\"ვ\\\":0,\\\"ზ\\\":0,\\\"თ\\\":0,\\\"ი\\\":0,\\\"კ\\\":0,\\\"ლ\\\":0,\\\"მ\\\":0,\\\"ნ\\\":0,\\\"ო\\\":0,\\\"პ\\\":0,\\\"ჟ\\\":0,\\\"რ\\\":0,\\\"ს\\\":0,\\\"ტ\\\":0,\\\"უ\\\":0,\\\"ფ\\\":0,\\\"ქ\\\":0,\\\"ღ\\\":0,\\\"ყ\\\":0,\\\"შ\\\":0,\\\"ჩ\\\":0,\\\"ც\\\":0,\\\"ძ\\\":0,\\\"წ\\\":0,\\\"ჭ\\\":0,\\\"ხ\\\":0,\\\"ჯ\\\":0,\\\"ჰ\\\":0,\\\"ჱ\\\":0,\\\"ჲ\\\":0,\\\"ჳ\\\":0,\\\"ჴ\\\":0,\\\"ჵ\\\":0,\\\"ჶ\\\":0,\\\"ჷ\\\":0,\\\"ჸ\\\":0,\\\"ჹ\\\":0,\\\"ჺ\\\":0,\\\"ჽ\\\":0,\\\"ჾ\\\":0,\\\"ჿ\\\":0,\\\"ᶎ\\\":0,\\\"ẖ\\\":0,\\\"ẗ\\\":0,\\\"ẘ\\\":0,\\\"ẙ\\\":0,\\\"ẚ\\\":0,\\\"ὐ\\\":0,\\\"ὒ\\\":0,\\\"ὔ\\\":0,\\\"ὖ\\\":0,\\\"ᾀ\\\":\\\"ᾈ\\\",\\\"ᾁ\\\":\\\"ᾉ\\\",\\\"ᾂ\\\":\\\"ᾊ\\\",\\\"ᾃ\\\":\\\"ᾋ\\\",\\\"ᾄ\\\":\\\"ᾌ\\\",\\\"ᾅ\\\":\\\"ᾍ\\\",\\\"ᾆ\\\":\\\"ᾎ\\\",\\\"ᾇ\\\":\\\"ᾏ\\\",\\\"ᾈ\\\":0,\\\"ᾉ\\\":0,\\\"ᾊ\\\":0,\\\"ᾋ\\\":0,\\\"ᾌ\\\":0,\\\"ᾍ\\\":0,\\\"ᾎ\\\":0,\\\"ᾏ\\\":0,\\\"ᾐ\\\":\\\"ᾘ\\\",\\\"ᾑ\\\":\\\"ᾙ\\\",\\\"ᾒ\\\":\\\"ᾚ\\\",\\\"ᾓ\\\":\\\"ᾛ\\\",\\\"ᾔ\\\":\\\"ᾜ\\\",\\\"ᾕ\\\":\\\"ᾝ\\\",\\\"ᾖ\\\":\\\"ᾞ\\\",\\\"ᾗ\\\":\\\"ᾟ\\\",\\\"ᾘ\\\":0,\\\"ᾙ\\\":0,\\\"ᾚ\\\":0,\\\"ᾛ\\\":0,\\\"ᾜ\\\":0,\\\"ᾝ\\\":0,\\\"ᾞ\\\":0,\\\"ᾟ\\\":0,\\\"ᾠ\\\":\\\"ᾨ\\\",\\\"ᾡ\\\":\\\"ᾩ\\\",\\\"ᾢ\\\":\\\"ᾪ\\\",\\\"ᾣ\\\":\\\"ᾫ\\\",\\\"ᾤ\\\":\\\"ᾬ\\\",\\\"ᾥ\\\":\\\"ᾭ\\\",\\\"ᾦ\\\":\\\"ᾮ\\\",\\\"ᾧ\\\":\\\"ᾯ\\\",\\\"ᾨ\\\":0,\\\"ᾩ\\\":0,\\\"ᾪ\\\":0,\\\"ᾫ\\\":0,\\\"ᾬ\\\":0,\\\"ᾭ\\\":0,\\\"ᾮ\\\":0,\\\"ᾯ\\\":0,\\\"ᾲ\\\":0,\\\"ᾳ\\\":\\\"ᾼ\\\",\\n\\\"ᾴ\\\":0,\\\"ᾶ\\\":0,\\\"ᾷ\\\":0,\\\"ᾼ\\\":0,\\\"ῂ\\\":0,\\\"ῃ\\\":\\\"ῌ\\\",\\\"ῄ\\\":0,\\\"ῆ\\\":0,\\\"ῇ\\\":0,\\\"ῌ\\\":0,\\\"ῒ\\\":0,\\\"ΐ\\\":0,\\\"ῖ\\\":0,\\\"ῗ\\\":0,\\\"ῢ\\\":0,\\\"ΰ\\\":0,\\\"ῤ\\\":0,\\\"ῦ\\\":0,\\\"ῧ\\\":0,\\\"ῲ\\\":0,\\\"ῳ\\\":\\\"ῼ\\\",\\\"ῴ\\\":0,\\\"ῶ\\\":0,\\\"ῷ\\\":0,\\\"ῼ\\\":0,\\\"ⅰ\\\":0,\\\"ⅱ\\\":0,\\\"ⅲ\\\":0,\\\"ⅳ\\\":0,\\\"ⅴ\\\":0,\\\"ⅵ\\\":0,\\\"ⅶ\\\":0,\\\"ⅷ\\\":0,\\\"ⅸ\\\":0,\\\"ⅹ\\\":0,\\\"ⅺ\\\":0,\\\"ⅻ\\\":0,\\\"ⅼ\\\":0,\\\"ⅽ\\\":0,\\\"ⅾ\\\":0,\\\"ⅿ\\\":0,\\\"ⓐ\\\":0,\\\"ⓑ\\\":0,\\\"ⓒ\\\":0,\\\"ⓓ\\\":0,\\\"ⓔ\\\":0,\\\"ⓕ\\\":0,\\\"ⓖ\\\":0,\\\"ⓗ\\\":0,\\\"ⓘ\\\":0,\\\"ⓙ\\\":0,\\\"ⓚ\\\":0,\\\"ⓛ\\\":0,\\\"ⓜ\\\":0,\\\"ⓝ\\\":0,\\\"ⓞ\\\":0,\\\"ⓟ\\\":0,\\\"ⓠ\\\":0,\\\"ⓡ\\\":0,\\\"ⓢ\\\":0,\\\"ⓣ\\\":0,\\\"ⓤ\\\":0,\\\"ⓥ\\\":0,\\\"ⓦ\\\":0,\\\"ⓧ\\\":0,\\\"ⓨ\\\":0,\\\"ⓩ\\\":0,\\\"ꞔ\\\":0,\\\"ꞹ\\\":0,\\\"ꞻ\\\":0,\\\"ꞽ\\\":0,\\\"ꞿ\\\":0,\\\"ꟃ\\\":0,\\\"ﬀ\\\":0,\\\"ﬁ\\\":0,\\\"ﬂ\\\":0,\\\"ﬃ\\\":0,\\\"ﬄ\\\":0,\\\"ﬅ\\\":0,\\\"ﬆ\\\":0,\\\"ﬓ\\\":0,\\\"ﬔ\\\":0,\\\"ﬕ\\\":0,\\\"ﬖ\\\":0,\\\"ﬗ\\\":0,\\\"𖹠\\\":0,\\\"𖹡\\\":0,\\\"𖹢\\\":0,\\\"𖹣\\\":0,\\\"𖹤\\\":0,\\\"𖹥\\\":0,\\\"𖹦\\\":0,\\\"𖹧\\\":0,\\\"𖹨\\\":0,\\\"𖹩\\\":0,\\\"𖹪\\\":0,\\\"𖹫\\\":0,\\\"𖹬\\\":0,\\\"𖹭\\\":0,\\\"𖹮\\\":0,\\\"𖹯\\\":0,\\\"𖹰\\\":0,\\\"𖹱\\\":0,\\\"𖹲\\\":0,\\\"𖹳\\\":0,\\\"𖹴\\\":0,\\\"𖹵\\\":0,\\\"𖹶\\\":0,\\\"𖹷\\\":0,\\\"𖹸\\\":0,\\\"𖹹\\\":0,\\\"𖹺\\\":0,\\\"𖹻\\\":0,\\\"𖹼\\\":0,\\\"𖹽\\\":0,\\\"𖹾\\\":0,\\\"𖹿\\\":0}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.Title&skin=vector-2022&version=1yfci\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.Title&skin=vector-2022&sourcemap=1&version=1yfci\",\"mediawiki.cldr@1dc8t\":\"mw.loader.impl(function(){return[\\\"mediawiki.cldr@1dc8t\\\",function($,jQuery,require,module){(function(){'use strict';mw.cldr={getPluralForm:function(number,pluralRules){const pluralRuleParser=require('mediawiki.libs.pluralruleparser');let i;for(i=0;i<pluralRules.length;i++){if(pluralRuleParser(pluralRules[i],number)){break;}}return i;}};}());\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.cldr&skin=vector-2022&version=u5he9\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.cldr&skin=vector-2022&sourcemap=1&version=u5he9\",\"mediawiki.language@16zu2\":\"mw.loader.impl(function(){return[\\\"mediawiki.language@16zu2\\\",function($,jQuery,require,module){(function(){mw.language={data:{},getData:function(langCode,dataKey){const langData=mw.language.data;langCode=langCode.toLowerCase();if(langData&&langData[langCode]instanceof mw.Map){return langData[langCode].get(dataKey);}return undefined;},setData:function(langCode,dataKey,value){const langData=mw.language.data;langCode=langCode.toLowerCase();if(!(langData[langCode]instanceof mw.Map)){langData[langCode]=new mw.Map();}if(arguments.length>2){langData[langCode].set(dataKey,value);}else{langData[langCode].set(dataKey);}}};}());\\n(function(){Object.assign(mw.language,{convertPlural:function(count,forms,explicitPluralForms){let pluralFormIndex=0;if(explicitPluralForms&&(explicitPluralForms[count]!==undefined)){return explicitPluralForms[count];}if(!forms||forms.length===0){return'';}const pluralRules=mw.language.getData(mw.config.get('wgUserLanguage'),'pluralRules');if(!pluralRules){return(count===1)?forms[0]:forms[1];}pluralFormIndex=mw.cldr.getPluralForm(count,pluralRules);pluralFormIndex=Math.min(pluralFormIndex,forms.length-1);return forms[pluralFormIndex];},preConvertPlural:function(forms,count){while(forms.length<count){forms.push(forms[forms.length-1]);}return forms;},gender:function(gender,forms){if(!forms||forms.length===0){return'';}forms=mw.language.preConvertPlural(forms,2);if(gender==='male'){return forms[0];}if(gender==='female'){return forms[1];}return(forms.length===3)?forms[2]:forms[0];},convertGrammarMapping:{},convertGrammar:function(word,form){const userLanguage=mw.config.get('wgUserLanguage');\\nconst forms=mw.language.getData(userLanguage,'grammarForms');if(forms&&forms[form]&&forms[form][word]){return forms[form][word];}if(Object.prototype.hasOwnProperty.call(mw.language.convertGrammarMapping,userLanguage)){return mw.language.convertGrammarMapping[userLanguage](word,form);}const transformations=mw.language.getData(userLanguage,'grammarTransformations');if(!(transformations&&transformations[form])){return word;}let patterns=transformations[form];if(typeof patterns==='string'){patterns=transformations[patterns];}for(let i=0;i<patterns.length;i++){const rule=patterns[i];const sourcePattern=rule[0];if(sourcePattern==='@metadata'){continue;}const regexp=new RegExp(sourcePattern);const replacement=rule[1];if(word.match(regexp)){return word.replace(regexp,replacement);}}return word;},listToText:function(list){let text='';for(let i=0;i<list.length;i++){text+=list[i];if(list.length-2===i){text+=mw.message('and').escaped()+mw.message('word-separator').escaped();}else if(list.length-1!==i){\\ntext+=mw.message('comma-separator').escaped();}}return text;},bcp47:function(languageTag){let isFirstSegment=true,isPrivate=false;languageTag=languageTag.toLowerCase();const bcp47Map=mw.language.getData(mw.config.get('wgUserLanguage'),'bcp47Map');if(bcp47Map&&Object.prototype.hasOwnProperty.call(bcp47Map,languageTag)){languageTag=bcp47Map[languageTag];}const segments=languageTag.split('-');const formatted=segments.map((segment)=>{let newSegment;if(isPrivate){newSegment=segment.toLowerCase();}else if(segment.length===2&&!isFirstSegment){newSegment=segment.toUpperCase();}else if(segment.length===4&&!isFirstSegment){newSegment=segment.charAt(0).toUpperCase()+segment.slice(1).toLowerCase();}else{newSegment=segment.toLowerCase();}isPrivate=segment.toLowerCase()==='x';isFirstSegment=false;return newSegment;});return formatted.join('-');}});}());\\n(function(){function pad(text,size,ch,end){if(!ch){ch='0';}const out=String(text);const count=Math.ceil((size-out.length)/ch.length);const padStr=ch.repeat(Math.max(0,count));return end?out+padStr:padStr+out;}function commafyNumber(value,pattern,options){const patternParts=pattern.split('.'),maxPlaces=(patternParts[1]||[]).length,valueParts=String(Math.abs(value)).split('.'),fractional=valueParts[1]||'',pieces=[];let groupSize=0,groupSize2=0;options=options||{group:',',decimal:'.'};if(isNaN(value)){return value;}let padLength;if(patternParts[1]){padLength=(patternParts[1]&&patternParts[1].lastIndexOf('0')+1);if(padLength>fractional.length){valueParts[1]=pad(fractional,padLength,'0',true);}if(maxPlaces<fractional.length){valueParts[1]=fractional.slice(0,maxPlaces);}}else{if(valueParts[1]){valueParts.pop();}}const patternDigits=patternParts[0].replace(',','');padLength=patternDigits.indexOf('0');if(padLength!==-1){padLength=patternDigits.length-padLength;if(padLength>valueParts[0].length){\\nvalueParts[0]=pad(valueParts[0],padLength);}if(!patternDigits.includes('#')&&padLength){valueParts[0]=valueParts[0].slice(-padLength);}}let index=patternParts[0].lastIndexOf(',');if(index!==-1){groupSize=patternParts[0].length-index-1;const remainder=patternParts[0].slice(0,index);index=remainder.lastIndexOf(',');if(index!==-1){groupSize2=remainder.length-index-1;}}if(options.minimumGroupingDigits===null||valueParts[0].length>=groupSize+options.minimumGroupingDigits){for(let whole=valueParts[0];whole;){const off=groupSize?whole.length-groupSize:0;pieces.push((off>0)?whole.slice(off):whole);whole=(off>0)?whole.slice(0,off):'';if(groupSize2){groupSize=groupSize2;groupSize2=null;}}valueParts[0]=pieces.reverse().join(options.group);}return valueParts.join(options.decimal);}function commafyInternal(value,pattern,minimumGroupingDigits){const transformTable=mw.language.getSeparatorTransformTable(),group=transformTable[',']||',',numberPatternRE=/[#0,]*[#0](?:\\\\.0*#*)?/,decimal=transformTable['.']||'.',\\npatternList=pattern.split(';'),positivePattern=patternList[0];pattern=patternList[(value<0)?1:0]||('-'+positivePattern);const numberPattern=positivePattern.match(numberPatternRE);minimumGroupingDigits=minimumGroupingDigits!==undefined?minimumGroupingDigits:null;if(!numberPattern){throw new Error('unable to find a number expression in pattern: '+pattern);}return pattern.replace(numberPatternRE,commafyNumber(value,numberPattern[0],{minimumGroupingDigits:minimumGroupingDigits,decimal:decimal,group:group}));}function flipTransform(){const flipped={};flipped[',']='';for(let i=0;i<arguments.length;i++){const table=arguments[i];for(const key in table){flipped[table[key]]=key===','?'':key;}}return flipped;}Object.assign(mw.language,{convertNumber:function(num,integer){if(integer&&parseInt(num,10)===num){return num;}const digitTransformTable=mw.language.getDigitTransformTable();const separatorTransformTable=mw.language.getSeparatorTransformTable();let transformTable,numberString;if(integer){\\ntransformTable=flipTransform(separatorTransformTable,digitTransformTable);numberString=String(num);}else{if(mw.config.get('wgTranslateNumerals')){transformTable=digitTransformTable;}const pattern=mw.language.getData(mw.config.get('wgUserLanguage'),'digitGroupingPattern')||'#,##0.###';const minimumGroupingDigits=mw.language.getData(mw.config.get('wgUserLanguage'),'minimumGroupingDigits')||null;numberString=commafyInternal(num,pattern,minimumGroupingDigits);}let convertedNumber;if(transformTable){convertedNumber='';for(let i=0;i<numberString.length;i++){if(Object.prototype.hasOwnProperty.call(transformTable,numberString[i])){convertedNumber+=transformTable[numberString[i]];}else{convertedNumber+=numberString[i];}}}else{convertedNumber=numberString;}if(integer){convertedNumber=parseInt(convertedNumber,10);}return convertedNumber;},getDigitTransformTable:function(){return mw.language.getData(mw.config.get('wgUserLanguage'),'digitTransformTable')||[];},getSeparatorTransformTable:function(){\\nreturn mw.language.getData(mw.config.get('wgUserLanguage'),'separatorTransformTable')||[];}});}());\\n(function(){Object.assign(mw.language,{getFallbackLanguages:function(){return mw.language.getData(mw.config.get('wgUserLanguage'),'fallbackLanguages')||[];},getFallbackLanguageChain:function(){return[mw.config.get('wgUserLanguage')].concat(mw.language.getFallbackLanguages());}});}());\\nmw.language.setData(\\\"en\\\",{\\\"digitTransformTable\\\":null,\\\"separatorTransformTable\\\":null,\\\"minimumGroupingDigits\\\":1,\\\"formalityIndex\\\":0,\\\"grammarForms\\\":[],\\\"grammarTransformations\\\":[],\\\"pluralRules\\\":[\\\"i = 1 and v = 0 @integer 1\\\"],\\\"digitGroupingPattern\\\":\\\"#,##0.###\\\",\\\"fallbackLanguages\\\":[],\\\"bcp47Map\\\":{\\\"als\\\":\\\"gsw\\\",\\\"bat-smg\\\":\\\"sgs\\\",\\\"be-x-old\\\":\\\"be-tarask\\\",\\\"fiu-vro\\\":\\\"vro\\\",\\\"roa-rup\\\":\\\"rup\\\",\\\"zh-classical\\\":\\\"lzh\\\",\\\"zh-min-nan\\\":\\\"nan\\\",\\\"zh-yue\\\":\\\"yue\\\",\\\"cbk-zam\\\":\\\"cbk\\\",\\\"de-formal\\\":\\\"de-x-formal\\\",\\\"eml\\\":\\\"egl\\\",\\\"en-rtl\\\":\\\"en-x-rtl\\\",\\\"es-formal\\\":\\\"es-x-formal\\\",\\\"hu-formal\\\":\\\"hu-x-formal\\\",\\\"map-bms\\\":\\\"jv-x-bms\\\",\\\"mo\\\":\\\"ro-Cyrl-MD\\\",\\\"nrm\\\":\\\"nrf\\\",\\\"nl-informal\\\":\\\"nl-x-informal\\\",\\\"roa-tara\\\":\\\"nap-x-tara\\\",\\\"simple\\\":\\\"en-simple\\\",\\\"sr-ec\\\":\\\"sr-Cyrl\\\",\\\"sr-el\\\":\\\"sr-Latn\\\",\\\"crh-ro\\\":\\\"crh-Latn-RO\\\",\\\"kk-cn\\\":\\\"kk-Arab-CN\\\",\\\"kk-tr\\\":\\\"kk-Latn-TR\\\",\\\"zh-cn\\\":\\\"zh-Hans-CN\\\",\\\"zh-sg\\\":\\\"zh-Hans-SG\\\",\\\"zh-my\\\":\\\"zh-Hans-MY\\\",\\\"zh-tw\\\":\\\"zh-Hant-TW\\\",\\\"zh-hk\\\":\\\"zh-Hant-HK\\\",\\\"zh-mo\\\":\\\"zh-Hant-MO\\\"}});\\n},{},{\\\"and\\\":\\\" and\\\",\\\"comma-separator\\\":\\\", \\\",\\\"word-separator\\\":\\\" \\\"}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.language&skin=vector-2022&version=rxl3l\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.language&skin=vector-2022&sourcemap=1&version=rxl3l\",\"mediawiki.jqueryMsg@g8xls\":\"mw.loader.impl(function(){return[\\\"mediawiki.jqueryMsg@g8xls\\\",{\\\"main\\\":\\\"mediawiki.jqueryMsg.js\\\",\\\"files\\\":{\\\"mediawiki.jqueryMsg.js\\\":function(require,module,exports){const slice=Array.prototype.slice,util=require('mediawiki.util'),mwString=require('mediawiki.String'),parserDefaults={magic:{PAGENAME:mw.config.get('wgPageName'),PAGENAMEE:util.wikiUrlencode(mw.config.get('wgPageName')),SERVERNAME:mw.config.get('wgServerName'),CONTENTLANGUAGE:mw.config.get('wgContentLanguage')},allowedHtmlElements:[],allowedSelfClosingHtmlElements:['br','wbr','hr'],allowedHtmlCommonAttributes:['id','class','lang','dir','title','role'],allowedHtmlAttributesByElement:{},messages:mw.messages,language:mw.language,format:'parse'};$.extend(true,parserDefaults,require('./parserDefaults.json'));function appendWithoutParsing($parent,children){let i,len;if(!Array.isArray(children)){children=[children];}for(i=0,len=children.length;i<len;i++){if(children[i]!==Object(children[i])){children[i]=document.createTextNode(children[i]);}if(children[i]instanceof $&&children[i].hasClass('mediaWiki_htmlEmitter')){children[i]=children[i].contents();}}return $parent.append(children);}function decodePrimaryHtmlEntities(encoded){\\nreturn encoded.replace(/&#039;/g,'\\\\'').replace(/&quot;/g,'\\\"').replace(/&lt;/g,'<').replace(/&gt;/g,'>').replace(/&amp;/g,'&');}function textify(input){if(input instanceof $){input=input.text();}return String(input);}function getFailableParserFn(options){return function(args){const parser=new Parser(options),key=args[0],argsArray=Array.isArray(args[1])?args[1]:slice.call(args,1);try{return parser.parse(key,argsArray);}catch(e){const fallback=parser.settings.messages.get(key);mw.log.warn('mediawiki.jqueryMsg: '+key+': '+e.message);mw.track('mediawiki.jqueryMsg.error',{messageKey:key,errorMessage:e.message});return $('<span>').text(fallback);}};}const setParserDefaults=function(data){Object.assign(parserDefaults,data);};const getParserDefaults=function(){return Object.assign({},parserDefaults);};const defaultMessageFunction=function(options){let failableParserFn,format;if(options&&options.format!==undefined){format=options.format;}else{format=parserDefaults.format;}return function(){if(!failableParserFn){\\nfailableParserFn=getFailableParserFn(options);}const $result=failableParserFn(arguments);if(format==='text'||format==='escaped'){return $result.text();}else{return $result.html();}};};let messageFunction=defaultMessageFunction;const getMessageFunction=function(options){return messageFunction(options);};const setMessageFunction=function(msgFunction){messageFunction=msgFunction;return function(){messageFunction=defaultMessageFunction;};};const getPlugin=function(options){let failableParserFn;return function(){if(!failableParserFn){failableParserFn=getFailableParserFn(options);}const $result=failableParserFn(arguments);return this.empty().append($result.contents());};};function Parser(options){this.settings=Object.assign({},parserDefaults,options);this.settings.onlyCurlyBraceTransform=(this.settings.format==='text'||this.settings.format==='escaped');this.astCache={};this.emitter=new HtmlEmitter(this.settings.language,this.settings.magic);}Parser.prototype={parse:function(key,replacements){\\nconst ast=this.getAst(key,replacements);return this.emitter.emit(ast,replacements);},getAst:function(key,replacements){if(!Object.prototype.hasOwnProperty.call(this.astCache,key)){let wikiText=this.settings.messages.get(key);if(mw.config.get('wgUserLanguage')==='qqx'&&(!wikiText||wikiText==='('+key+')')){wikiText='('+key+'$*)';}else if(typeof wikiText!=='string'){wikiText='⧼'+key+'⧽';}wikiText=mw.internalDoTransformFormatForQqx(wikiText,replacements);this.astCache[key]=this.wikiTextToAst(wikiText);}return this.astCache[key];},wikiTextToAst:function(input){let nonWhitespaceExpression=null,expression=null,templateContents=null,paramExpression=null,colon=null;const settings=this.settings;let pos=0;function choice(ps){return function(){let i,result;for(i=0;i<ps.length;i++){result=ps[i]();if(result!==null){return result;}}return null;};}function sequence(ps){const originalPos=pos,result=[];for(let i=0;i<ps.length;i++){const r=ps[i]();if(r===null){pos=originalPos;return null;}result.push(r);\\n}return result;}function nOrMore(n,p){return function(){const originalPos=pos,result=[];let parsed=p();while(parsed!==null){result.push(parsed);parsed=p();}if(result.length<n){pos=originalPos;return null;}return result;};}function makeStringParser(s){const len=s.length;return function(){let result=null;if(input.slice(pos,pos+len)===s){result=s;pos+=len;}return result;};}function makeRegexParser(regex){return function(){const matches=input.slice(pos).match(regex);if(matches===null){return null;}pos+=matches[0].length;return matches[0];};}const regularLiteral=makeRegexParser(/^[^{}\\\\[\\\\]$<\\\\\\\\]/);const regularLiteralWithoutBar=makeRegexParser(/^[^{}\\\\[\\\\]$\\\\\\\\|]/);const regularLiteralWithoutSpace=makeRegexParser(/^[^{}\\\\[\\\\]$\\\\s]/);const backslash=makeStringParser('\\\\\\\\');const anyCharacter=makeRegexParser(/^./);function escapedLiteral(){const result=sequence([backslash,anyCharacter]);return result===null?null:result[1];}const escapedOrLiteralWithoutSpace=choice([escapedLiteral,\\nregularLiteralWithoutSpace]);const escapedOrLiteralWithoutBar=choice([escapedLiteral,regularLiteralWithoutBar]);const escapedOrRegularLiteral=choice([escapedLiteral,regularLiteral]);function literalWithoutSpace(){const result=nOrMore(1,escapedOrLiteralWithoutSpace)();return result===null?null:result.join('');}function literalWithoutBar(){const result=nOrMore(1,escapedOrLiteralWithoutBar)();return result===null?null:result.join('');}function literal(){const result=nOrMore(1,escapedOrRegularLiteral)();return result===null?null:result.join('');}const asciiAlphabetLiteral=makeRegexParser(/^[A-Za-z]+/);const whitespace=makeRegexParser(/^\\\\s+/);const dollar=makeStringParser('$');const digits=makeRegexParser(/^\\\\d+/);function replacement(){const result=sequence([dollar,digits]);if(result===null){return null;}return['REPLACE',parseInt(result[1],10)-1];}const openExtlink=makeStringParser('[');const closeExtlink=makeStringParser(']');function extlink(){const parsedResult=sequence([openExtlink,\\nnOrMore(1,nonWhitespaceExpression),whitespace,nOrMore(1,expression),closeExtlink]);if(parsedResult===null){return null;}const target=parsedResult[1].length===1?parsedResult[1][0]:['CONCAT',...parsedResult[1]];return['EXTLINK',target,['CONCAT',...parsedResult[3]]];}const pipe=makeStringParser('|');const openTemplate=makeStringParser('{{');const closeTemplate=makeStringParser('}}');function template(){const result=sequence([openTemplate,templateContents,closeTemplate]);return result===null?null:result[1];}function templateName(){const templateNameRegex=makeRegexParser(/^#?[ !\\\"$&'()*,./0-9;=?@A-Z^_`a-z~\\\\x80-\\\\xFF+-]+/);const result=templateNameRegex();return result===null?null:result.toString();}function templateParam(){const result=sequence([pipe,nOrMore(0,paramExpression)]);if(result===null){return null;}const expr=result[1];return expr.length>1?['CONCAT',...expr]:expr[0];}function templateNameWithParam(){const result=sequence([templateName,colon,nOrMore(0,paramExpression)]);if(result===null){\\nreturn null;}const expr=result[2];return[result[0],expr.length>1?['CONCAT',...expr]:expr[0]];}colon=makeStringParser(':');templateContents=choice([function(){const result=sequence([templateNameWithParam,nOrMore(0,templateParam)]);return result===null?null:[...result[0],...result[1]];},function(){const result=sequence([templateName,nOrMore(0,templateParam)]);if(result===null){return null;}return[result[0],...result[1]];}]);function pipedWikilink(){const result=sequence([nOrMore(1,paramExpression),pipe,nOrMore(1,expression)]);return result===null?null:[['CONCAT',...result[0]],['CONCAT',...result[2]]];}function unpipedWikilink(){const result=sequence([nOrMore(1,paramExpression)]);return result===null?null:[['CONCAT',...result[0]]];}const wikilinkContents=choice([pipedWikilink,unpipedWikilink]);const openWikilink=makeStringParser('[[');const closeWikilink=makeStringParser(']]');function wikilink(){const parsedResult=sequence([openWikilink,wikilinkContents,closeWikilink]);return parsedResult===null?null:['WIKILINK',...parsedResult[1]];\\n}const doubleQuote=makeStringParser('\\\"');const htmlDoubleQuoteAttributeValue=makeRegexParser(/^[^\\\"]*/);function doubleQuotedHtmlAttributeValue(){const parsedResult=sequence([doubleQuote,htmlDoubleQuoteAttributeValue,doubleQuote]);return parsedResult===null?null:parsedResult[1];}const singleQuote=makeStringParser('\\\\'');const htmlSingleQuoteAttributeValue=makeRegexParser(/^[^']*/);function singleQuotedHtmlAttributeValue(){const parsedResult=sequence([singleQuote,htmlSingleQuoteAttributeValue,singleQuote]);return parsedResult===null?null:parsedResult[1];}const htmlAttributeEquals=makeRegexParser(/^\\\\s*=\\\\s*/);function htmlAttribute(){const parsedResult=sequence([whitespace,asciiAlphabetLiteral,htmlAttributeEquals,choice([doubleQuotedHtmlAttributeValue,singleQuotedHtmlAttributeValue])]);return parsedResult===null?null:[parsedResult[1],parsedResult[3]];}function isAllowedHtml(startTagName,endTagName,attributes){startTagName=startTagName.toLowerCase();const isSelfClosing=endTagName===null;if((isSelfClosing&&!settings.allowedSelfClosingHtmlElements.includes(startTagName))||\\n(!isSelfClosing&&(startTagName!==endTagName.toLowerCase()||!settings.allowedHtmlElements.includes(startTagName)))){return false;}let attributeName;for(let i=0,len=attributes.length;i<len;i+=2){attributeName=attributes[i];if(!settings.allowedHtmlCommonAttributes.includes(attributeName)&&!(settings.allowedHtmlAttributesByElement[startTagName]||[]).includes(attributeName)){return false;}}return true;}function htmlAttributes(){const parsedResult=nOrMore(0,htmlAttribute)();return['HTMLATTRIBUTES'].concat(...parsedResult);}const openHtmlStartTag=makeStringParser('<');const optionalWhitespace=makeRegexParser(/\\\\s*/);const optionalForwardSlash=makeRegexParser(/^\\\\/?/);const openHtmlEndTag=makeStringParser('</');const closeHtmlTag=makeRegexParser(/^\\\\s*>/);function html(){const startOpenTagPos=pos;const parsedOpenTagResult=sequence([openHtmlStartTag,asciiAlphabetLiteral,htmlAttributes,optionalWhitespace,optionalForwardSlash,closeHtmlTag]);if(parsedOpenTagResult===null){return null;}const endOpenTagPos=pos;\\nconst startTagName=parsedOpenTagResult[1];const wrappedAttributes=parsedOpenTagResult[2];const attributes=wrappedAttributes.slice(1);if(settings.allowedSelfClosingHtmlElements.includes(startTagName)){if(isAllowedHtml(startTagName,null,attributes)){return['HTMLELEMENT',startTagName,wrappedAttributes];}return['CONCAT',input.slice(startOpenTagPos,endOpenTagPos)];}const parsedHtmlContents=nOrMore(0,expression)();const startCloseTagPos=pos;const parsedCloseTagResult=sequence([openHtmlEndTag,asciiAlphabetLiteral,closeHtmlTag]);if(parsedCloseTagResult===null){return['CONCAT',input.slice(startOpenTagPos,endOpenTagPos),...parsedHtmlContents];}const endCloseTagPos=pos;const endTagName=parsedCloseTagResult[1];if(isAllowedHtml(startTagName,endTagName,attributes)){return['HTMLELEMENT',startTagName,wrappedAttributes,...parsedHtmlContents];}return['CONCAT',input.slice(startOpenTagPos,endOpenTagPos),...parsedHtmlContents,input.slice(startCloseTagPos,endCloseTagPos)];}function nowiki(){const parsedResult=sequence([\\nmakeStringParser('<nowiki>'),makeRegexParser(/^.*?(?=<\\\\/nowiki>)/),makeStringParser('</nowiki>')]);return parsedResult===null?null:['CONCAT',...parsedResult[1]];}nonWhitespaceExpression=choice([template,wikilink,extlink,replacement,literalWithoutSpace]);paramExpression=choice([template,wikilink,extlink,replacement,literalWithoutBar]);expression=choice([template,wikilink,extlink,replacement,nowiki,html,literal]);const regularLiteralWithSquareBrackets=makeRegexParser(/^[^{}$\\\\\\\\]/);function curlyBraceTransformExpressionLiteral(){const result=nOrMore(1,regularLiteralWithSquareBrackets)();return result===null?null:result.join('');}const curlyBraceTransformExpression=choice([template,replacement,curlyBraceTransformExpressionLiteral]);function start(rootExpression){const result=nOrMore(0,rootExpression)();if(result===null){return null;}return['CONCAT',...result];}const res=start(this.settings.onlyCurlyBraceTransform?curlyBraceTransformExpression:expression);if(res===null||pos!==input.length){\\nthrow new Error('Parse error at position '+pos.toString()+' in input: '+input);}return res;}};function HtmlEmitter(language,magic){this.language=language;for(const key in(magic||{})){const val=magic[key];this[key.toLowerCase()]=function(){return val;};}this.emit=(node,replacements)=>{switch(typeof node){case'string':case'number':return node;case'object':{const subnodes=$.map(node.slice(1),(n)=>this.emit(n,replacements));const operation=node[0].toLowerCase();if(typeof this[operation]==='function'){return this[operation](subnodes,replacements);}else{throw new Error('Unknown operation \\\"'+operation+'\\\"');}}case'undefined':return'';default:throw new Error('Unexpected type in AST: '+typeof node);}};}const strongDirRegExp=new RegExp('(?:'+'('+\\n'[\\\\u0041-\\\\u005a\\\\u0061-\\\\u007a\\\\u00aa\\\\u00b5\\\\u00ba\\\\u00c0-\\\\u00d6\\\\u00d8-\\\\u00f6\\\\u00f8-\\\\u02b8\\\\u02bb-\\\\u02c1\\\\u02d0\\\\u02d1\\\\u02e0-\\\\u02e4\\\\u02ee\\\\u0370-\\\\u0373\\\\u0376\\\\u0377\\\\u037a-\\\\u037d\\\\u037f\\\\u0386\\\\u0388-\\\\u038a\\\\u038c\\\\u038e-\\\\u03a1\\\\u03a3-\\\\u03f5\\\\u03f7-\\\\u0482\\\\u048a-\\\\u052f\\\\u0531-\\\\u0556\\\\u0559-\\\\u055f\\\\u0561-\\\\u0587\\\\u0589\\\\u0903-\\\\u0939\\\\u093b\\\\u093d-\\\\u0940\\\\u0949-\\\\u094c\\\\u094e-\\\\u0950\\\\u0958-\\\\u0961\\\\u0964-\\\\u0980\\\\u0982\\\\u0983\\\\u0985-\\\\u098c\\\\u098f\\\\u0990\\\\u0993-\\\\u09a8\\\\u09aa-\\\\u09b0\\\\u09b2\\\\u09b6-\\\\u09b9\\\\u09bd-\\\\u09c0\\\\u09c7\\\\u09c8\\\\u09cb\\\\u09cc\\\\u09ce\\\\u09d7\\\\u09dc\\\\u09dd\\\\u09df-\\\\u09e1\\\\u09e6-\\\\u09f1\\\\u09f4-\\\\u09fa\\\\u0a03\\\\u0a05-\\\\u0a0a\\\\u0a0f\\\\u0a10\\\\u0a13-\\\\u0a28\\\\u0a2a-\\\\u0a30\\\\u0a32\\\\u0a33\\\\u0a35\\\\u0a36\\\\u0a38\\\\u0a39\\\\u0a3e-\\\\u0a40\\\\u0a59-\\\\u0a5c\\\\u0a5e\\\\u0a66-\\\\u0a6f\\\\u0a72-\\\\u0a74\\\\u0a83\\\\u0a85-\\\\u0a8d\\\\u0a8f-\\\\u0a91\\\\u0a93-\\\\u0aa8\\\\u0aaa-\\\\u0ab0\\\\u0ab2\\\\u0ab3\\\\u0ab5-\\\\u0ab9\\\\u0abd-\\\\u0ac0\\\\u0ac9\\\\u0acb\\\\u0acc\\\\u0ad0\\\\u0ae0\\\\u0ae1\\\\u0ae6-\\\\u0af0\\\\u0af9\\\\u0b02\\\\u0b03\\\\u0b05-\\\\u0b0c\\\\u0b0f\\\\u0b10\\\\u0b13-\\\\u0b28\\\\u0b2a-\\\\u0b30\\\\u0b32\\\\u0b33\\\\u0b35-\\\\u0b39\\\\u0b3d\\\\u0b3e\\\\u0b40\\\\u0b47\\\\u0b48\\\\u0b4b\\\\u0b4c\\\\u0b57\\\\u0b5c\\\\u0b5d\\\\u0b5f-\\\\u0b61\\\\u0b66-\\\\u0b77\\\\u0b83\\\\u0b85-\\\\u0b8a\\\\u0b8e-\\\\u0b90\\\\u0b92-\\\\u0b95\\\\u0b99\\\\u0b9a\\\\u0b9c\\\\u0b9e\\\\u0b9f\\\\u0ba3\\\\u0ba4\\\\u0ba8-\\\\u0baa\\\\u0bae-\\\\u0bb9\\\\u0bbe\\\\u0bbf\\\\u0bc1\\\\u0bc2\\\\u0bc6-\\\\u0bc8\\\\u0bca-\\\\u0bcc\\\\u0bd0\\\\u0bd7\\\\u0be6-\\\\u0bf2\\\\u0c01-\\\\u0c03\\\\u0c05-\\\\u0c0c\\\\u0c0e-\\\\u0c10\\\\u0c12-\\\\u0c28\\\\u0c2a-\\\\u0c39\\\\u0c3d\\\\u0c41-\\\\u0c44\\\\u0c58-\\\\u0c5a\\\\u0c60\\\\u0c61\\\\u0c66-\\\\u0c6f\\\\u0c7f\\\\u0c82\\\\u0c83\\\\u0c85-\\\\u0c8c\\\\u0c8e-\\\\u0c90\\\\u0c92-\\\\u0ca8\\\\u0caa-\\\\u0cb3\\\\u0cb5-\\\\u0cb9\\\\u0cbd-\\\\u0cc4\\\\u0cc6-\\\\u0cc8\\\\u0cca\\\\u0ccb\\\\u0cd5\\\\u0cd6\\\\u0cde\\\\u0ce0\\\\u0ce1\\\\u0ce6-\\\\u0cef\\\\u0cf1\\\\u0cf2\\\\u0d02\\\\u0d03\\\\u0d05-\\\\u0d0c\\\\u0d0e-\\\\u0d10\\\\u0d12-\\\\u0d3a\\\\u0d3d-\\\\u0d40\\\\u0d46-\\\\u0d48\\\\u0d4a-\\\\u0d4c\\\\u0d4e\\\\u0d57\\\\u0d5f-\\\\u0d61\\\\u0d66-\\\\u0d75\\\\u0d79-\\\\u0d7f\\\\u0d82\\\\u0d83\\\\u0d85-\\\\u0d96\\\\u0d9a-\\\\u0db1\\\\u0db3-\\\\u0dbb\\\\u0dbd\\\\u0dc0-\\\\u0dc6\\\\u0dcf-\\\\u0dd1\\\\u0dd8-\\\\u0ddf\\\\u0de6-\\\\u0def\\\\u0df2-\\\\u0df4\\\\u0e01-\\\\u0e30\\\\u0e32\\\\u0e33\\\\u0e40-\\\\u0e46\\\\u0e4f-\\\\u0e5b\\\\u0e81\\\\u0e82\\\\u0e84\\\\u0e87\\\\u0e88\\\\u0e8a\\\\u0e8d\\\\u0e94-\\\\u0e97\\\\u0e99-\\\\u0e9f\\\\u0ea1-\\\\u0ea3\\\\u0ea5\\\\u0ea7\\\\u0eaa\\\\u0eab\\\\u0ead-\\\\u0eb0\\\\u0eb2\\\\u0eb3\\\\u0ebd\\\\u0ec0-\\\\u0ec4\\\\u0ec6\\\\u0ed0-\\\\u0ed9\\\\u0edc-\\\\u0edf\\\\u0f00-\\\\u0f17\\\\u0f1a-\\\\u0f34\\\\u0f36\\\\u0f38\\\\u0f3e-\\\\u0f47\\\\u0f49-\\\\u0f6c\\\\u0f7f\\\\u0f85\\\\u0f88-\\\\u0f8c\\\\u0fbe-\\\\u0fc5\\\\u0fc7-\\\\u0fcc\\\\u0fce-\\\\u0fda\\\\u1000-\\\\u102c\\\\u1031\\\\u1038\\\\u103b\\\\u103c\\\\u103f-\\\\u1057\\\\u105a-\\\\u105d\\\\u1061-\\\\u1070\\\\u1075-\\\\u1081\\\\u1083\\\\u1084\\\\u1087-\\\\u108c\\\\u108e-\\\\u109c\\\\u109e-\\\\u10c5\\\\u10c7\\\\u10cd\\\\u10d0-\\\\u1248\\\\u124a-\\\\u124d\\\\u1250-\\\\u1256\\\\u1258\\\\u125a-\\\\u125d\\\\u1260-\\\\u1288\\\\u128a-\\\\u128d\\\\u1290-\\\\u12b0\\\\u12b2-\\\\u12b5\\\\u12b8-\\\\u12be\\\\u12c0\\\\u12c2-\\\\u12c5\\\\u12c8-\\\\u12d6\\\\u12d8-\\\\u1310\\\\u1312-\\\\u1315\\\\u1318-\\\\u135a\\\\u1360-\\\\u137c\\\\u1380-\\\\u138f\\\\u13a0-\\\\u13f5\\\\u13f8-\\\\u13fd\\\\u1401-\\\\u167f\\\\u1681-\\\\u169a\\\\u16a0-\\\\u16f8\\\\u1700-\\\\u170c\\\\u170e-\\\\u1711\\\\u1720-\\\\u1731\\\\u1735\\\\u1736\\\\u1740-\\\\u1751\\\\u1760-\\\\u176c\\\\u176e-\\\\u1770\\\\u1780-\\\\u17b3\\\\u17b6\\\\u17be-\\\\u17c5\\\\u17c7\\\\u17c8\\\\u17d4-\\\\u17da\\\\u17dc\\\\u17e0-\\\\u17e9\\\\u1810-\\\\u1819\\\\u1820-\\\\u1877\\\\u1880-\\\\u18a8\\\\u18aa\\\\u18b0-\\\\u18f5\\\\u1900-\\\\u191e\\\\u1923-\\\\u1926\\\\u1929-\\\\u192b\\\\u1930\\\\u1931\\\\u1933-\\\\u1938\\\\u1946-\\\\u196d\\\\u1970-\\\\u1974\\\\u1980-\\\\u19ab\\\\u19b0-\\\\u19c9\\\\u19d0-\\\\u19da\\\\u1a00-\\\\u1a16\\\\u1a19\\\\u1a1a\\\\u1a1e-\\\\u1a55\\\\u1a57\\\\u1a61\\\\u1a63\\\\u1a64\\\\u1a6d-\\\\u1a72\\\\u1a80-\\\\u1a89\\\\u1a90-\\\\u1a99\\\\u1aa0-\\\\u1aad\\\\u1b04-\\\\u1b33\\\\u1b35\\\\u1b3b\\\\u1b3d-\\\\u1b41\\\\u1b43-\\\\u1b4b\\\\u1b50-\\\\u1b6a\\\\u1b74-\\\\u1b7c\\\\u1b82-\\\\u1ba1\\\\u1ba6\\\\u1ba7\\\\u1baa\\\\u1bae-\\\\u1be5\\\\u1be7\\\\u1bea-\\\\u1bec\\\\u1bee\\\\u1bf2\\\\u1bf3\\\\u1bfc-\\\\u1c2b\\\\u1c34\\\\u1c35\\\\u1c3b-\\\\u1c49\\\\u1c4d-\\\\u1c7f\\\\u1cc0-\\\\u1cc7\\\\u1cd3\\\\u1ce1\\\\u1ce9-\\\\u1cec\\\\u1cee-\\\\u1cf3\\\\u1cf5\\\\u1cf6\\\\u1d00-\\\\u1dbf\\\\u1e00-\\\\u1f15\\\\u1f18-\\\\u1f1d\\\\u1f20-\\\\u1f45\\\\u1f48-\\\\u1f4d\\\\u1f50-\\\\u1f57\\\\u1f59\\\\u1f5b\\\\u1f5d\\\\u1f5f-\\\\u1f7d\\\\u1f80-\\\\u1fb4\\\\u1fb6-\\\\u1fbc\\\\u1fbe\\\\u1fc2-\\\\u1fc4\\\\u1fc6-\\\\u1fcc\\\\u1fd0-\\\\u1fd3\\\\u1fd6-\\\\u1fdb\\\\u1fe0-\\\\u1fec\\\\u1ff2-\\\\u1ff4\\\\u1ff6-\\\\u1ffc\\\\u200e\\\\u2071\\\\u207f\\\\u2090-\\\\u209c\\\\u2102\\\\u2107\\\\u210a-\\\\u2113\\\\u2115\\\\u2119-\\\\u211d\\\\u2124\\\\u2126\\\\u2128\\\\u212a-\\\\u212d\\\\u212f-\\\\u2139\\\\u213c-\\\\u213f\\\\u2145-\\\\u2149\\\\u214e\\\\u214f\\\\u2160-\\\\u2188\\\\u2336-\\\\u237a\\\\u2395\\\\u249c-\\\\u24e9\\\\u26ac\\\\u2800-\\\\u28ff\\\\u2c00-\\\\u2c2e\\\\u2c30-\\\\u2c5e\\\\u2c60-\\\\u2ce4\\\\u2ceb-\\\\u2cee\\\\u2cf2\\\\u2cf3\\\\u2d00-\\\\u2d25\\\\u2d27\\\\u2d2d\\\\u2d30-\\\\u2d67\\\\u2d6f\\\\u2d70\\\\u2d80-\\\\u2d96\\\\u2da0-\\\\u2da6\\\\u2da8-\\\\u2dae\\\\u2db0-\\\\u2db6\\\\u2db8-\\\\u2dbe\\\\u2dc0-\\\\u2dc6\\\\u2dc8-\\\\u2dce\\\\u2dd0-\\\\u2dd6\\\\u2dd8-\\\\u2dde\\\\u3005-\\\\u3007\\\\u3021-\\\\u3029\\\\u302e\\\\u302f\\\\u3031-\\\\u3035\\\\u3038-\\\\u303c\\\\u3041-\\\\u3096\\\\u309d-\\\\u309f\\\\u30a1-\\\\u30fa\\\\u30fc-\\\\u30ff\\\\u3105-\\\\u312d\\\\u3131-\\\\u318e\\\\u3190-\\\\u31ba\\\\u31f0-\\\\u321c\\\\u3220-\\\\u324f\\\\u3260-\\\\u327b\\\\u327f-\\\\u32b0\\\\u32c0-\\\\u32cb\\\\u32d0-\\\\u32fe\\\\u3300-\\\\u3376\\\\u337b-\\\\u33dd\\\\u33e0-\\\\u33fe\\\\u3400-\\\\u4db5\\\\u4e00-\\\\u9fd5\\\\ua000-\\\\ua48c\\\\ua4d0-\\\\ua60c\\\\ua610-\\\\ua62b\\\\ua640-\\\\ua66e\\\\ua680-\\\\ua69d\\\\ua6a0-\\\\ua6ef\\\\ua6f2-\\\\ua6f7\\\\ua722-\\\\ua787\\\\ua789-\\\\ua7ad\\\\ua7b0-\\\\ua7b7\\\\ua7f7-\\\\ua801\\\\ua803-\\\\ua805\\\\ua807-\\\\ua80a\\\\ua80c-\\\\ua824\\\\ua827\\\\ua830-\\\\ua837\\\\ua840-\\\\ua873\\\\ua880-\\\\ua8c3\\\\ua8ce-\\\\ua8d9\\\\ua8f2-\\\\ua8fd\\\\ua900-\\\\ua925\\\\ua92e-\\\\ua946\\\\ua952\\\\ua953\\\\ua95f-\\\\ua97c\\\\ua983-\\\\ua9b2\\\\ua9b4\\\\ua9b5\\\\ua9ba\\\\ua9bb\\\\ua9bd-\\\\ua9cd\\\\ua9cf-\\\\ua9d9\\\\ua9de-\\\\ua9e4\\\\ua9e6-\\\\ua9fe\\\\uaa00-\\\\uaa28\\\\uaa2f\\\\uaa30\\\\uaa33\\\\uaa34\\\\uaa40-\\\\uaa42\\\\uaa44-\\\\uaa4b\\\\uaa4d\\\\uaa50-\\\\uaa59\\\\uaa5c-\\\\uaa7b\\\\uaa7d-\\\\uaaaf\\\\uaab1\\\\uaab5\\\\uaab6\\\\uaab9-\\\\uaabd\\\\uaac0\\\\uaac2\\\\uaadb-\\\\uaaeb\\\\uaaee-\\\\uaaf5\\\\uab01-\\\\uab06\\\\uab09-\\\\uab0e\\\\uab11-\\\\uab16\\\\uab20-\\\\uab26\\\\uab28-\\\\uab2e\\\\uab30-\\\\uab65\\\\uab70-\\\\uabe4\\\\uabe6\\\\uabe7\\\\uabe9-\\\\uabec\\\\uabf0-\\\\uabf9\\\\uac00-\\\\ud7a3\\\\ud7b0-\\\\ud7c6\\\\ud7cb-\\\\ud7fb\\\\ue000-\\\\ufa6d\\\\ufa70-\\\\ufad9\\\\ufb00-\\\\ufb06\\\\ufb13-\\\\ufb17\\\\uff21-\\\\uff3a\\\\uff41-\\\\uff5a\\\\uff66-\\\\uffbe\\\\uffc2-\\\\uffc7\\\\uffca-\\\\uffcf\\\\uffd2-\\\\uffd7\\\\uffda-\\\\uffdc]|\\\\ud800[\\\\udc00-\\\\udc0b]|\\\\ud800[\\\\udc0d-\\\\udc26]|\\\\ud800[\\\\udc28-\\\\udc3a]|\\\\ud800\\\\udc3c|\\\\ud800\\\\udc3d|\\\\ud800[\\\\udc3f-\\\\udc4d]|\\\\ud800[\\\\udc50-\\\\udc5d]|\\\\ud800[\\\\udc80-\\\\udcfa]|\\\\ud800\\\\udd00|\\\\ud800\\\\udd02|\\\\ud800[\\\\udd07-\\\\udd33]|\\\\ud800[\\\\udd37-\\\\udd3f]|\\\\ud800[\\\\uddd0-\\\\uddfc]|\\\\ud800[\\\\ude80-\\\\ude9c]|\\\\ud800[\\\\udea0-\\\\uded0]|\\\\ud800[\\\\udf00-\\\\udf23]|\\\\ud800[\\\\udf30-\\\\udf4a]|\\\\ud800[\\\\udf50-\\\\udf75]|\\\\ud800[\\\\udf80-\\\\udf9d]|\\\\ud800[\\\\udf9f-\\\\udfc3]|\\\\ud800[\\\\udfc8-\\\\udfd5]|\\\\ud801[\\\\udc00-\\\\udc9d]|\\\\ud801[\\\\udca0-\\\\udca9]|\\\\ud801[\\\\udd00-\\\\udd27]|\\\\ud801[\\\\udd30-\\\\udd63]|\\\\ud801\\\\udd6f|\\\\ud801[\\\\ude00-\\\\udf36]|\\\\ud801[\\\\udf40-\\\\udf55]|\\\\ud801[\\\\udf60-\\\\udf67]|\\\\ud804\\\\udc00|\\\\ud804[\\\\udc02-\\\\udc37]|\\\\ud804[\\\\udc47-\\\\udc4d]|\\\\ud804[\\\\udc66-\\\\udc6f]|\\\\ud804[\\\\udc82-\\\\udcb2]|\\\\ud804\\\\udcb7|\\\\ud804\\\\udcb8|\\\\ud804[\\\\udcbb-\\\\udcc1]|\\\\ud804[\\\\udcd0-\\\\udce8]|\\\\ud804[\\\\udcf0-\\\\udcf9]|\\\\ud804[\\\\udd03-\\\\udd26]|\\\\ud804\\\\udd2c|\\\\ud804[\\\\udd36-\\\\udd43]|\\\\ud804[\\\\udd50-\\\\udd72]|\\\\ud804[\\\\udd74-\\\\udd76]|\\\\ud804[\\\\udd82-\\\\uddb5]|\\\\ud804[\\\\uddbf-\\\\uddc9]|\\\\ud804\\\\uddcd|\\\\ud804[\\\\uddd0-\\\\udddf]|\\\\ud804[\\\\udde1-\\\\uddf4]|\\\\ud804[\\\\ude00-\\\\ude11]|\\\\ud804[\\\\ude13-\\\\ude2e]|\\\\ud804\\\\ude32|\\\\ud804\\\\ude33|\\\\ud804\\\\ude35|\\\\ud804[\\\\ude38-\\\\ude3d]|\\\\ud804[\\\\ude80-\\\\ude86]|\\\\ud804\\\\ude88|\\\\ud804[\\\\ude8a-\\\\ude8d]|\\\\ud804[\\\\ude8f-\\\\ude9d]|\\\\ud804[\\\\ude9f-\\\\udea9]|\\\\ud804[\\\\udeb0-\\\\udede]|\\\\ud804[\\\\udee0-\\\\udee2]|\\\\ud804[\\\\udef0-\\\\udef9]|\\\\ud804\\\\udf02|\\\\ud804\\\\udf03|\\\\ud804[\\\\udf05-\\\\udf0c]|\\\\ud804\\\\udf0f|\\\\ud804\\\\udf10|\\\\ud804[\\\\udf13-\\\\udf28]|\\\\ud804[\\\\udf2a-\\\\udf30]|\\\\ud804\\\\udf32|\\\\ud804\\\\udf33|\\\\ud804[\\\\udf35-\\\\udf39]|\\\\ud804[\\\\udf3d-\\\\udf3f]|\\\\ud804[\\\\udf41-\\\\udf44]|\\\\ud804\\\\udf47|\\\\ud804\\\\udf48|\\\\ud804[\\\\udf4b-\\\\udf4d]|\\\\ud804\\\\udf50|\\\\ud804\\\\udf57|\\\\ud804[\\\\udf5d-\\\\udf63]|\\\\ud805[\\\\udc80-\\\\udcb2]|\\\\ud805\\\\udcb9|\\\\ud805[\\\\udcbb-\\\\udcbe]|\\\\ud805\\\\udcc1|\\\\ud805[\\\\udcc4-\\\\udcc7]|\\\\ud805[\\\\udcd0-\\\\udcd9]|\\\\ud805[\\\\udd80-\\\\uddb1]|\\\\ud805[\\\\uddb8-\\\\uddbb]|\\\\ud805\\\\uddbe|\\\\ud805[\\\\uddc1-\\\\udddb]|\\\\ud805[\\\\ude00-\\\\ude32]|\\\\ud805\\\\ude3b|\\\\ud805\\\\ude3c|\\\\ud805\\\\ude3e|\\\\ud805[\\\\ude41-\\\\ude44]|\\\\ud805[\\\\ude50-\\\\ude59]|\\\\ud805[\\\\ude80-\\\\udeaa]|\\\\ud805\\\\udeac|\\\\ud805\\\\udeae|\\\\ud805\\\\udeaf|\\\\ud805\\\\udeb6|\\\\ud805[\\\\udec0-\\\\udec9]|\\\\ud805[\\\\udf00-\\\\udf19]|\\\\ud805\\\\udf20|\\\\ud805\\\\udf21|\\\\ud805\\\\udf26|\\\\ud805[\\\\udf30-\\\\udf3f]|\\\\ud806[\\\\udca0-\\\\udcf2]|\\\\ud806\\\\udcff|\\\\ud806[\\\\udec0-\\\\udef8]|\\\\ud808[\\\\udc00-\\\\udf99]|\\\\ud809[\\\\udc00-\\\\udc6e]|\\\\ud809[\\\\udc70-\\\\udc74]|\\\\ud809[\\\\udc80-\\\\udd43]|\\\\ud80c[\\\\udc00-\\\\udfff]|\\\\ud80d[\\\\udc00-\\\\udc2e]|\\\\ud811[\\\\udc00-\\\\ude46]|\\\\ud81a[\\\\udc00-\\\\ude38]|\\\\ud81a[\\\\ude40-\\\\ude5e]|\\\\ud81a[\\\\ude60-\\\\ude69]|\\\\ud81a\\\\ude6e|\\\\ud81a\\\\ude6f|\\\\ud81a[\\\\uded0-\\\\udeed]|\\\\ud81a\\\\udef5|\\\\ud81a[\\\\udf00-\\\\udf2f]|\\\\ud81a[\\\\udf37-\\\\udf45]|\\\\ud81a[\\\\udf50-\\\\udf59]|\\\\ud81a[\\\\udf5b-\\\\udf61]|\\\\ud81a[\\\\udf63-\\\\udf77]|\\\\ud81a[\\\\udf7d-\\\\udf8f]|\\\\ud81b[\\\\udf00-\\\\udf44]|\\\\ud81b[\\\\udf50-\\\\udf7e]|\\\\ud81b[\\\\udf93-\\\\udf9f]|\\\\ud82c\\\\udc00|\\\\ud82c\\\\udc01|\\\\ud82f[\\\\udc00-\\\\udc6a]|\\\\ud82f[\\\\udc70-\\\\udc7c]|\\\\ud82f[\\\\udc80-\\\\udc88]|\\\\ud82f[\\\\udc90-\\\\udc99]|\\\\ud82f\\\\udc9c|\\\\ud82f\\\\udc9f|\\\\ud834[\\\\udc00-\\\\udcf5]|\\\\ud834[\\\\udd00-\\\\udd26]|\\\\ud834[\\\\udd29-\\\\udd66]|\\\\ud834[\\\\udd6a-\\\\udd72]|\\\\ud834\\\\udd83|\\\\ud834\\\\udd84|\\\\ud834[\\\\udd8c-\\\\udda9]|\\\\ud834[\\\\uddae-\\\\udde8]|\\\\ud834[\\\\udf60-\\\\udf71]|\\\\ud835[\\\\udc00-\\\\udc54]|\\\\ud835[\\\\udc56-\\\\udc9c]|\\\\ud835\\\\udc9e|\\\\ud835\\\\udc9f|\\\\ud835\\\\udca2|\\\\ud835\\\\udca5|\\\\ud835\\\\udca6|\\\\ud835[\\\\udca9-\\\\udcac]|\\\\ud835[\\\\udcae-\\\\udcb9]|\\\\ud835\\\\udcbb|\\\\ud835[\\\\udcbd-\\\\udcc3]|\\\\ud835[\\\\udcc5-\\\\udd05]|\\\\ud835[\\\\udd07-\\\\udd0a]|\\\\ud835[\\\\udd0d-\\\\udd14]|\\\\ud835[\\\\udd16-\\\\udd1c]|\\\\ud835[\\\\udd1e-\\\\udd39]|\\\\ud835[\\\\udd3b-\\\\udd3e]|\\\\ud835[\\\\udd40-\\\\udd44]|\\\\ud835\\\\udd46|\\\\ud835[\\\\udd4a-\\\\udd50]|\\\\ud835[\\\\udd52-\\\\udea5]|\\\\ud835[\\\\udea8-\\\\udeda]|\\\\ud835[\\\\udedc-\\\\udf14]|\\\\ud835[\\\\udf16-\\\\udf4e]|\\\\ud835[\\\\udf50-\\\\udf88]|\\\\ud835[\\\\udf8a-\\\\udfc2]|\\\\ud835[\\\\udfc4-\\\\udfcb]|\\\\ud836[\\\\udc00-\\\\uddff]|\\\\ud836[\\\\ude37-\\\\ude3a]|\\\\ud836[\\\\ude6d-\\\\ude74]|\\\\ud836[\\\\ude76-\\\\ude83]|\\\\ud836[\\\\ude85-\\\\ude8b]|\\\\ud83c[\\\\udd10-\\\\udd2e]|\\\\ud83c[\\\\udd30-\\\\udd69]|\\\\ud83c[\\\\udd70-\\\\udd9a]|\\\\ud83c[\\\\udde6-\\\\ude02]|\\\\ud83c[\\\\ude10-\\\\ude3a]|\\\\ud83c[\\\\ude40-\\\\ude48]|\\\\ud83c\\\\ude50|\\\\ud83c\\\\ude51|[\\\\ud840-\\\\ud868][\\\\udc00-\\\\udfff]|\\\\ud869[\\\\udc00-\\\\uded6]|\\\\ud869[\\\\udf00-\\\\udfff]|[\\\\ud86a-\\\\ud86c][\\\\udc00-\\\\udfff]|\\\\ud86d[\\\\udc00-\\\\udf34]|\\\\ud86d[\\\\udf40-\\\\udfff]|\\\\ud86e[\\\\udc00-\\\\udc1d]|\\\\ud86e[\\\\udc20-\\\\udfff]|[\\\\ud86f-\\\\ud872][\\\\udc00-\\\\udfff]|\\\\ud873[\\\\udc00-\\\\udea1]|\\\\ud87e[\\\\udc00-\\\\ude1d]|[\\\\udb80-\\\\udbbe][\\\\udc00-\\\\udfff]|\\\\udbbf[\\\\udc00-\\\\udffd]|[\\\\udbc0-\\\\udbfe][\\\\udc00-\\\\udfff]|\\\\udbff[\\\\udc00-\\\\udffd]'+\\n')|('+\\n'[\\\\u0590\\\\u05be\\\\u05c0\\\\u05c3\\\\u05c6\\\\u05c8-\\\\u05ff\\\\u07c0-\\\\u07ea\\\\u07f4\\\\u07f5\\\\u07fa-\\\\u0815\\\\u081a\\\\u0824\\\\u0828\\\\u082e-\\\\u0858\\\\u085c-\\\\u089f\\\\u200f\\\\ufb1d\\\\ufb1f-\\\\ufb28\\\\ufb2a-\\\\ufb4f\\\\u0608\\\\u060b\\\\u060d\\\\u061b-\\\\u064a\\\\u066d-\\\\u066f\\\\u0671-\\\\u06d5\\\\u06e5\\\\u06e6\\\\u06ee\\\\u06ef\\\\u06fa-\\\\u0710\\\\u0712-\\\\u072f\\\\u074b-\\\\u07a5\\\\u07b1-\\\\u07bf\\\\u08a0-\\\\u08e2\\\\ufb50-\\\\ufd3d\\\\ufd40-\\\\ufdcf\\\\ufdf0-\\\\ufdfc\\\\ufdfe\\\\ufdff\\\\ufe70-\\\\ufefe]|\\\\ud802[\\\\udc00-\\\\udd1e]|\\\\ud802[\\\\udd20-\\\\ude00]|\\\\ud802\\\\ude04|\\\\ud802[\\\\ude07-\\\\ude0b]|\\\\ud802[\\\\ude10-\\\\ude37]|\\\\ud802[\\\\ude3b-\\\\ude3e]|\\\\ud802[\\\\ude40-\\\\udee4]|\\\\ud802[\\\\udee7-\\\\udf38]|\\\\ud802[\\\\udf40-\\\\udfff]|\\\\ud803[\\\\udc00-\\\\ude5f]|\\\\ud803[\\\\ude7f-\\\\udfff]|\\\\ud83a[\\\\udc00-\\\\udccf]|\\\\ud83a[\\\\udcd7-\\\\udfff]|\\\\ud83b[\\\\udc00-\\\\uddff]|\\\\ud83b[\\\\udf00-\\\\udfff]|\\\\ud83b[\\\\udf00-\\\\udfff]|\\\\ud83b[\\\\udf00-\\\\udfff]|\\\\ud83b[\\\\udf00-\\\\udfff]|\\\\ud83b[\\\\udf00-\\\\udfff]|\\\\ud83b[\\\\udf00-\\\\udfff]|\\\\ud83b[\\\\udf00-\\\\udfff]|\\\\ud83b[\\\\udf00-\\\\udfff]|\\\\ud83b[\\\\udf00-\\\\udfff]|\\\\ud83b[\\\\udf00-\\\\udfff]|\\\\ud83b[\\\\udf00-\\\\udfff]|\\\\ud83b[\\\\udf00-\\\\udfff]|\\\\ud83b[\\\\udf00-\\\\udfff]|\\\\ud83b[\\\\ude00-\\\\udeef]|\\\\ud83b[\\\\udef2-\\\\udeff]'+\\n')'+')');function strongDirFromContent(text){const m=text.match(strongDirRegExp);if(!m){return null;}if(m[2]===undefined){return'ltr';}return'rtl';}HtmlEmitter.prototype={concat:function(nodes){const $span=$('<span>').addClass('mediaWiki_htmlEmitter');Array.from(nodes).forEach((node)=>{appendWithoutParsing($span,node);});return $span;},replace:function(nodes,replacements){const index=parseInt(nodes[0],10);if(index<replacements.length){if(typeof replacements[index]==='object'){if(!replacements[index].mwJQueryMsgHasAlreadyBeenUsedAsAReplacement){Object.defineProperty(replacements[index],'mwJQueryMsgHasAlreadyBeenUsedAsAReplacement',{value:true,enumerable:false,writable:false});return replacements[index];}if(typeof replacements[index].clone==='function'){return replacements[index].clone(true);}if(typeof replacements[index].cloneNode==='function'){return replacements[index].cloneNode(true);}return replacements[index];}return replacements[index];}else{return'$'+(index+1);}},wikilink:function(nodes){\\nlet page=textify(nodes[0]);if(page.startsWith(':')){page=page.slice(1);}const title=new mw.Title(page);let anchor;if(nodes.length===1){anchor=page;}else{anchor=nodes[1];}const $el=$('<a>').attr({title:title.getPrefixedText()||null,href:title.getUrl()});return appendWithoutParsing($el,anchor);},htmlattributes:function(nodes){const mapping={};for(let i=0,len=nodes.length;i<len;i+=2){mapping[nodes[i]]=decodePrimaryHtmlEntities(nodes[i+1]);}return mapping;},htmlelement:function(nodes){const tagName=nodes.shift();const attributes=nodes.shift();const contents=nodes;const $element=$(document.createElement(tagName)).attr(attributes);return appendWithoutParsing($element,contents);},extlink:function(nodes){const arg=nodes[0],contents=nodes[1];let $el;if(arg instanceof $&&!arg.hasClass('mediaWiki_htmlEmitter')){$el=arg;}else{$el=$('<a>');if(typeof arg==='function'){$el.attr({role:'button',tabindex:0}).on('click keypress',function(e){if(e.type==='click'||e.type==='keypress'&&e.which===13){arg.call(this,e);\\n}});}else{const target=textify(arg);if(target.search(new RegExp('^(/|'+mw.config.get('wgUrlProtocols')+')'))!==-1){$el.attr('href',target);const externalRegex='^(?:'+mw.config.get('wgArticlePath').replace(/\\\\$1/g,'.+?')+'|'+mw.config.get('wgScript')+'.+?)$';if(target.search(externalRegex)===-1){$el.addClass('external');}}else{mw.log('External link in message had illegal target '+target);return appendWithoutParsing($('<span>'),['['+target+' '].concat(contents).concat(']')).contents();}}}return appendWithoutParsing($el.empty(),contents);},'#formal':function(nodes){const formalityIndex=this.language.getData(mw.config.get('wgUserLanguage'),'formalityIndex');if(nodes.length===0){return'';}else if(nodes.length===1){return nodes[0];}return nodes[formalityIndex];},plural:function(nodes){const explicitPluralForms={};const count=parseFloat(this.language.convertNumber(textify(nodes[0]),true));let forms=nodes.slice(1);for(let formIndex=0;formIndex<forms.length;formIndex++){const form=forms[formIndex];\\nif(form instanceof $&&form.hasClass('mediaWiki_htmlEmitter')){const firstChild=form.contents().get(0);if(firstChild&&firstChild.nodeType===Node.TEXT_NODE){const firstChildText=firstChild.textContent;if(/^\\\\d+=/.test(firstChildText)){const explicitPluralFormNumber=parseInt(firstChildText.split(/=/)[0],10);firstChild.textContent=firstChildText.slice(firstChildText.indexOf('=')+1);explicitPluralForms[explicitPluralFormNumber]=form;forms[formIndex]=undefined;}}}else if(/^\\\\d+=/.test(form)){const explicitPluralFormNumber=parseInt(form.split(/=/)[0],10);explicitPluralForms[explicitPluralFormNumber]=form.slice(form.indexOf('=')+1);forms[formIndex]=undefined;}}forms=$.map(forms,(f)=>f);return this.language.convertPlural(count,forms,explicitPluralForms);},gender:function(nodes){const forms=nodes.slice(1);let maybeUser=nodes[0];if(maybeUser===''){maybeUser=mw.user;}let gender;if(maybeUser&&maybeUser.options instanceof mw.Map){gender=maybeUser.options.get('gender');}else{gender=textify(maybeUser);}\\nreturn this.language.gender(gender,forms);},bidi:function(nodes){const dir=strongDirFromContent(nodes[0]);if(dir==='ltr'){return'\\\\u202A'+nodes[0]+'\\\\u202C';}if(dir==='rtl'){return'\\\\u202B'+nodes[0]+'\\\\u202C';}return nodes[0];},grammar:function(nodes){const form=nodes[0],word=nodes[1];if(typeof form==='string'&&typeof word==='string'){return this.language.convertGrammar(word,form);}return word;},int:function(nodes){const msg=textify(nodes[0]);return getMessageFunction()(mwString.lcFirst(msg));},ns:function(nodes){let ns=textify(nodes[0]).trim();if(!/^\\\\d+$/.test(ns)){ns=mw.config.get('wgNamespaceIds')[ns.replace(/ /g,'_').toLowerCase()];}ns=mw.config.get('wgFormattedNamespaces')[ns];return ns||'';},formatnum:function(nodes){const isInteger=!!nodes[1]&&nodes[1]==='R',number=nodes[0];if(typeof number==='string'||typeof number==='number'){return this.language.convertNumber(number,isInteger);}return number;},fullurl:function(nodes){const targetPage=textify(nodes[0]),queryObject={};let queryStrings=nodes[1];\\nif(queryStrings){queryStrings=textify(queryStrings);queryStrings=new URLSearchParams(queryStrings);for(const[key,value]of queryStrings.entries()){queryObject[key]=value;}}return mw.config.get('wgServer')+util.getUrl(targetPage,queryObject);},lc:function(nodes){return textify(nodes[0]).toLowerCase();},uc:function(nodes){return textify(nodes[0]).toUpperCase();},lcfirst:function(nodes){const text=textify(nodes[0]);return mwString.lcFirst(text);},ucfirst:function(nodes){const text=textify(nodes[0]);return mwString.ucFirst(text);}};$.fn.msg=getPlugin();const oldParser=mw.Message.prototype.parser;mw.Message.prototype.parser=function(format){if(format==='plain'||(!/\\\\{\\\\{|[<>[&]/.test(this.map.get(this.key))&&!this.parameters.some((param)=>param===Object(param)))){return oldParser.call(this,format);}if(!Object.prototype.hasOwnProperty.call(this.map,format)){this.map[format]=getMessageFunction({messages:this.map,format:format});}return this.map[format](this.key,this.parameters);};mw.Message.prototype.parseDom=(function(){\\nlet failableParserFn;return function(){if(!failableParserFn){failableParserFn=getFailableParserFn();}const $result=failableParserFn([this.key,this.parameters]);return $result.contents();};}());mw.Message.prototype.isParseable=function(){const parser=new Parser();try{parser.parse(this.key,this.parameters);return true;}catch(e){return false;}};mw.jqueryMsg={Parser};mw.log.deprecate(mw,'jqueryMsg',mw.jqueryMsg,'mw.jqueryMsg is a @private library.');module.exports={test:{getMessageFunction,setMessageFunction,getParserDefaults,setParserDefaults,Parser}};\\n},\\\"parserDefaults.json\\\":{\\\"allowedHtmlElements\\\":[\\\"b\\\",\\\"bdi\\\",\\\"del\\\",\\\"i\\\",\\\"ins\\\",\\\"u\\\",\\\"font\\\",\\\"big\\\",\\\"small\\\",\\\"sub\\\",\\\"sup\\\",\\\"h1\\\",\\\"h2\\\",\\\"h3\\\",\\\"h4\\\",\\\"h5\\\",\\\"h6\\\",\\\"cite\\\",\\\"code\\\",\\\"em\\\",\\\"s\\\",\\\"strike\\\",\\\"strong\\\",\\\"tt\\\",\\\"var\\\",\\\"div\\\",\\\"center\\\",\\\"blockquote\\\",\\\"ol\\\",\\\"ul\\\",\\\"dl\\\",\\\"table\\\",\\\"caption\\\",\\\"pre\\\",\\\"ruby\\\",\\\"rb\\\",\\\"rp\\\",\\\"rt\\\",\\\"rtc\\\",\\\"p\\\",\\\"span\\\",\\\"abbr\\\",\\\"dfn\\\",\\\"kbd\\\",\\\"samp\\\",\\\"data\\\",\\\"time\\\",\\\"mark\\\",\\\"li\\\",\\\"dt\\\",\\\"dd\\\"],\\\"magic\\\":{\\\"SITENAME\\\":\\\"Wikitech\\\"}}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.jqueryMsg&skin=vector-2022&version=1whdd\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.jqueryMsg&skin=vector-2022&sourcemap=1&version=1whdd\",\"moment@1ylls\":\"mw.loader.impl(function(){return[\\\"moment@1ylls\\\",function($,jQuery,require,module){;(function(global,factory){typeof exports==='object'&&typeof module!=='undefined'?module.exports=factory():typeof define==='function'&&define.amd?define(factory):global.moment=factory()}(this,(function(){'use strict';var hookCallback;function hooks(){return hookCallback.apply(null,arguments);}function setHookCallback(callback){hookCallback=callback;}function isArray(input){return(input instanceof Array||Object.prototype.toString.call(input)==='[object Array]');}function isObject(input){return(input!=null&&Object.prototype.toString.call(input)==='[object Object]');}function hasOwnProp(a,b){return Object.prototype.hasOwnProperty.call(a,b);}function isObjectEmpty(obj){if(Object.getOwnPropertyNames){return Object.getOwnPropertyNames(obj).length===0;}else{var k;for(k in obj){if(hasOwnProp(obj,k)){return false;}}return true;}}function isUndefined(input){return input===void 0;}function isNumber(input){return(typeof input==='number'||Object.prototype.toString.call(input)==='[object Number]');}\\nfunction isDate(input){return(input instanceof Date||Object.prototype.toString.call(input)==='[object Date]');}function map(arr,fn){var res=[],i,arrLen=arr.length;for(i=0;i<arrLen;++i){res.push(fn(arr[i],i));}return res;}function extend(a,b){for(var i in b){if(hasOwnProp(b,i)){a[i]=b[i];}}if(hasOwnProp(b,'toString')){a.toString=b.toString;}if(hasOwnProp(b,'valueOf')){a.valueOf=b.valueOf;}return a;}function createUTC(input,format,locale,strict){return createLocalOrUTC(input,format,locale,strict,true).utc();}function defaultParsingFlags(){return{empty:false,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:false,invalidEra:null,invalidMonth:null,invalidFormat:false,userInvalidated:false,iso:false,parsedDateParts:[],era:null,meridiem:null,rfc2822:false,weekdayMismatch:false,};}function getParsingFlags(m){if(m._pf==null){m._pf=defaultParsingFlags();}return m._pf;}var some;if(Array.prototype.some){some=Array.prototype.some;}else{some=function(fun){var t=Object(this),len=t.length>>>0,\\ni;for(i=0;i<len;i++){if(i in t&&fun.call(this,t[i],i,t)){return true;}}return false;};}function isValid(m){var flags=null,parsedParts=false,isNowValid=m._d&&!isNaN(m._d.getTime());if(isNowValid){flags=getParsingFlags(m);parsedParts=some.call(flags.parsedDateParts,function(i){return i!=null;});isNowValid=flags.overflow<0&&!flags.empty&&!flags.invalidEra&&!flags.invalidMonth&&!flags.invalidWeekday&&!flags.weekdayMismatch&&!flags.nullInput&&!flags.invalidFormat&&!flags.userInvalidated&&(!flags.meridiem||(flags.meridiem&&parsedParts));if(m._strict){isNowValid=isNowValid&&flags.charsLeftOver===0&&flags.unusedTokens.length===0&&flags.bigHour===undefined;}}if(Object.isFrozen==null||!Object.isFrozen(m)){m._isValid=isNowValid;}else{return isNowValid;}return m._isValid;}function createInvalid(flags){var m=createUTC(NaN);if(flags!=null){extend(getParsingFlags(m),flags);}else{getParsingFlags(m).userInvalidated=true;}return m;}var momentProperties=(hooks.momentProperties=[]),updateInProgress=false;\\nfunction copyConfig(to,from){var i,prop,val,momentPropertiesLen=momentProperties.length;if(!isUndefined(from._isAMomentObject)){to._isAMomentObject=from._isAMomentObject;}if(!isUndefined(from._i)){to._i=from._i;}if(!isUndefined(from._f)){to._f=from._f;}if(!isUndefined(from._l)){to._l=from._l;}if(!isUndefined(from._strict)){to._strict=from._strict;}if(!isUndefined(from._tzm)){to._tzm=from._tzm;}if(!isUndefined(from._isUTC)){to._isUTC=from._isUTC;}if(!isUndefined(from._offset)){to._offset=from._offset;}if(!isUndefined(from._pf)){to._pf=getParsingFlags(from);}if(!isUndefined(from._locale)){to._locale=from._locale;}if(momentPropertiesLen>0){for(i=0;i<momentPropertiesLen;i++){prop=momentProperties[i];val=from[prop];if(!isUndefined(val)){to[prop]=val;}}}return to;}function Moment(config){copyConfig(this,config);this._d=new Date(config._d!=null?config._d.getTime():NaN);if(!this.isValid()){this._d=new Date(NaN);}if(updateInProgress===false){updateInProgress=true;hooks.updateOffset(this);\\nupdateInProgress=false;}}function isMoment(obj){return(obj instanceof Moment||(obj!=null&&obj._isAMomentObject!=null));}function warn(msg){if(hooks.suppressDeprecationWarnings===false&&typeof console!=='undefined'&&console.warn){console.warn('Deprecation warning: '+msg);}}function deprecate(msg,fn){var firstTime=true;return extend(function(){if(hooks.deprecationHandler!=null){hooks.deprecationHandler(null,msg);}if(firstTime){var args=[],arg,i,key,argLen=arguments.length;for(i=0;i<argLen;i++){arg='';if(typeof arguments[i]==='object'){arg+='\\\\n['+i+'] ';for(key in arguments[0]){if(hasOwnProp(arguments[0],key)){arg+=key+': '+arguments[0][key]+', ';}}arg=arg.slice(0,-2);}else{arg=arguments[i];}args.push(arg);}warn(msg+'\\\\nArguments: '+Array.prototype.slice.call(args).join('')+'\\\\n'+new Error().stack);firstTime=false;}return fn.apply(this,arguments);},fn);}var deprecations={};function deprecateSimple(name,msg){if(hooks.deprecationHandler!=null){hooks.deprecationHandler(name,msg);}if(!deprecations[name]){\\nwarn(msg);deprecations[name]=true;}}hooks.suppressDeprecationWarnings=false;hooks.deprecationHandler=null;function isFunction(input){return((typeof Function!=='undefined'&&input instanceof Function)||Object.prototype.toString.call(input)==='[object Function]');}function set(config){var prop,i;for(i in config){if(hasOwnProp(config,i)){prop=config[i];if(isFunction(prop)){this[i]=prop;}else{this['_'+i]=prop;}}}this._config=config;this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+'|'+/\\\\d{1,2}/.source);}function mergeConfigs(parentConfig,childConfig){var res=extend({},parentConfig),prop;for(prop in childConfig){if(hasOwnProp(childConfig,prop)){if(isObject(parentConfig[prop])&&isObject(childConfig[prop])){res[prop]={};extend(res[prop],parentConfig[prop]);extend(res[prop],childConfig[prop]);}else if(childConfig[prop]!=null){res[prop]=childConfig[prop];}else{delete res[prop];}}}for(prop in parentConfig){if(hasOwnProp(parentConfig,prop)&&\\n!hasOwnProp(childConfig,prop)&&isObject(parentConfig[prop])){res[prop]=extend({},res[prop]);}}return res;}function Locale(config){if(config!=null){this.set(config);}}var keys;if(Object.keys){keys=Object.keys;}else{keys=function(obj){var i,res=[];for(i in obj){if(hasOwnProp(obj,i)){res.push(i);}}return res;};}var defaultCalendar={sameDay:'[Today at] LT',nextDay:'[Tomorrow at] LT',nextWeek:'dddd [at] LT',lastDay:'[Yesterday at] LT',lastWeek:'[Last] dddd [at] LT',sameElse:'L',};function calendar(key,mom,now){var output=this._calendar[key]||this._calendar['sameElse'];return isFunction(output)?output.call(mom,now):output;}function zeroFill(number,targetLength,forceSign){var absNumber=''+Math.abs(number),zerosToFill=targetLength-absNumber.length,sign=number>=0;return((sign?(forceSign?'+':''):'-')+Math.pow(10,Math.max(0,zerosToFill)).toString().substr(1)+absNumber);}var formattingTokens=\\n/(\\\\[[^\\\\[]*\\\\])|(\\\\\\\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,localFormattingTokens=/(\\\\[[^\\\\[]*\\\\])|(\\\\\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g,formatFunctions={},formatTokenFunctions={};function addFormatToken(token,padded,ordinal,callback){var func=callback;if(typeof callback==='string'){func=function(){return this[callback]();};}if(token){formatTokenFunctions[token]=func;}if(padded){formatTokenFunctions[padded[0]]=function(){return zeroFill(func.apply(this,arguments),padded[1],padded[2]);};}if(ordinal){formatTokenFunctions[ordinal]=function(){return this.localeData().ordinal(func.apply(this,arguments),token);};}}function removeFormattingTokens(input){if(input.match(/\\\\[[\\\\s\\\\S]/)){return input.replace(/^\\\\[|\\\\]$/g,'');}return input.replace(/\\\\\\\\/g,'');}function makeFormatFunction(format){var array=format.match(formattingTokens),i,length;for(i=0,length=array.length;i<length;i++){\\nif(formatTokenFunctions[array[i]]){array[i]=formatTokenFunctions[array[i]];}else{array[i]=removeFormattingTokens(array[i]);}}return function(mom){var output='',i;for(i=0;i<length;i++){output+=isFunction(array[i])?array[i].call(mom,format):array[i];}return output;};}function formatMoment(m,format){if(!m.isValid()){return m.localeData().invalidDate();}format=expandFormat(format,m.localeData());formatFunctions[format]=formatFunctions[format]||makeFormatFunction(format);return formatFunctions[format](m);}function expandFormat(format,locale){var i=5;function replaceLongDateFormatTokens(input){return locale.longDateFormat(input)||input;}localFormattingTokens.lastIndex=0;while(i>=0&&localFormattingTokens.test(format)){format=format.replace(localFormattingTokens,replaceLongDateFormatTokens);localFormattingTokens.lastIndex=0;i-=1;}return format;}var defaultLongDateFormat={LTS:'h:mm:ss A',LT:'h:mm A',L:'MM/DD/YYYY',LL:'MMMM D, YYYY',LLL:'MMMM D, YYYY h:mm A',LLLL:'dddd, MMMM D, YYYY h:mm A',};\\nfunction longDateFormat(key){var format=this._longDateFormat[key],formatUpper=this._longDateFormat[key.toUpperCase()];if(format||!formatUpper){return format;}this._longDateFormat[key]=formatUpper.match(formattingTokens).map(function(tok){if(tok==='MMMM'||tok==='MM'||tok==='DD'||tok==='dddd'){return tok.slice(1);}return tok;}).join('');return this._longDateFormat[key];}var defaultInvalidDate='Invalid date';function invalidDate(){return this._invalidDate;}var defaultOrdinal='%d',defaultDayOfMonthOrdinalParse=/\\\\d{1,2}/;function ordinal(number){return this._ordinal.replace('%d',number);}var defaultRelativeTime={future:'in %s',past:'%s ago',s:'a few seconds',ss:'%d seconds',m:'a minute',mm:'%d minutes',h:'an hour',hh:'%d hours',d:'a day',dd:'%d days',w:'a week',ww:'%d weeks',M:'a month',MM:'%d months',y:'a year',yy:'%d years',};function relativeTime(number,withoutSuffix,string,isFuture){var output=this._relativeTime[string];return isFunction(output)?output(number,withoutSuffix,string,isFuture)\\n:output.replace(/%d/i,number);}function pastFuture(diff,output){var format=this._relativeTime[diff>0?'future':'past'];return isFunction(format)?format(output):format.replace(/%s/i,output);}var aliases={D:'date',dates:'date',date:'date',d:'day',days:'day',day:'day',e:'weekday',weekdays:'weekday',weekday:'weekday',E:'isoWeekday',isoweekdays:'isoWeekday',isoweekday:'isoWeekday',DDD:'dayOfYear',dayofyears:'dayOfYear',dayofyear:'dayOfYear',h:'hour',hours:'hour',hour:'hour',ms:'millisecond',milliseconds:'millisecond',millisecond:'millisecond',m:'minute',minutes:'minute',minute:'minute',M:'month',months:'month',month:'month',Q:'quarter',quarters:'quarter',quarter:'quarter',s:'second',seconds:'second',second:'second',gg:'weekYear',weekyears:'weekYear',weekyear:'weekYear',GG:'isoWeekYear',isoweekyears:'isoWeekYear',isoweekyear:'isoWeekYear',w:'week',weeks:'week',week:'week',W:'isoWeek',isoweeks:'isoWeek',isoweek:'isoWeek',y:'year',years:'year',year:'year',};function normalizeUnits(units){return typeof units==='string'\\n?aliases[units]||aliases[units.toLowerCase()]:undefined;}function normalizeObjectUnits(inputObject){var normalizedInput={},normalizedProp,prop;for(prop in inputObject){if(hasOwnProp(inputObject,prop)){normalizedProp=normalizeUnits(prop);if(normalizedProp){normalizedInput[normalizedProp]=inputObject[prop];}}}return normalizedInput;}var priorities={date:9,day:11,weekday:11,isoWeekday:11,dayOfYear:4,hour:13,millisecond:16,minute:14,month:8,quarter:7,second:15,weekYear:1,isoWeekYear:1,week:5,isoWeek:5,year:1,};function getPrioritizedUnits(unitsObj){var units=[],u;for(u in unitsObj){if(hasOwnProp(unitsObj,u)){units.push({unit:u,priority:priorities[u]});}}units.sort(function(a,b){return a.priority-b.priority;});return units;}var match1=/\\\\d/,match2=/\\\\d\\\\d/,match3=/\\\\d{3}/,match4=/\\\\d{4}/,match6=/[+-]?\\\\d{6}/,match1to2=/\\\\d\\\\d?/,match3to4=/\\\\d\\\\d\\\\d\\\\d?/,match5to6=/\\\\d\\\\d\\\\d\\\\d\\\\d\\\\d?/,match1to3=/\\\\d{1,3}/,match1to4=/\\\\d{1,4}/,match1to6=/[+-]?\\\\d{1,6}/,matchUnsigned=/\\\\d+/,matchSigned=/[+-]?\\\\d+/,matchOffset=/Z|[+-]\\\\d\\\\d:?\\\\d\\\\d/gi,\\nmatchShortOffset=/Z|[+-]\\\\d\\\\d(?::?\\\\d\\\\d)?/gi,matchTimestamp=/[+-]?\\\\d+(\\\\.\\\\d{1,3})?/,matchWord=/[0-9]{0,256}['a-z\\\\u00A0-\\\\u05FF\\\\u0700-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFF07\\\\uFF10-\\\\uFFEF]{1,256}|[\\\\u0600-\\\\u06FF\\\\/]{1,256}(\\\\s*?[\\\\u0600-\\\\u06FF]{1,256}){1,2}/i,match1to2NoLeadingZero=/^[1-9]\\\\d?/,match1to2HasZero=/^([1-9]\\\\d|\\\\d)/,regexes;regexes={};function addRegexToken(token,regex,strictRegex){regexes[token]=isFunction(regex)?regex:function(isStrict,localeData){return isStrict&&strictRegex?strictRegex:regex;};}function getParseRegexForToken(token,config){if(!hasOwnProp(regexes,token)){return new RegExp(unescapeFormat(token));}return regexes[token](config._strict,config._locale);}function unescapeFormat(s){return regexEscape(s.replace('\\\\\\\\','').replace(/\\\\\\\\(\\\\[)|\\\\\\\\(\\\\])|\\\\[([^\\\\]\\\\[]*)\\\\]|\\\\\\\\(.)/g,function(matched,p1,p2,p3,p4){return p1||p2||p3||p4;}));}function regexEscape(s){return s.replace(/[-\\\\/\\\\\\\\^$*+?.()|[\\\\]{}]/g,'\\\\\\\\$&');}function absFloor(number){if(number<0){return Math.ceil(number)||0;}else{return Math.floor(number);\\n}}function toInt(argumentForCoercion){var coercedNumber=+argumentForCoercion,value=0;if(coercedNumber!==0&&isFinite(coercedNumber)){value=absFloor(coercedNumber);}return value;}var tokens={};function addParseToken(token,callback){var i,func=callback,tokenLen;if(typeof token==='string'){token=[token];}if(isNumber(callback)){func=function(input,array){array[callback]=toInt(input);};}tokenLen=token.length;for(i=0;i<tokenLen;i++){tokens[token[i]]=func;}}function addWeekParseToken(token,callback){addParseToken(token,function(input,array,config,token){config._w=config._w||{};callback(input,config._w,config,token);});}function addTimeToArrayFromToken(token,input,config){if(input!=null&&hasOwnProp(tokens,token)){tokens[token](input,config._a,config,token);}}function isLeapYear(year){return(year%4===0&&year%100!==0)||year%400===0;}var YEAR=0,MONTH=1,DATE=2,HOUR=3,MINUTE=4,SECOND=5,MILLISECOND=6,WEEK=7,WEEKDAY=8;addFormatToken('Y',0,0,function(){var y=this.year();return y<=9999?zeroFill(y,4):'+'+y;\\n});addFormatToken(0,['YY',2],0,function(){return this.year()%100;});addFormatToken(0,['YYYY',4],0,'year');addFormatToken(0,['YYYYY',5],0,'year');addFormatToken(0,['YYYYYY',6,true],0,'year');addRegexToken('Y',matchSigned);addRegexToken('YY',match1to2,match2);addRegexToken('YYYY',match1to4,match4);addRegexToken('YYYYY',match1to6,match6);addRegexToken('YYYYYY',match1to6,match6);addParseToken(['YYYYY','YYYYYY'],YEAR);addParseToken('YYYY',function(input,array){array[YEAR]=input.length===2?hooks.parseTwoDigitYear(input):toInt(input);});addParseToken('YY',function(input,array){array[YEAR]=hooks.parseTwoDigitYear(input);});addParseToken('Y',function(input,array){array[YEAR]=parseInt(input,10);});function daysInYear(year){return isLeapYear(year)?366:365;}hooks.parseTwoDigitYear=function(input){return toInt(input)+(toInt(input)>68?1900:2000);};var getSetYear=makeGetSet('FullYear',true);function getIsLeapYear(){return isLeapYear(this.year());}function makeGetSet(unit,keepTime){return function(value){\\nif(value!=null){set$1(this,unit,value);hooks.updateOffset(this,keepTime);return this;}else{return get(this,unit);}};}function get(mom,unit){if(!mom.isValid()){return NaN;}var d=mom._d,isUTC=mom._isUTC;switch(unit){case'Milliseconds':return isUTC?d.getUTCMilliseconds():d.getMilliseconds();case'Seconds':return isUTC?d.getUTCSeconds():d.getSeconds();case'Minutes':return isUTC?d.getUTCMinutes():d.getMinutes();case'Hours':return isUTC?d.getUTCHours():d.getHours();case'Date':return isUTC?d.getUTCDate():d.getDate();case'Day':return isUTC?d.getUTCDay():d.getDay();case'Month':return isUTC?d.getUTCMonth():d.getMonth();case'FullYear':return isUTC?d.getUTCFullYear():d.getFullYear();default:return NaN;}}function set$1(mom,unit,value){var d,isUTC,year,month,date;if(!mom.isValid()||isNaN(value)){return;}d=mom._d;isUTC=mom._isUTC;switch(unit){case'Milliseconds':return void(isUTC?d.setUTCMilliseconds(value):d.setMilliseconds(value));case'Seconds':return void(isUTC?d.setUTCSeconds(value):d.setSeconds(value));\\ncase'Minutes':return void(isUTC?d.setUTCMinutes(value):d.setMinutes(value));case'Hours':return void(isUTC?d.setUTCHours(value):d.setHours(value));case'Date':return void(isUTC?d.setUTCDate(value):d.setDate(value));case'FullYear':break;default:return;}year=value;month=mom.month();date=mom.date();date=date===29&&month===1&&!isLeapYear(year)?28:date;void(isUTC?d.setUTCFullYear(year,month,date):d.setFullYear(year,month,date));}function stringGet(units){units=normalizeUnits(units);if(isFunction(this[units])){return this[units]();}return this;}function stringSet(units,value){if(typeof units==='object'){units=normalizeObjectUnits(units);var prioritized=getPrioritizedUnits(units),i,prioritizedLen=prioritized.length;for(i=0;i<prioritizedLen;i++){this[prioritized[i].unit](units[prioritized[i].unit]);}}else{units=normalizeUnits(units);if(isFunction(this[units])){return this[units](value);}}return this;}function mod(n,x){return((n%x)+x)%x;}var indexOf;if(Array.prototype.indexOf){indexOf=Array.prototype.indexOf;\\n}else{indexOf=function(o){var i;for(i=0;i<this.length;++i){if(this[i]===o){return i;}}return-1;};}function daysInMonth(year,month){if(isNaN(year)||isNaN(month)){return NaN;}var modMonth=mod(month,12);year+=(month-modMonth)/12;return modMonth===1?isLeapYear(year)?29:28:31-((modMonth%7)%2);}addFormatToken('M',['MM',2],'Mo',function(){return this.month()+1;});addFormatToken('MMM',0,0,function(format){return this.localeData().monthsShort(this,format);});addFormatToken('MMMM',0,0,function(format){return this.localeData().months(this,format);});addRegexToken('M',match1to2,match1to2NoLeadingZero);addRegexToken('MM',match1to2,match2);addRegexToken('MMM',function(isStrict,locale){return locale.monthsShortRegex(isStrict);});addRegexToken('MMMM',function(isStrict,locale){return locale.monthsRegex(isStrict);});addParseToken(['M','MM'],function(input,array){array[MONTH]=toInt(input)-1;});addParseToken(['MMM','MMMM'],function(input,array,config,token){var month=config._locale.monthsParse(input,token,config._strict);\\nif(month!=null){array[MONTH]=month;}else{getParsingFlags(config).invalidMonth=input;}});var defaultLocaleMonths='January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),defaultLocaleMonthsShort='Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),MONTHS_IN_FORMAT=/D[oD]?(\\\\[[^\\\\[\\\\]]*\\\\]|\\\\s)+MMMM?/,defaultMonthsShortRegex=matchWord,defaultMonthsRegex=matchWord;function localeMonths(m,format){if(!m){return isArray(this._months)?this._months:this._months['standalone'];}return isArray(this._months)?this._months[m.month()]:this._months[(this._months.isFormat||MONTHS_IN_FORMAT).test(format)?'format':'standalone'][m.month()];}function localeMonthsShort(m,format){if(!m){return isArray(this._monthsShort)?this._monthsShort:this._monthsShort['standalone'];}return isArray(this._monthsShort)?this._monthsShort[m.month()]:this._monthsShort[MONTHS_IN_FORMAT.test(format)?'format':'standalone'][m.month()];}function handleStrictParse(monthName,format,strict){\\nvar i,ii,mom,llc=monthName.toLocaleLowerCase();if(!this._monthsParse){this._monthsParse=[];this._longMonthsParse=[];this._shortMonthsParse=[];for(i=0;i<12;++i){mom=createUTC([2000,i]);this._shortMonthsParse[i]=this.monthsShort(mom,'').toLocaleLowerCase();this._longMonthsParse[i]=this.months(mom,'').toLocaleLowerCase();}}if(strict){if(format==='MMM'){ii=indexOf.call(this._shortMonthsParse,llc);return ii!==-1?ii:null;}else{ii=indexOf.call(this._longMonthsParse,llc);return ii!==-1?ii:null;}}else{if(format==='MMM'){ii=indexOf.call(this._shortMonthsParse,llc);if(ii!==-1){return ii;}ii=indexOf.call(this._longMonthsParse,llc);return ii!==-1?ii:null;}else{ii=indexOf.call(this._longMonthsParse,llc);if(ii!==-1){return ii;}ii=indexOf.call(this._shortMonthsParse,llc);return ii!==-1?ii:null;}}}function localeMonthsParse(monthName,format,strict){var i,mom,regex;if(this._monthsParseExact){return handleStrictParse.call(this,monthName,format,strict);}if(!this._monthsParse){this._monthsParse=[];this._longMonthsParse=[];\\nthis._shortMonthsParse=[];}for(i=0;i<12;i++){mom=createUTC([2000,i]);if(strict&&!this._longMonthsParse[i]){this._longMonthsParse[i]=new RegExp('^'+this.months(mom,'').replace('.','')+'$','i');this._shortMonthsParse[i]=new RegExp('^'+this.monthsShort(mom,'').replace('.','')+'$','i');}if(!strict&&!this._monthsParse[i]){regex='^'+this.months(mom,'')+'|^'+this.monthsShort(mom,'');this._monthsParse[i]=new RegExp(regex.replace('.',''),'i');}if(strict&&format==='MMMM'&&this._longMonthsParse[i].test(monthName)){return i;}else if(strict&&format==='MMM'&&this._shortMonthsParse[i].test(monthName)){return i;}else if(!strict&&this._monthsParse[i].test(monthName)){return i;}}}function setMonth(mom,value){if(!mom.isValid()){return mom;}if(typeof value==='string'){if(/^\\\\d+$/.test(value)){value=toInt(value);}else{value=mom.localeData().monthsParse(value);if(!isNumber(value)){return mom;}}}var month=value,date=mom.date();date=date<29?date:Math.min(date,daysInMonth(mom.year(),month));void(mom._isUTC?mom._d.setUTCMonth(month,date)\\n:mom._d.setMonth(month,date));return mom;}function getSetMonth(value){if(value!=null){setMonth(this,value);hooks.updateOffset(this,true);return this;}else{return get(this,'Month');}}function getDaysInMonth(){return daysInMonth(this.year(),this.month());}function monthsShortRegex(isStrict){if(this._monthsParseExact){if(!hasOwnProp(this,'_monthsRegex')){computeMonthsParse.call(this);}if(isStrict){return this._monthsShortStrictRegex;}else{return this._monthsShortRegex;}}else{if(!hasOwnProp(this,'_monthsShortRegex')){this._monthsShortRegex=defaultMonthsShortRegex;}return this._monthsShortStrictRegex&&isStrict?this._monthsShortStrictRegex:this._monthsShortRegex;}}function monthsRegex(isStrict){if(this._monthsParseExact){if(!hasOwnProp(this,'_monthsRegex')){computeMonthsParse.call(this);}if(isStrict){return this._monthsStrictRegex;}else{return this._monthsRegex;}}else{if(!hasOwnProp(this,'_monthsRegex')){this._monthsRegex=defaultMonthsRegex;}return this._monthsStrictRegex&&isStrict?this._monthsStrictRegex\\n:this._monthsRegex;}}function computeMonthsParse(){function cmpLenRev(a,b){return b.length-a.length;}var shortPieces=[],longPieces=[],mixedPieces=[],i,mom,shortP,longP;for(i=0;i<12;i++){mom=createUTC([2000,i]);shortP=regexEscape(this.monthsShort(mom,''));longP=regexEscape(this.months(mom,''));shortPieces.push(shortP);longPieces.push(longP);mixedPieces.push(longP);mixedPieces.push(shortP);}shortPieces.sort(cmpLenRev);longPieces.sort(cmpLenRev);mixedPieces.sort(cmpLenRev);this._monthsRegex=new RegExp('^('+mixedPieces.join('|')+')','i');this._monthsShortRegex=this._monthsRegex;this._monthsStrictRegex=new RegExp('^('+longPieces.join('|')+')','i');this._monthsShortStrictRegex=new RegExp('^('+shortPieces.join('|')+')','i');}function createDate(y,m,d,h,M,s,ms){var date;if(y<100&&y>=0){date=new Date(y+400,m,d,h,M,s,ms);if(isFinite(date.getFullYear())){date.setFullYear(y);}}else{date=new Date(y,m,d,h,M,s,ms);}return date;}function createUTCDate(y){var date,args;if(y<100&&y>=0){args=Array.prototype.slice.call(arguments);\\nargs[0]=y+400;date=new Date(Date.UTC.apply(null,args));if(isFinite(date.getUTCFullYear())){date.setUTCFullYear(y);}}else{date=new Date(Date.UTC.apply(null,arguments));}return date;}function firstWeekOffset(year,dow,doy){var fwd=7+dow-doy,fwdlw=(7+createUTCDate(year,0,fwd).getUTCDay()-dow)%7;return-fwdlw+fwd-1;}function dayOfYearFromWeeks(year,week,weekday,dow,doy){var localWeekday=(7+weekday-dow)%7,weekOffset=firstWeekOffset(year,dow,doy),dayOfYear=1+7*(week-1)+localWeekday+weekOffset,resYear,resDayOfYear;if(dayOfYear<=0){resYear=year-1;resDayOfYear=daysInYear(resYear)+dayOfYear;}else if(dayOfYear>daysInYear(year)){resYear=year+1;resDayOfYear=dayOfYear-daysInYear(year);}else{resYear=year;resDayOfYear=dayOfYear;}return{year:resYear,dayOfYear:resDayOfYear,};}function weekOfYear(mom,dow,doy){var weekOffset=firstWeekOffset(mom.year(),dow,doy),week=Math.floor((mom.dayOfYear()-weekOffset-1)/7)+1,resWeek,resYear;if(week<1){resYear=mom.year()-1;resWeek=week+weeksInYear(resYear,dow,doy);}else if(week>weeksInYear(mom.year(),dow,doy)){\\nresWeek=week-weeksInYear(mom.year(),dow,doy);resYear=mom.year()+1;}else{resYear=mom.year();resWeek=week;}return{week:resWeek,year:resYear,};}function weeksInYear(year,dow,doy){var weekOffset=firstWeekOffset(year,dow,doy),weekOffsetNext=firstWeekOffset(year+1,dow,doy);return(daysInYear(year)-weekOffset+weekOffsetNext)/7;}addFormatToken('w',['ww',2],'wo','week');addFormatToken('W',['WW',2],'Wo','isoWeek');addRegexToken('w',match1to2,match1to2NoLeadingZero);addRegexToken('ww',match1to2,match2);addRegexToken('W',match1to2,match1to2NoLeadingZero);addRegexToken('WW',match1to2,match2);addWeekParseToken(['w','ww','W','WW'],function(input,week,config,token){week[token.substr(0,1)]=toInt(input);});function localeWeek(mom){return weekOfYear(mom,this._week.dow,this._week.doy).week;}var defaultLocaleWeek={dow:0,doy:6,};function localeFirstDayOfWeek(){return this._week.dow;}function localeFirstDayOfYear(){return this._week.doy;}function getSetWeek(input){var week=this.localeData().week(this);return input==null?week:this.add((input-week)*7,'d');\\n}function getSetISOWeek(input){var week=weekOfYear(this,1,4).week;return input==null?week:this.add((input-week)*7,'d');}addFormatToken('d',0,'do','day');addFormatToken('dd',0,0,function(format){return this.localeData().weekdaysMin(this,format);});addFormatToken('ddd',0,0,function(format){return this.localeData().weekdaysShort(this,format);});addFormatToken('dddd',0,0,function(format){return this.localeData().weekdays(this,format);});addFormatToken('e',0,0,'weekday');addFormatToken('E',0,0,'isoWeekday');addRegexToken('d',match1to2);addRegexToken('e',match1to2);addRegexToken('E',match1to2);addRegexToken('dd',function(isStrict,locale){return locale.weekdaysMinRegex(isStrict);});addRegexToken('ddd',function(isStrict,locale){return locale.weekdaysShortRegex(isStrict);});addRegexToken('dddd',function(isStrict,locale){return locale.weekdaysRegex(isStrict);});addWeekParseToken(['dd','ddd','dddd'],function(input,week,config,token){var weekday=config._locale.weekdaysParse(input,token,config._strict);\\nif(weekday!=null){week.d=weekday;}else{getParsingFlags(config).invalidWeekday=input;}});addWeekParseToken(['d','e','E'],function(input,week,config,token){week[token]=toInt(input);});function parseWeekday(input,locale){if(typeof input!=='string'){return input;}if(!isNaN(input)){return parseInt(input,10);}input=locale.weekdaysParse(input);if(typeof input==='number'){return input;}return null;}function parseIsoWeekday(input,locale){if(typeof input==='string'){return locale.weekdaysParse(input)%7||7;}return isNaN(input)?null:input;}function shiftWeekdays(ws,n){return ws.slice(n,7).concat(ws.slice(0,n));}var defaultLocaleWeekdays='Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),defaultLocaleWeekdaysShort='Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),defaultLocaleWeekdaysMin='Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),defaultWeekdaysRegex=matchWord,defaultWeekdaysShortRegex=matchWord,defaultWeekdaysMinRegex=matchWord;function localeWeekdays(m,format){var weekdays=isArray(this._weekdays)\\n?this._weekdays:this._weekdays[m&&m!==true&&this._weekdays.isFormat.test(format)?'format':'standalone'];return m===true?shiftWeekdays(weekdays,this._week.dow):m?weekdays[m.day()]:weekdays;}function localeWeekdaysShort(m){return m===true?shiftWeekdays(this._weekdaysShort,this._week.dow):m?this._weekdaysShort[m.day()]:this._weekdaysShort;}function localeWeekdaysMin(m){return m===true?shiftWeekdays(this._weekdaysMin,this._week.dow):m?this._weekdaysMin[m.day()]:this._weekdaysMin;}function handleStrictParse$1(weekdayName,format,strict){var i,ii,mom,llc=weekdayName.toLocaleLowerCase();if(!this._weekdaysParse){this._weekdaysParse=[];this._shortWeekdaysParse=[];this._minWeekdaysParse=[];for(i=0;i<7;++i){mom=createUTC([2000,1]).day(i);this._minWeekdaysParse[i]=this.weekdaysMin(mom,'').toLocaleLowerCase();this._shortWeekdaysParse[i]=this.weekdaysShort(mom,'').toLocaleLowerCase();this._weekdaysParse[i]=this.weekdays(mom,'').toLocaleLowerCase();}}if(strict){if(format==='dddd'){ii=indexOf.call(this._weekdaysParse,llc);\\nreturn ii!==-1?ii:null;}else if(format==='ddd'){ii=indexOf.call(this._shortWeekdaysParse,llc);return ii!==-1?ii:null;}else{ii=indexOf.call(this._minWeekdaysParse,llc);return ii!==-1?ii:null;}}else{if(format==='dddd'){ii=indexOf.call(this._weekdaysParse,llc);if(ii!==-1){return ii;}ii=indexOf.call(this._shortWeekdaysParse,llc);if(ii!==-1){return ii;}ii=indexOf.call(this._minWeekdaysParse,llc);return ii!==-1?ii:null;}else if(format==='ddd'){ii=indexOf.call(this._shortWeekdaysParse,llc);if(ii!==-1){return ii;}ii=indexOf.call(this._weekdaysParse,llc);if(ii!==-1){return ii;}ii=indexOf.call(this._minWeekdaysParse,llc);return ii!==-1?ii:null;}else{ii=indexOf.call(this._minWeekdaysParse,llc);if(ii!==-1){return ii;}ii=indexOf.call(this._weekdaysParse,llc);if(ii!==-1){return ii;}ii=indexOf.call(this._shortWeekdaysParse,llc);return ii!==-1?ii:null;}}}function localeWeekdaysParse(weekdayName,format,strict){var i,mom,regex;if(this._weekdaysParseExact){return handleStrictParse$1.call(this,weekdayName,format,strict);\\n}if(!this._weekdaysParse){this._weekdaysParse=[];this._minWeekdaysParse=[];this._shortWeekdaysParse=[];this._fullWeekdaysParse=[];}for(i=0;i<7;i++){mom=createUTC([2000,1]).day(i);if(strict&&!this._fullWeekdaysParse[i]){this._fullWeekdaysParse[i]=new RegExp('^'+this.weekdays(mom,'').replace('.','\\\\\\\\.?')+'$','i');this._shortWeekdaysParse[i]=new RegExp('^'+this.weekdaysShort(mom,'').replace('.','\\\\\\\\.?')+'$','i');this._minWeekdaysParse[i]=new RegExp('^'+this.weekdaysMin(mom,'').replace('.','\\\\\\\\.?')+'$','i');}if(!this._weekdaysParse[i]){regex='^'+this.weekdays(mom,'')+'|^'+this.weekdaysShort(mom,'')+'|^'+this.weekdaysMin(mom,'');this._weekdaysParse[i]=new RegExp(regex.replace('.',''),'i');}if(strict&&format==='dddd'&&this._fullWeekdaysParse[i].test(weekdayName)){return i;}else if(strict&&format==='ddd'&&this._shortWeekdaysParse[i].test(weekdayName)){return i;}else if(strict&&format==='dd'&&this._minWeekdaysParse[i].test(weekdayName)){return i;}else if(!strict&&this._weekdaysParse[i].test(weekdayName)){\\nreturn i;}}}function getSetDayOfWeek(input){if(!this.isValid()){return input!=null?this:NaN;}var day=get(this,'Day');if(input!=null){input=parseWeekday(input,this.localeData());return this.add(input-day,'d');}else{return day;}}function getSetLocaleDayOfWeek(input){if(!this.isValid()){return input!=null?this:NaN;}var weekday=(this.day()+7-this.localeData()._week.dow)%7;return input==null?weekday:this.add(input-weekday,'d');}function getSetISODayOfWeek(input){if(!this.isValid()){return input!=null?this:NaN;}if(input!=null){var weekday=parseIsoWeekday(input,this.localeData());return this.day(this.day()%7?weekday:weekday-7);}else{return this.day()||7;}}function weekdaysRegex(isStrict){if(this._weekdaysParseExact){if(!hasOwnProp(this,'_weekdaysRegex')){computeWeekdaysParse.call(this);}if(isStrict){return this._weekdaysStrictRegex;}else{return this._weekdaysRegex;}}else{if(!hasOwnProp(this,'_weekdaysRegex')){this._weekdaysRegex=defaultWeekdaysRegex;}return this._weekdaysStrictRegex&&isStrict\\n?this._weekdaysStrictRegex:this._weekdaysRegex;}}function weekdaysShortRegex(isStrict){if(this._weekdaysParseExact){if(!hasOwnProp(this,'_weekdaysRegex')){computeWeekdaysParse.call(this);}if(isStrict){return this._weekdaysShortStrictRegex;}else{return this._weekdaysShortRegex;}}else{if(!hasOwnProp(this,'_weekdaysShortRegex')){this._weekdaysShortRegex=defaultWeekdaysShortRegex;}return this._weekdaysShortStrictRegex&&isStrict?this._weekdaysShortStrictRegex:this._weekdaysShortRegex;}}function weekdaysMinRegex(isStrict){if(this._weekdaysParseExact){if(!hasOwnProp(this,'_weekdaysRegex')){computeWeekdaysParse.call(this);}if(isStrict){return this._weekdaysMinStrictRegex;}else{return this._weekdaysMinRegex;}}else{if(!hasOwnProp(this,'_weekdaysMinRegex')){this._weekdaysMinRegex=defaultWeekdaysMinRegex;}return this._weekdaysMinStrictRegex&&isStrict?this._weekdaysMinStrictRegex:this._weekdaysMinRegex;}}function computeWeekdaysParse(){function cmpLenRev(a,b){return b.length-a.length;}var minPieces=[],\\nshortPieces=[],longPieces=[],mixedPieces=[],i,mom,minp,shortp,longp;for(i=0;i<7;i++){mom=createUTC([2000,1]).day(i);minp=regexEscape(this.weekdaysMin(mom,''));shortp=regexEscape(this.weekdaysShort(mom,''));longp=regexEscape(this.weekdays(mom,''));minPieces.push(minp);shortPieces.push(shortp);longPieces.push(longp);mixedPieces.push(minp);mixedPieces.push(shortp);mixedPieces.push(longp);}minPieces.sort(cmpLenRev);shortPieces.sort(cmpLenRev);longPieces.sort(cmpLenRev);mixedPieces.sort(cmpLenRev);this._weekdaysRegex=new RegExp('^('+mixedPieces.join('|')+')','i');this._weekdaysShortRegex=this._weekdaysRegex;this._weekdaysMinRegex=this._weekdaysRegex;this._weekdaysStrictRegex=new RegExp('^('+longPieces.join('|')+')','i');this._weekdaysShortStrictRegex=new RegExp('^('+shortPieces.join('|')+')','i');this._weekdaysMinStrictRegex=new RegExp('^('+minPieces.join('|')+')','i');}function hFormat(){return this.hours()%12||12;}function kFormat(){return this.hours()||24;}addFormatToken('H',['HH',2],0,'hour');\\naddFormatToken('h',['hh',2],0,hFormat);addFormatToken('k',['kk',2],0,kFormat);addFormatToken('hmm',0,0,function(){return''+hFormat.apply(this)+zeroFill(this.minutes(),2);});addFormatToken('hmmss',0,0,function(){return(''+hFormat.apply(this)+zeroFill(this.minutes(),2)+zeroFill(this.seconds(),2));});addFormatToken('Hmm',0,0,function(){return''+this.hours()+zeroFill(this.minutes(),2);});addFormatToken('Hmmss',0,0,function(){return(''+this.hours()+zeroFill(this.minutes(),2)+zeroFill(this.seconds(),2));});function meridiem(token,lowercase){addFormatToken(token,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),lowercase);});}meridiem('a',true);meridiem('A',false);function matchMeridiem(isStrict,locale){return locale._meridiemParse;}addRegexToken('a',matchMeridiem);addRegexToken('A',matchMeridiem);addRegexToken('H',match1to2,match1to2HasZero);addRegexToken('h',match1to2,match1to2NoLeadingZero);addRegexToken('k',match1to2,match1to2NoLeadingZero);addRegexToken('HH',match1to2,match2);\\naddRegexToken('hh',match1to2,match2);addRegexToken('kk',match1to2,match2);addRegexToken('hmm',match3to4);addRegexToken('hmmss',match5to6);addRegexToken('Hmm',match3to4);addRegexToken('Hmmss',match5to6);addParseToken(['H','HH'],HOUR);addParseToken(['k','kk'],function(input,array,config){var kInput=toInt(input);array[HOUR]=kInput===24?0:kInput;});addParseToken(['a','A'],function(input,array,config){config._isPm=config._locale.isPM(input);config._meridiem=input;});addParseToken(['h','hh'],function(input,array,config){array[HOUR]=toInt(input);getParsingFlags(config).bigHour=true;});addParseToken('hmm',function(input,array,config){var pos=input.length-2;array[HOUR]=toInt(input.substr(0,pos));array[MINUTE]=toInt(input.substr(pos));getParsingFlags(config).bigHour=true;});addParseToken('hmmss',function(input,array,config){var pos1=input.length-4,pos2=input.length-2;array[HOUR]=toInt(input.substr(0,pos1));array[MINUTE]=toInt(input.substr(pos1,2));array[SECOND]=toInt(input.substr(pos2));\\ngetParsingFlags(config).bigHour=true;});addParseToken('Hmm',function(input,array,config){var pos=input.length-2;array[HOUR]=toInt(input.substr(0,pos));array[MINUTE]=toInt(input.substr(pos));});addParseToken('Hmmss',function(input,array,config){var pos1=input.length-4,pos2=input.length-2;array[HOUR]=toInt(input.substr(0,pos1));array[MINUTE]=toInt(input.substr(pos1,2));array[SECOND]=toInt(input.substr(pos2));});function localeIsPM(input){return(input+'').toLowerCase().charAt(0)==='p';}var defaultLocaleMeridiemParse=/[ap]\\\\.?m?\\\\.?/i,getSetHour=makeGetSet('Hours',true);function localeMeridiem(hours,minutes,isLower){if(hours>11){return isLower?'pm':'PM';}else{return isLower?'am':'AM';}}var baseConfig={calendar:defaultCalendar,longDateFormat:defaultLongDateFormat,invalidDate:defaultInvalidDate,ordinal:defaultOrdinal,dayOfMonthOrdinalParse:defaultDayOfMonthOrdinalParse,relativeTime:defaultRelativeTime,months:defaultLocaleMonths,monthsShort:defaultLocaleMonthsShort,week:defaultLocaleWeek,\\nweekdays:defaultLocaleWeekdays,weekdaysMin:defaultLocaleWeekdaysMin,weekdaysShort:defaultLocaleWeekdaysShort,meridiemParse:defaultLocaleMeridiemParse,};var locales={},localeFamilies={},globalLocale;function commonPrefix(arr1,arr2){var i,minl=Math.min(arr1.length,arr2.length);for(i=0;i<minl;i+=1){if(arr1[i]!==arr2[i]){return i;}}return minl;}function normalizeLocale(key){return key?key.toLowerCase().replace('_','-'):key;}function chooseLocale(names){var i=0,j,next,locale,split;while(i<names.length){split=normalizeLocale(names[i]).split('-');j=split.length;next=normalizeLocale(names[i+1]);next=next?next.split('-'):null;while(j>0){locale=loadLocale(split.slice(0,j).join('-'));if(locale){return locale;}if(next&&next.length>=j&&commonPrefix(split,next)>=j-1){break;}j--;}i++;}return globalLocale;}function isLocaleNameSane(name){return!!(name&&name.match('^[^/\\\\\\\\\\\\\\\\]*$'));}function loadLocale(name){var oldLocale=null,aliasedRequire;if(locales[name]===undefined&&typeof module!=='undefined'&&\\nmodule&&module.exports&&isLocaleNameSane(name)){try{oldLocale=globalLocale._abbr;aliasedRequire=require;aliasedRequire('./locale/'+name);getSetGlobalLocale(oldLocale);}catch(e){locales[name]=null;}}return locales[name];}function getSetGlobalLocale(key,values){var data;if(key){if(isUndefined(values)){data=getLocale(key);}else{data=defineLocale(key,values);}if(data){globalLocale=data;}else{if(typeof console!=='undefined'&&console.warn){console.warn('Locale '+key+' not found. Did you forget to load it?');}}}return globalLocale._abbr;}function defineLocale(name,config){if(config!==null){var locale,parentConfig=baseConfig;config.abbr=name;if(locales[name]!=null){deprecateSimple('defineLocaleOverride','use moment.updateLocale(localeName, config) to change '+'an existing locale. moment.defineLocale(localeName, '+'config) should only be used for creating a new locale '+'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.');parentConfig=locales[name]._config;}else if(config.parentLocale!=null){\\nif(locales[config.parentLocale]!=null){parentConfig=locales[config.parentLocale]._config;}else{locale=loadLocale(config.parentLocale);if(locale!=null){parentConfig=locale._config;}else{if(!localeFamilies[config.parentLocale]){localeFamilies[config.parentLocale]=[];}localeFamilies[config.parentLocale].push({name:name,config:config,});return null;}}}locales[name]=new Locale(mergeConfigs(parentConfig,config));if(localeFamilies[name]){localeFamilies[name].forEach(function(x){defineLocale(x.name,x.config);});}getSetGlobalLocale(name);return locales[name];}else{delete locales[name];return null;}}function updateLocale(name,config){if(config!=null){var locale,tmpLocale,parentConfig=baseConfig;if(locales[name]!=null&&locales[name].parentLocale!=null){locales[name].set(mergeConfigs(locales[name]._config,config));}else{tmpLocale=loadLocale(name);if(tmpLocale!=null){parentConfig=tmpLocale._config;}config=mergeConfigs(parentConfig,config);if(tmpLocale==null){config.abbr=name;}locale=new Locale(config);\\nlocale.parentLocale=locales[name];locales[name]=locale;}getSetGlobalLocale(name);}else{if(locales[name]!=null){if(locales[name].parentLocale!=null){locales[name]=locales[name].parentLocale;if(name===getSetGlobalLocale()){getSetGlobalLocale(name);}}else if(locales[name]!=null){delete locales[name];}}}return locales[name];}function getLocale(key){var locale;if(key&&key._locale&&key._locale._abbr){key=key._locale._abbr;}if(!key){return globalLocale;}if(!isArray(key)){locale=loadLocale(key);if(locale){return locale;}key=[key];}return chooseLocale(key);}function listLocales(){return keys(locales);}function checkOverflow(m){var overflow,a=m._a;if(a&&getParsingFlags(m).overflow===-2){overflow=a[MONTH]<0||a[MONTH]>11?MONTH:a[DATE]<1||a[DATE]>daysInMonth(a[YEAR],a[MONTH])?DATE:a[HOUR]<0||a[HOUR]>24||(a[HOUR]===24&&(a[MINUTE]!==0||a[SECOND]!==0||a[MILLISECOND]!==0))?HOUR:a[MINUTE]<0||a[MINUTE]>59?MINUTE:a[SECOND]<0||a[SECOND]>59?SECOND:a[MILLISECOND]<0||a[MILLISECOND]>999?MILLISECOND:-1;if(\\ngetParsingFlags(m)._overflowDayOfYear&&(overflow<YEAR||overflow>DATE)){overflow=DATE;}if(getParsingFlags(m)._overflowWeeks&&overflow===-1){overflow=WEEK;}if(getParsingFlags(m)._overflowWeekday&&overflow===-1){overflow=WEEKDAY;}getParsingFlags(m).overflow=overflow;}return m;}var extendedIsoRegex=/^\\\\s*((?:[+-]\\\\d{6}|\\\\d{4})-(?:\\\\d\\\\d-\\\\d\\\\d|W\\\\d\\\\d-\\\\d|W\\\\d\\\\d|\\\\d\\\\d\\\\d|\\\\d\\\\d))(?:(T| )(\\\\d\\\\d(?::\\\\d\\\\d(?::\\\\d\\\\d(?:[.,]\\\\d+)?)?)?)([+-]\\\\d\\\\d(?::?\\\\d\\\\d)?|\\\\s*Z)?)?$/,basicIsoRegex=/^\\\\s*((?:[+-]\\\\d{6}|\\\\d{4})(?:\\\\d\\\\d\\\\d\\\\d|W\\\\d\\\\d\\\\d|W\\\\d\\\\d|\\\\d\\\\d\\\\d|\\\\d\\\\d|))(?:(T| )(\\\\d\\\\d(?:\\\\d\\\\d(?:\\\\d\\\\d(?:[.,]\\\\d+)?)?)?)([+-]\\\\d\\\\d(?::?\\\\d\\\\d)?|\\\\s*Z)?)?$/,tzRegex=/Z|[+-]\\\\d\\\\d(?::?\\\\d\\\\d)?/,isoDates=[['YYYYYY-MM-DD',/[+-]\\\\d{6}-\\\\d\\\\d-\\\\d\\\\d/],['YYYY-MM-DD',/\\\\d{4}-\\\\d\\\\d-\\\\d\\\\d/],['GGGG-[W]WW-E',/\\\\d{4}-W\\\\d\\\\d-\\\\d/],['GGGG-[W]WW',/\\\\d{4}-W\\\\d\\\\d/,false],['YYYY-DDD',/\\\\d{4}-\\\\d{3}/],['YYYY-MM',/\\\\d{4}-\\\\d\\\\d/,false],['YYYYYYMMDD',/[+-]\\\\d{10}/],['YYYYMMDD',/\\\\d{8}/],['GGGG[W]WWE',/\\\\d{4}W\\\\d{3}/],['GGGG[W]WW',/\\\\d{4}W\\\\d{2}/,false],['YYYYDDD',/\\\\d{7}/],['YYYYMM',/\\\\d{6}/,false],['YYYY',/\\\\d{4}/,false],\\n],isoTimes=[['HH:mm:ss.SSSS',/\\\\d\\\\d:\\\\d\\\\d:\\\\d\\\\d\\\\.\\\\d+/],['HH:mm:ss,SSSS',/\\\\d\\\\d:\\\\d\\\\d:\\\\d\\\\d,\\\\d+/],['HH:mm:ss',/\\\\d\\\\d:\\\\d\\\\d:\\\\d\\\\d/],['HH:mm',/\\\\d\\\\d:\\\\d\\\\d/],['HHmmss.SSSS',/\\\\d\\\\d\\\\d\\\\d\\\\d\\\\d\\\\.\\\\d+/],['HHmmss,SSSS',/\\\\d\\\\d\\\\d\\\\d\\\\d\\\\d,\\\\d+/],['HHmmss',/\\\\d\\\\d\\\\d\\\\d\\\\d\\\\d/],['HHmm',/\\\\d\\\\d\\\\d\\\\d/],['HH',/\\\\d\\\\d/],],aspNetJsonRegex=/^\\\\/?Date\\\\((-?\\\\d+)/i,rfc2822=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\\\\s)?(\\\\d{1,2})\\\\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\\\s(\\\\d{2,4})\\\\s(\\\\d\\\\d):(\\\\d\\\\d)(?::(\\\\d\\\\d))?\\\\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\\\\d{4}))$/,obsOffsets={UT:0,GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60,};function configFromISO(config){var i,l,string=config._i,match=extendedIsoRegex.exec(string)||basicIsoRegex.exec(string),allowTime,dateFormat,timeFormat,tzFormat,isoDatesLen=isoDates.length,isoTimesLen=isoTimes.length;if(match){getParsingFlags(config).iso=true;for(i=0,l=isoDatesLen;i<l;i++){if(isoDates[i][1].exec(match[1])){dateFormat=isoDates[i][0];allowTime=isoDates[i][2]!==false;\\nbreak;}}if(dateFormat==null){config._isValid=false;return;}if(match[3]){for(i=0,l=isoTimesLen;i<l;i++){if(isoTimes[i][1].exec(match[3])){timeFormat=(match[2]||' ')+isoTimes[i][0];break;}}if(timeFormat==null){config._isValid=false;return;}}if(!allowTime&&timeFormat!=null){config._isValid=false;return;}if(match[4]){if(tzRegex.exec(match[4])){tzFormat='Z';}else{config._isValid=false;return;}}config._f=dateFormat+(timeFormat||'')+(tzFormat||'');configFromStringAndFormat(config);}else{config._isValid=false;}}function extractFromRFC2822Strings(yearStr,monthStr,dayStr,hourStr,minuteStr,secondStr){var result=[untruncateYear(yearStr),defaultLocaleMonthsShort.indexOf(monthStr),parseInt(dayStr,10),parseInt(hourStr,10),parseInt(minuteStr,10),];if(secondStr){result.push(parseInt(secondStr,10));}return result;}function untruncateYear(yearStr){var year=parseInt(yearStr,10);if(year<=49){return 2000+year;}else if(year<=999){return 1900+year;}return year;}function preprocessRFC2822(s){return s.replace(/\\\\([^()]*\\\\)|[\\\\n\\\\t]/g,' ')\\n.replace(/(\\\\s\\\\s+)/g,' ').replace(/^\\\\s\\\\s*/,'').replace(/\\\\s\\\\s*$/,'');}function checkWeekday(weekdayStr,parsedInput,config){if(weekdayStr){var weekdayProvided=defaultLocaleWeekdaysShort.indexOf(weekdayStr),weekdayActual=new Date(parsedInput[0],parsedInput[1],parsedInput[2]).getDay();if(weekdayProvided!==weekdayActual){getParsingFlags(config).weekdayMismatch=true;config._isValid=false;return false;}}return true;}function calculateOffset(obsOffset,militaryOffset,numOffset){if(obsOffset){return obsOffsets[obsOffset];}else if(militaryOffset){return 0;}else{var hm=parseInt(numOffset,10),m=hm%100,h=(hm-m)/100;return h*60+m;}}function configFromRFC2822(config){var match=rfc2822.exec(preprocessRFC2822(config._i)),parsedArray;if(match){parsedArray=extractFromRFC2822Strings(match[4],match[3],match[2],match[5],match[6],match[7]);if(!checkWeekday(match[1],parsedArray,config)){return;}config._a=parsedArray;config._tzm=calculateOffset(match[8],match[9],match[10]);config._d=createUTCDate.apply(null,config._a);\\nconfig._d.setUTCMinutes(config._d.getUTCMinutes()-config._tzm);getParsingFlags(config).rfc2822=true;}else{config._isValid=false;}}function configFromString(config){var matched=aspNetJsonRegex.exec(config._i);if(matched!==null){config._d=new Date(+matched[1]);return;}configFromISO(config);if(config._isValid===false){delete config._isValid;}else{return;}configFromRFC2822(config);if(config._isValid===false){delete config._isValid;}else{return;}if(config._strict){config._isValid=false;}else{hooks.createFromInputFallback(config);}}hooks.createFromInputFallback=deprecate('value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), '+'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are '+'discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.',function(config){config._d=new Date(config._i+(config._useUTC?' UTC':''));});function defaults(a,b,c){if(a!=null){return a;}if(b!=null){\\nreturn b;}return c;}function currentDateArray(config){var nowValue=new Date(hooks.now());if(config._useUTC){return[nowValue.getUTCFullYear(),nowValue.getUTCMonth(),nowValue.getUTCDate(),];}return[nowValue.getFullYear(),nowValue.getMonth(),nowValue.getDate()];}function configFromArray(config){var i,date,input=[],currentDate,expectedWeekday,yearToUse;if(config._d){return;}currentDate=currentDateArray(config);if(config._w&&config._a[DATE]==null&&config._a[MONTH]==null){dayOfYearFromWeekInfo(config);}if(config._dayOfYear!=null){yearToUse=defaults(config._a[YEAR],currentDate[YEAR]);if(config._dayOfYear>daysInYear(yearToUse)||config._dayOfYear===0){getParsingFlags(config)._overflowDayOfYear=true;}date=createUTCDate(yearToUse,0,config._dayOfYear);config._a[MONTH]=date.getUTCMonth();config._a[DATE]=date.getUTCDate();}for(i=0;i<3&&config._a[i]==null;++i){config._a[i]=input[i]=currentDate[i];}for(;i<7;i++){config._a[i]=input[i]=config._a[i]==null?(i===2?1:0):config._a[i];}if(config._a[HOUR]===24&&\\nconfig._a[MINUTE]===0&&config._a[SECOND]===0&&config._a[MILLISECOND]===0){config._nextDay=true;config._a[HOUR]=0;}config._d=(config._useUTC?createUTCDate:createDate).apply(null,input);expectedWeekday=config._useUTC?config._d.getUTCDay():config._d.getDay();if(config._tzm!=null){config._d.setUTCMinutes(config._d.getUTCMinutes()-config._tzm);}if(config._nextDay){config._a[HOUR]=24;}if(config._w&&typeof config._w.d!=='undefined'&&config._w.d!==expectedWeekday){getParsingFlags(config).weekdayMismatch=true;}}function dayOfYearFromWeekInfo(config){var w,weekYear,week,weekday,dow,doy,temp,weekdayOverflow,curWeek;w=config._w;if(w.GG!=null||w.W!=null||w.E!=null){dow=1;doy=4;weekYear=defaults(w.GG,config._a[YEAR],weekOfYear(createLocal(),1,4).year);week=defaults(w.W,1);weekday=defaults(w.E,1);if(weekday<1||weekday>7){weekdayOverflow=true;}}else{dow=config._locale._week.dow;doy=config._locale._week.doy;curWeek=weekOfYear(createLocal(),dow,doy);weekYear=defaults(w.gg,config._a[YEAR],curWeek.year);\\nweek=defaults(w.w,curWeek.week);if(w.d!=null){weekday=w.d;if(weekday<0||weekday>6){weekdayOverflow=true;}}else if(w.e!=null){weekday=w.e+dow;if(w.e<0||w.e>6){weekdayOverflow=true;}}else{weekday=dow;}}if(week<1||week>weeksInYear(weekYear,dow,doy)){getParsingFlags(config)._overflowWeeks=true;}else if(weekdayOverflow!=null){getParsingFlags(config)._overflowWeekday=true;}else{temp=dayOfYearFromWeeks(weekYear,week,weekday,dow,doy);config._a[YEAR]=temp.year;config._dayOfYear=temp.dayOfYear;}}hooks.ISO_8601=function(){};hooks.RFC_2822=function(){};function configFromStringAndFormat(config){if(config._f===hooks.ISO_8601){configFromISO(config);return;}if(config._f===hooks.RFC_2822){configFromRFC2822(config);return;}config._a=[];getParsingFlags(config).empty=true;var string=''+config._i,i,parsedInput,tokens,token,skipped,stringLength=string.length,totalParsedInputLength=0,era,tokenLen;tokens=expandFormat(config._f,config._locale).match(formattingTokens)||[];tokenLen=tokens.length;for(i=0;i<tokenLen;i++){\\ntoken=tokens[i];parsedInput=(string.match(getParseRegexForToken(token,config))||[])[0];if(parsedInput){skipped=string.substr(0,string.indexOf(parsedInput));if(skipped.length>0){getParsingFlags(config).unusedInput.push(skipped);}string=string.slice(string.indexOf(parsedInput)+parsedInput.length);totalParsedInputLength+=parsedInput.length;}if(formatTokenFunctions[token]){if(parsedInput){getParsingFlags(config).empty=false;}else{getParsingFlags(config).unusedTokens.push(token);}addTimeToArrayFromToken(token,parsedInput,config);}else if(config._strict&&!parsedInput){getParsingFlags(config).unusedTokens.push(token);}}getParsingFlags(config).charsLeftOver=stringLength-totalParsedInputLength;if(string.length>0){getParsingFlags(config).unusedInput.push(string);}if(config._a[HOUR]<=12&&getParsingFlags(config).bigHour===true&&config._a[HOUR]>0){getParsingFlags(config).bigHour=undefined;}getParsingFlags(config).parsedDateParts=config._a.slice(0);getParsingFlags(config).meridiem=config._meridiem;\\nconfig._a[HOUR]=meridiemFixWrap(config._locale,config._a[HOUR],config._meridiem);era=getParsingFlags(config).era;if(era!==null){config._a[YEAR]=config._locale.erasConvertYear(era,config._a[YEAR]);}configFromArray(config);checkOverflow(config);}function meridiemFixWrap(locale,hour,meridiem){var isPm;if(meridiem==null){return hour;}if(locale.meridiemHour!=null){return locale.meridiemHour(hour,meridiem);}else if(locale.isPM!=null){isPm=locale.isPM(meridiem);if(isPm&&hour<12){hour+=12;}if(!isPm&&hour===12){hour=0;}return hour;}else{return hour;}}function configFromStringAndArray(config){var tempConfig,bestMoment,scoreToBeat,i,currentScore,validFormatFound,bestFormatIsValid=false,configfLen=config._f.length;if(configfLen===0){getParsingFlags(config).invalidFormat=true;config._d=new Date(NaN);return;}for(i=0;i<configfLen;i++){currentScore=0;validFormatFound=false;tempConfig=copyConfig({},config);if(config._useUTC!=null){tempConfig._useUTC=config._useUTC;}tempConfig._f=config._f[i];\\nconfigFromStringAndFormat(tempConfig);if(isValid(tempConfig)){validFormatFound=true;}currentScore+=getParsingFlags(tempConfig).charsLeftOver;currentScore+=getParsingFlags(tempConfig).unusedTokens.length*10;getParsingFlags(tempConfig).score=currentScore;if(!bestFormatIsValid){if(scoreToBeat==null||currentScore<scoreToBeat||validFormatFound){scoreToBeat=currentScore;bestMoment=tempConfig;if(validFormatFound){bestFormatIsValid=true;}}}else{if(currentScore<scoreToBeat){scoreToBeat=currentScore;bestMoment=tempConfig;}}}extend(config,bestMoment||tempConfig);}function configFromObject(config){if(config._d){return;}var i=normalizeObjectUnits(config._i),dayOrDate=i.day===undefined?i.date:i.day;config._a=map([i.year,i.month,dayOrDate,i.hour,i.minute,i.second,i.millisecond],function(obj){return obj&&parseInt(obj,10);});configFromArray(config);}function createFromConfig(config){var res=new Moment(checkOverflow(prepareConfig(config)));if(res._nextDay){res.add(1,'d');res._nextDay=undefined;}return res;\\n}function prepareConfig(config){var input=config._i,format=config._f;config._locale=config._locale||getLocale(config._l);if(input===null||(format===undefined&&input==='')){return createInvalid({nullInput:true});}if(typeof input==='string'){config._i=input=config._locale.preparse(input);}if(isMoment(input)){return new Moment(checkOverflow(input));}else if(isDate(input)){config._d=input;}else if(isArray(format)){configFromStringAndArray(config);}else if(format){configFromStringAndFormat(config);}else{configFromInput(config);}if(!isValid(config)){config._d=null;}return config;}function configFromInput(config){var input=config._i;if(isUndefined(input)){config._d=new Date(hooks.now());}else if(isDate(input)){config._d=new Date(input.valueOf());}else if(typeof input==='string'){configFromString(config);}else if(isArray(input)){config._a=map(input.slice(0),function(obj){return parseInt(obj,10);});configFromArray(config);}else if(isObject(input)){configFromObject(config);}else if(isNumber(input)){\\nconfig._d=new Date(input);}else{hooks.createFromInputFallback(config);}}function createLocalOrUTC(input,format,locale,strict,isUTC){var c={};if(format===true||format===false){strict=format;format=undefined;}if(locale===true||locale===false){strict=locale;locale=undefined;}if((isObject(input)&&isObjectEmpty(input))||(isArray(input)&&input.length===0)){input=undefined;}c._isAMomentObject=true;c._useUTC=c._isUTC=isUTC;c._l=locale;c._i=input;c._f=format;c._strict=strict;return createFromConfig(c);}function createLocal(input,format,locale,strict){return createLocalOrUTC(input,format,locale,strict,false);}var prototypeMin=deprecate('moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/',function(){var other=createLocal.apply(null,arguments);if(this.isValid()&&other.isValid()){return other<this?this:other;}else{return createInvalid();}}),prototypeMax=deprecate(\\n'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/',function(){var other=createLocal.apply(null,arguments);if(this.isValid()&&other.isValid()){return other>this?this:other;}else{return createInvalid();}});function pickBy(fn,moments){var res,i;if(moments.length===1&&isArray(moments[0])){moments=moments[0];}if(!moments.length){return createLocal();}res=moments[0];for(i=1;i<moments.length;++i){if(!moments[i].isValid()||moments[i][fn](res)){res=moments[i];}}return res;}function min(){var args=[].slice.call(arguments,0);return pickBy('isBefore',args);}function max(){var args=[].slice.call(arguments,0);return pickBy('isAfter',args);}var now=function(){return Date.now?Date.now():+new Date();};var ordering=['year','quarter','month','week','day','hour','minute','second','millisecond',];function isDurationValid(m){var key,unitHasDecimal=false,i,orderLen=ordering.length;for(key in m){if(hasOwnProp(m,key)&&!(indexOf.call(ordering,key)!==-1&&(m[key]==null||!isNaN(m[key]))\\n)){return false;}}for(i=0;i<orderLen;++i){if(m[ordering[i]]){if(unitHasDecimal){return false;}if(parseFloat(m[ordering[i]])!==toInt(m[ordering[i]])){unitHasDecimal=true;}}}return true;}function isValid$1(){return this._isValid;}function createInvalid$1(){return createDuration(NaN);}function Duration(duration){var normalizedInput=normalizeObjectUnits(duration),years=normalizedInput.year||0,quarters=normalizedInput.quarter||0,months=normalizedInput.month||0,weeks=normalizedInput.week||normalizedInput.isoWeek||0,days=normalizedInput.day||0,hours=normalizedInput.hour||0,minutes=normalizedInput.minute||0,seconds=normalizedInput.second||0,milliseconds=normalizedInput.millisecond||0;this._isValid=isDurationValid(normalizedInput);this._milliseconds=+milliseconds+seconds*1e3+minutes*6e4+hours*1000*60*60;this._days=+days+weeks*7;this._months=+months+quarters*3+years*12;this._data={};this._locale=getLocale();this._bubble();}function isDuration(obj){return obj instanceof Duration;}function absRound(number){\\nif(number<0){return Math.round(-1*number)*-1;}else{return Math.round(number);}}function compareArrays(array1,array2,dontConvert){var len=Math.min(array1.length,array2.length),lengthDiff=Math.abs(array1.length-array2.length),diffs=0,i;for(i=0;i<len;i++){if((dontConvert&&array1[i]!==array2[i])||(!dontConvert&&toInt(array1[i])!==toInt(array2[i]))){diffs++;}}return diffs+lengthDiff;}function offset(token,separator){addFormatToken(token,0,0,function(){var offset=this.utcOffset(),sign='+';if(offset<0){offset=-offset;sign='-';}return(sign+zeroFill(~~(offset/60),2)+separator+zeroFill(~~offset%60,2));});}offset('Z',':');offset('ZZ','');addRegexToken('Z',matchShortOffset);addRegexToken('ZZ',matchShortOffset);addParseToken(['Z','ZZ'],function(input,array,config){config._useUTC=true;config._tzm=offsetFromString(matchShortOffset,input);});var chunkOffset=/([\\\\+\\\\-]|\\\\d\\\\d)/gi;function offsetFromString(matcher,string){var matches=(string||'').match(matcher),chunk,parts,minutes;if(matches===null){return null;\\n}chunk=matches[matches.length-1]||[];parts=(chunk+'').match(chunkOffset)||['-',0,0];minutes=+(parts[1]*60)+toInt(parts[2]);return minutes===0?0:parts[0]==='+'?minutes:-minutes;}function cloneWithOffset(input,model){var res,diff;if(model._isUTC){res=model.clone();diff=(isMoment(input)||isDate(input)?input.valueOf():createLocal(input).valueOf())-res.valueOf();res._d.setTime(res._d.valueOf()+diff);hooks.updateOffset(res,false);return res;}else{return createLocal(input).local();}}function getDateOffset(m){return-Math.round(m._d.getTimezoneOffset());}hooks.updateOffset=function(){};function getSetOffset(input,keepLocalTime,keepMinutes){var offset=this._offset||0,localAdjust;if(!this.isValid()){return input!=null?this:NaN;}if(input!=null){if(typeof input==='string'){input=offsetFromString(matchShortOffset,input);if(input===null){return this;}}else if(Math.abs(input)<16&&!keepMinutes){input=input*60;}if(!this._isUTC&&keepLocalTime){localAdjust=getDateOffset(this);}this._offset=input;this._isUTC=true;\\nif(localAdjust!=null){this.add(localAdjust,'m');}if(offset!==input){if(!keepLocalTime||this._changeInProgress){addSubtract(this,createDuration(input-offset,'m'),1,false);}else if(!this._changeInProgress){this._changeInProgress=true;hooks.updateOffset(this,true);this._changeInProgress=null;}}return this;}else{return this._isUTC?offset:getDateOffset(this);}}function getSetZone(input,keepLocalTime){if(input!=null){if(typeof input!=='string'){input=-input;}this.utcOffset(input,keepLocalTime);return this;}else{return-this.utcOffset();}}function setOffsetToUTC(keepLocalTime){return this.utcOffset(0,keepLocalTime);}function setOffsetToLocal(keepLocalTime){if(this._isUTC){this.utcOffset(0,keepLocalTime);this._isUTC=false;if(keepLocalTime){this.subtract(getDateOffset(this),'m');}}return this;}function setOffsetToParsedOffset(){if(this._tzm!=null){this.utcOffset(this._tzm,false,true);}else if(typeof this._i==='string'){var tZone=offsetFromString(matchOffset,this._i);if(tZone!=null){this.utcOffset(tZone);\\n}else{this.utcOffset(0,true);}}return this;}function hasAlignedHourOffset(input){if(!this.isValid()){return false;}input=input?createLocal(input).utcOffset():0;return(this.utcOffset()-input)%60===0;}function isDaylightSavingTime(){return(this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset());}function isDaylightSavingTimeShifted(){if(!isUndefined(this._isDSTShifted)){return this._isDSTShifted;}var c={},other;copyConfig(c,this);c=prepareConfig(c);if(c._a){other=c._isUTC?createUTC(c._a):createLocal(c._a);this._isDSTShifted=this.isValid()&&compareArrays(c._a,other.toArray())>0;}else{this._isDSTShifted=false;}return this._isDSTShifted;}function isLocal(){return this.isValid()?!this._isUTC:false;}function isUtcOffset(){return this.isValid()?this._isUTC:false;}function isUtc(){return this.isValid()?this._isUTC&&this._offset===0:false;}var aspNetRegex=/^(-|\\\\+)?(?:(\\\\d*)[. ])?(\\\\d+):(\\\\d+)(?::(\\\\d+)(\\\\.\\\\d*)?)?$/,isoRegex=\\n/^(-|\\\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function createDuration(input,key){var duration=input,match=null,sign,ret,diffRes;if(isDuration(input)){duration={ms:input._milliseconds,d:input._days,M:input._months,};}else if(isNumber(input)||!isNaN(+input)){duration={};if(key){duration[key]=+input;}else{duration.milliseconds=+input;}}else if((match=aspNetRegex.exec(input))){sign=match[1]==='-'?-1:1;duration={y:0,d:toInt(match[DATE])*sign,h:toInt(match[HOUR])*sign,m:toInt(match[MINUTE])*sign,s:toInt(match[SECOND])*sign,ms:toInt(absRound(match[MILLISECOND]*1000))*sign,};}else if((match=isoRegex.exec(input))){sign=match[1]==='-'?-1:1;duration={y:parseIso(match[2],sign),M:parseIso(match[3],sign),w:parseIso(match[4],sign),d:parseIso(match[5],sign),h:parseIso(match[6],sign),m:parseIso(match[7],sign),s:parseIso(match[8],sign),};}else if(duration==null){duration={};}else if(\\ntypeof duration==='object'&&('from'in duration||'to'in duration)){diffRes=momentsDifference(createLocal(duration.from),createLocal(duration.to));duration={};duration.ms=diffRes.milliseconds;duration.M=diffRes.months;}ret=new Duration(duration);if(isDuration(input)&&hasOwnProp(input,'_locale')){ret._locale=input._locale;}if(isDuration(input)&&hasOwnProp(input,'_isValid')){ret._isValid=input._isValid;}return ret;}createDuration.fn=Duration.prototype;createDuration.invalid=createInvalid$1;function parseIso(inp,sign){var res=inp&&parseFloat(inp.replace(',','.'));return(isNaN(res)?0:res)*sign;}function positiveMomentsDifference(base,other){var res={};res.months=other.month()-base.month()+(other.year()-base.year())*12;if(base.clone().add(res.months,'M').isAfter(other)){--res.months;}res.milliseconds=+other-+base.clone().add(res.months,'M');return res;}function momentsDifference(base,other){var res;if(!(base.isValid()&&other.isValid())){return{milliseconds:0,months:0};}other=cloneWithOffset(other,base);\\nif(base.isBefore(other)){res=positiveMomentsDifference(base,other);}else{res=positiveMomentsDifference(other,base);res.milliseconds=-res.milliseconds;res.months=-res.months;}return res;}function createAdder(direction,name){return function(val,period){var dur,tmp;if(period!==null&&!isNaN(+period)){deprecateSimple(name,'moment().'+name+'(period, number) is deprecated. Please use moment().'+name+'(number, period). '+'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.');tmp=val;val=period;period=tmp;}dur=createDuration(val,period);addSubtract(this,dur,direction);return this;};}function addSubtract(mom,duration,isAdding,updateOffset){var milliseconds=duration._milliseconds,days=absRound(duration._days),months=absRound(duration._months);if(!mom.isValid()){return;}updateOffset=updateOffset==null?true:updateOffset;if(months){setMonth(mom,get(mom,'Month')+months*isAdding);}if(days){set$1(mom,'Date',get(mom,'Date')+days*isAdding);}if(milliseconds){mom._d.setTime(mom._d.valueOf()+milliseconds*isAdding);\\n}if(updateOffset){hooks.updateOffset(mom,days||months);}}var add=createAdder(1,'add'),subtract=createAdder(-1,'subtract');function isString(input){return typeof input==='string'||input instanceof String;}function isMomentInput(input){return(isMoment(input)||isDate(input)||isString(input)||isNumber(input)||isNumberOrStringArray(input)||isMomentInputObject(input)||input===null||input===undefined);}function isMomentInputObject(input){var objectTest=isObject(input)&&!isObjectEmpty(input),propertyTest=false,properties=['years','year','y','months','month','M','days','day','d','dates','date','D','hours','hour','h','minutes','minute','m','seconds','second','s','milliseconds','millisecond','ms',],i,property,propertyLen=properties.length;for(i=0;i<propertyLen;i+=1){property=properties[i];propertyTest=propertyTest||hasOwnProp(input,property);}return objectTest&&propertyTest;}function isNumberOrStringArray(input){var arrayTest=isArray(input),dataTypeTest=false;if(arrayTest){dataTypeTest=input.filter(function(item){\\nreturn!isNumber(item)&&isString(input);}).length===0;}return arrayTest&&dataTypeTest;}function isCalendarSpec(input){var objectTest=isObject(input)&&!isObjectEmpty(input),propertyTest=false,properties=['sameDay','nextDay','lastDay','nextWeek','lastWeek','sameElse',],i,property;for(i=0;i<properties.length;i+=1){property=properties[i];propertyTest=propertyTest||hasOwnProp(input,property);}return objectTest&&propertyTest;}function getCalendarFormat(myMoment,now){var diff=myMoment.diff(now,'days',true);return diff<-6?'sameElse':diff<-1?'lastWeek':diff<0?'lastDay':diff<1?'sameDay':diff<2?'nextDay':diff<7?'nextWeek':'sameElse';}function calendar$1(time,formats){if(arguments.length===1){if(!arguments[0]){time=undefined;formats=undefined;}else if(isMomentInput(arguments[0])){time=arguments[0];formats=undefined;}else if(isCalendarSpec(arguments[0])){formats=arguments[0];time=undefined;}}var now=time||createLocal(),sod=cloneWithOffset(now,this).startOf('day'),format=hooks.calendarFormat(this,sod)||'sameElse',\\noutput=formats&&(isFunction(formats[format])?formats[format].call(this,now):formats[format]);return this.format(output||this.localeData().calendar(format,this,createLocal(now)));}function clone(){return new Moment(this);}function isAfter(input,units){var localInput=isMoment(input)?input:createLocal(input);if(!(this.isValid()&&localInput.isValid())){return false;}units=normalizeUnits(units)||'millisecond';if(units==='millisecond'){return this.valueOf()>localInput.valueOf();}else{return localInput.valueOf()<this.clone().startOf(units).valueOf();}}function isBefore(input,units){var localInput=isMoment(input)?input:createLocal(input);if(!(this.isValid()&&localInput.isValid())){return false;}units=normalizeUnits(units)||'millisecond';if(units==='millisecond'){return this.valueOf()<localInput.valueOf();}else{return this.clone().endOf(units).valueOf()<localInput.valueOf();}}function isBetween(from,to,units,inclusivity){var localFrom=isMoment(from)?from:createLocal(from),localTo=isMoment(to)?to:createLocal(to);\\nif(!(this.isValid()&&localFrom.isValid()&&localTo.isValid())){return false;}inclusivity=inclusivity||'()';return((inclusivity[0]==='('?this.isAfter(localFrom,units):!this.isBefore(localFrom,units))&&(inclusivity[1]===')'?this.isBefore(localTo,units):!this.isAfter(localTo,units)));}function isSame(input,units){var localInput=isMoment(input)?input:createLocal(input),inputMs;if(!(this.isValid()&&localInput.isValid())){return false;}units=normalizeUnits(units)||'millisecond';if(units==='millisecond'){return this.valueOf()===localInput.valueOf();}else{inputMs=localInput.valueOf();return(this.clone().startOf(units).valueOf()<=inputMs&&inputMs<=this.clone().endOf(units).valueOf());}}function isSameOrAfter(input,units){return this.isSame(input,units)||this.isAfter(input,units);}function isSameOrBefore(input,units){return this.isSame(input,units)||this.isBefore(input,units);}function diff(input,units,asFloat){var that,zoneDelta,output;if(!this.isValid()){return NaN;}that=cloneWithOffset(input,this);\\nif(!that.isValid()){return NaN;}zoneDelta=(that.utcOffset()-this.utcOffset())*6e4;units=normalizeUnits(units);switch(units){case'year':output=monthDiff(this,that)/12;break;case'month':output=monthDiff(this,that);break;case'quarter':output=monthDiff(this,that)/3;break;case'second':output=(this-that)/1e3;break;case'minute':output=(this-that)/6e4;break;case'hour':output=(this-that)/36e5;break;case'day':output=(this-that-zoneDelta)/864e5;break;case'week':output=(this-that-zoneDelta)/6048e5;break;default:output=this-that;}return asFloat?output:absFloor(output);}function monthDiff(a,b){if(a.date()<b.date()){return-monthDiff(b,a);}var wholeMonthDiff=(b.year()-a.year())*12+(b.month()-a.month()),anchor=a.clone().add(wholeMonthDiff,'months'),anchor2,adjust;if(b-anchor<0){anchor2=a.clone().add(wholeMonthDiff-1,'months');adjust=(b-anchor)/(anchor-anchor2);}else{anchor2=a.clone().add(wholeMonthDiff+1,'months');adjust=(b-anchor)/(anchor2-anchor);}return-(wholeMonthDiff+adjust)||0;}hooks.defaultFormat='YYYY-MM-DDTHH:mm:ssZ';\\nhooks.defaultFormatUtc='YYYY-MM-DDTHH:mm:ss[Z]';function toString(){return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');}function toISOString(keepOffset){if(!this.isValid()){return null;}var utc=keepOffset!==true,m=utc?this.clone().utc():this;if(m.year()<0||m.year()>9999){return formatMoment(m,utc?'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]':'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ');}if(isFunction(Date.prototype.toISOString)){if(utc){return this.toDate().toISOString();}else{return new Date(this.valueOf()+this.utcOffset()*60*1000).toISOString().replace('Z',formatMoment(m,'Z'));}}return formatMoment(m,utc?'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]':'YYYY-MM-DD[T]HH:mm:ss.SSSZ');}function inspect(){if(!this.isValid()){return'moment.invalid(/* '+this._i+' */)';}var func='moment',zone='',prefix,year,datetime,suffix;if(!this.isLocal()){func=this.utcOffset()===0?'moment.utc':'moment.parseZone';zone='Z';}prefix='['+func+'(\\\"]';year=0<=this.year()&&this.year()<=9999?'YYYY':'YYYYYY';datetime='-MM-DD[T]HH:mm:ss.SSS';\\nsuffix=zone+'[\\\")]';return this.format(prefix+year+datetime+suffix);}function format(inputString){if(!inputString){inputString=this.isUtc()?hooks.defaultFormatUtc:hooks.defaultFormat;}var output=formatMoment(this,inputString);return this.localeData().postformat(output);}function from(time,withoutSuffix){if(this.isValid()&&((isMoment(time)&&time.isValid())||createLocal(time).isValid())){return createDuration({to:this,from:time}).locale(this.locale()).humanize(!withoutSuffix);}else{return this.localeData().invalidDate();}}function fromNow(withoutSuffix){return this.from(createLocal(),withoutSuffix);}function to(time,withoutSuffix){if(this.isValid()&&((isMoment(time)&&time.isValid())||createLocal(time).isValid())){return createDuration({from:this,to:time}).locale(this.locale()).humanize(!withoutSuffix);}else{return this.localeData().invalidDate();}}function toNow(withoutSuffix){return this.to(createLocal(),withoutSuffix);}function locale(key){var newLocaleData;if(key===undefined){return this._locale._abbr;\\n}else{newLocaleData=getLocale(key);if(newLocaleData!=null){this._locale=newLocaleData;}return this;}}var lang=deprecate('moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',function(key){if(key===undefined){return this.localeData();}else{return this.locale(key);}});function localeData(){return this._locale;}var MS_PER_SECOND=1000,MS_PER_MINUTE=60*MS_PER_SECOND,MS_PER_HOUR=60*MS_PER_MINUTE,MS_PER_400_YEARS=(365*400+97)*24*MS_PER_HOUR;function mod$1(dividend,divisor){return((dividend%divisor)+divisor)%divisor;}function localStartOfDate(y,m,d){if(y<100&&y>=0){return new Date(y+400,m,d)-MS_PER_400_YEARS;}else{return new Date(y,m,d).valueOf();}}function utcStartOfDate(y,m,d){if(y<100&&y>=0){return Date.UTC(y+400,m,d)-MS_PER_400_YEARS;}else{return Date.UTC(y,m,d);}}function startOf(units){var time,startOfDate;units=normalizeUnits(units);if(units===undefined||units==='millisecond'||!this.isValid()){\\nreturn this;}startOfDate=this._isUTC?utcStartOfDate:localStartOfDate;switch(units){case'year':time=startOfDate(this.year(),0,1);break;case'quarter':time=startOfDate(this.year(),this.month()-(this.month()%3),1);break;case'month':time=startOfDate(this.year(),this.month(),1);break;case'week':time=startOfDate(this.year(),this.month(),this.date()-this.weekday());break;case'isoWeek':time=startOfDate(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case'day':case'date':time=startOfDate(this.year(),this.month(),this.date());break;case'hour':time=this._d.valueOf();time-=mod$1(time+(this._isUTC?0:this.utcOffset()*MS_PER_MINUTE),MS_PER_HOUR);break;case'minute':time=this._d.valueOf();time-=mod$1(time,MS_PER_MINUTE);break;case'second':time=this._d.valueOf();time-=mod$1(time,MS_PER_SECOND);break;}this._d.setTime(time);hooks.updateOffset(this,true);return this;}function endOf(units){var time,startOfDate;units=normalizeUnits(units);if(units===undefined||units==='millisecond'||!this.isValid()){\\nreturn this;}startOfDate=this._isUTC?utcStartOfDate:localStartOfDate;switch(units){case'year':time=startOfDate(this.year()+1,0,1)-1;break;case'quarter':time=startOfDate(this.year(),this.month()-(this.month()%3)+3,1)-1;break;case'month':time=startOfDate(this.year(),this.month()+1,1)-1;break;case'week':time=startOfDate(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case'isoWeek':time=startOfDate(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case'day':case'date':time=startOfDate(this.year(),this.month(),this.date()+1)-1;break;case'hour':time=this._d.valueOf();time+=MS_PER_HOUR-mod$1(time+(this._isUTC?0:this.utcOffset()*MS_PER_MINUTE),MS_PER_HOUR)-1;break;case'minute':time=this._d.valueOf();time+=MS_PER_MINUTE-mod$1(time,MS_PER_MINUTE)-1;break;case'second':time=this._d.valueOf();time+=MS_PER_SECOND-mod$1(time,MS_PER_SECOND)-1;break;}this._d.setTime(time);hooks.updateOffset(this,true);return this;}function valueOf(){return this._d.valueOf()-(this._offset||0)*60000;\\n}function unix(){return Math.floor(this.valueOf()/1000);}function toDate(){return new Date(this.valueOf());}function toArray(){var m=this;return[m.year(),m.month(),m.date(),m.hour(),m.minute(),m.second(),m.millisecond(),];}function toObject(){var m=this;return{years:m.year(),months:m.month(),date:m.date(),hours:m.hours(),minutes:m.minutes(),seconds:m.seconds(),milliseconds:m.milliseconds(),};}function toJSON(){return this.isValid()?this.toISOString():null;}function isValid$2(){return isValid(this);}function parsingFlags(){return extend({},getParsingFlags(this));}function invalidAt(){return getParsingFlags(this).overflow;}function creationData(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict,};}addFormatToken('N',0,0,'eraAbbr');addFormatToken('NN',0,0,'eraAbbr');addFormatToken('NNN',0,0,'eraAbbr');addFormatToken('NNNN',0,0,'eraName');addFormatToken('NNNNN',0,0,'eraNarrow');addFormatToken('y',['y',1],'yo','eraYear');addFormatToken('y',['yy',2],0,'eraYear');\\naddFormatToken('y',['yyy',3],0,'eraYear');addFormatToken('y',['yyyy',4],0,'eraYear');addRegexToken('N',matchEraAbbr);addRegexToken('NN',matchEraAbbr);addRegexToken('NNN',matchEraAbbr);addRegexToken('NNNN',matchEraName);addRegexToken('NNNNN',matchEraNarrow);addParseToken(['N','NN','NNN','NNNN','NNNNN'],function(input,array,config,token){var era=config._locale.erasParse(input,token,config._strict);if(era){getParsingFlags(config).era=era;}else{getParsingFlags(config).invalidEra=input;}});addRegexToken('y',matchUnsigned);addRegexToken('yy',matchUnsigned);addRegexToken('yyy',matchUnsigned);addRegexToken('yyyy',matchUnsigned);addRegexToken('yo',matchEraYearOrdinal);addParseToken(['y','yy','yyy','yyyy'],YEAR);addParseToken(['yo'],function(input,array,config,token){var match;if(config._locale._eraYearOrdinalRegex){match=input.match(config._locale._eraYearOrdinalRegex);}if(config._locale.eraYearOrdinalParse){array[YEAR]=config._locale.eraYearOrdinalParse(input,match);}else{array[YEAR]=parseInt(input,10);\\n}});function localeEras(m,format){var i,l,date,eras=this._eras||getLocale('en')._eras;for(i=0,l=eras.length;i<l;++i){switch(typeof eras[i].since){case'string':date=hooks(eras[i].since).startOf('day');eras[i].since=date.valueOf();break;}switch(typeof eras[i].until){case'undefined':eras[i].until=+Infinity;break;case'string':date=hooks(eras[i].until).startOf('day').valueOf();eras[i].until=date.valueOf();break;}}return eras;}function localeErasParse(eraName,format,strict){var i,l,eras=this.eras(),name,abbr,narrow;eraName=eraName.toUpperCase();for(i=0,l=eras.length;i<l;++i){name=eras[i].name.toUpperCase();abbr=eras[i].abbr.toUpperCase();narrow=eras[i].narrow.toUpperCase();if(strict){switch(format){case'N':case'NN':case'NNN':if(abbr===eraName){return eras[i];}break;case'NNNN':if(name===eraName){return eras[i];}break;case'NNNNN':if(narrow===eraName){return eras[i];}break;}}else if([name,abbr,narrow].indexOf(eraName)>=0){return eras[i];}}}function localeErasConvertYear(era,year){var dir=era.since<=era.until?+1:-1;\\nif(year===undefined){return hooks(era.since).year();}else{return hooks(era.since).year()+(year-era.offset)*dir;}}function getEraName(){var i,l,val,eras=this.localeData().eras();for(i=0,l=eras.length;i<l;++i){val=this.clone().startOf('day').valueOf();if(eras[i].since<=val&&val<=eras[i].until){return eras[i].name;}if(eras[i].until<=val&&val<=eras[i].since){return eras[i].name;}}return'';}function getEraNarrow(){var i,l,val,eras=this.localeData().eras();for(i=0,l=eras.length;i<l;++i){val=this.clone().startOf('day').valueOf();if(eras[i].since<=val&&val<=eras[i].until){return eras[i].narrow;}if(eras[i].until<=val&&val<=eras[i].since){return eras[i].narrow;}}return'';}function getEraAbbr(){var i,l,val,eras=this.localeData().eras();for(i=0,l=eras.length;i<l;++i){val=this.clone().startOf('day').valueOf();if(eras[i].since<=val&&val<=eras[i].until){return eras[i].abbr;}if(eras[i].until<=val&&val<=eras[i].since){return eras[i].abbr;}}return'';}function getEraYear(){var i,l,dir,val,eras=this.localeData().eras();\\nfor(i=0,l=eras.length;i<l;++i){dir=eras[i].since<=eras[i].until?+1:-1;val=this.clone().startOf('day').valueOf();if((eras[i].since<=val&&val<=eras[i].until)||(eras[i].until<=val&&val<=eras[i].since)){return((this.year()-hooks(eras[i].since).year())*dir+eras[i].offset);}}return this.year();}function erasNameRegex(isStrict){if(!hasOwnProp(this,'_erasNameRegex')){computeErasParse.call(this);}return isStrict?this._erasNameRegex:this._erasRegex;}function erasAbbrRegex(isStrict){if(!hasOwnProp(this,'_erasAbbrRegex')){computeErasParse.call(this);}return isStrict?this._erasAbbrRegex:this._erasRegex;}function erasNarrowRegex(isStrict){if(!hasOwnProp(this,'_erasNarrowRegex')){computeErasParse.call(this);}return isStrict?this._erasNarrowRegex:this._erasRegex;}function matchEraAbbr(isStrict,locale){return locale.erasAbbrRegex(isStrict);}function matchEraName(isStrict,locale){return locale.erasNameRegex(isStrict);}function matchEraNarrow(isStrict,locale){return locale.erasNarrowRegex(isStrict);}\\nfunction matchEraYearOrdinal(isStrict,locale){return locale._eraYearOrdinalRegex||matchUnsigned;}function computeErasParse(){var abbrPieces=[],namePieces=[],narrowPieces=[],mixedPieces=[],i,l,erasName,erasAbbr,erasNarrow,eras=this.eras();for(i=0,l=eras.length;i<l;++i){erasName=regexEscape(eras[i].name);erasAbbr=regexEscape(eras[i].abbr);erasNarrow=regexEscape(eras[i].narrow);namePieces.push(erasName);abbrPieces.push(erasAbbr);narrowPieces.push(erasNarrow);mixedPieces.push(erasName);mixedPieces.push(erasAbbr);mixedPieces.push(erasNarrow);}this._erasRegex=new RegExp('^('+mixedPieces.join('|')+')','i');this._erasNameRegex=new RegExp('^('+namePieces.join('|')+')','i');this._erasAbbrRegex=new RegExp('^('+abbrPieces.join('|')+')','i');this._erasNarrowRegex=new RegExp('^('+narrowPieces.join('|')+')','i');}addFormatToken(0,['gg',2],0,function(){return this.weekYear()%100;});addFormatToken(0,['GG',2],0,function(){return this.isoWeekYear()%100;});function addWeekYearFormatToken(token,getter){\\naddFormatToken(0,[token,token.length],0,getter);}addWeekYearFormatToken('gggg','weekYear');addWeekYearFormatToken('ggggg','weekYear');addWeekYearFormatToken('GGGG','isoWeekYear');addWeekYearFormatToken('GGGGG','isoWeekYear');addRegexToken('G',matchSigned);addRegexToken('g',matchSigned);addRegexToken('GG',match1to2,match2);addRegexToken('gg',match1to2,match2);addRegexToken('GGGG',match1to4,match4);addRegexToken('gggg',match1to4,match4);addRegexToken('GGGGG',match1to6,match6);addRegexToken('ggggg',match1to6,match6);addWeekParseToken(['gggg','ggggg','GGGG','GGGGG'],function(input,week,config,token){week[token.substr(0,2)]=toInt(input);});addWeekParseToken(['gg','GG'],function(input,week,config,token){week[token]=hooks.parseTwoDigitYear(input);});function getSetWeekYear(input){return getSetWeekYearHelper.call(this,input,this.week(),this.weekday()+this.localeData()._week.dow,this.localeData()._week.dow,this.localeData()._week.doy);}function getSetISOWeekYear(input){return getSetWeekYearHelper.call(\\nthis,input,this.isoWeek(),this.isoWeekday(),1,4);}function getISOWeeksInYear(){return weeksInYear(this.year(),1,4);}function getISOWeeksInISOWeekYear(){return weeksInYear(this.isoWeekYear(),1,4);}function getWeeksInYear(){var weekInfo=this.localeData()._week;return weeksInYear(this.year(),weekInfo.dow,weekInfo.doy);}function getWeeksInWeekYear(){var weekInfo=this.localeData()._week;return weeksInYear(this.weekYear(),weekInfo.dow,weekInfo.doy);}function getSetWeekYearHelper(input,week,weekday,dow,doy){var weeksTarget;if(input==null){return weekOfYear(this,dow,doy).year;}else{weeksTarget=weeksInYear(input,dow,doy);if(week>weeksTarget){week=weeksTarget;}return setWeekAll.call(this,input,week,weekday,dow,doy);}}function setWeekAll(weekYear,week,weekday,dow,doy){var dayOfYearData=dayOfYearFromWeeks(weekYear,week,weekday,dow,doy),date=createUTCDate(dayOfYearData.year,0,dayOfYearData.dayOfYear);this.year(date.getUTCFullYear());this.month(date.getUTCMonth());this.date(date.getUTCDate());return this;\\n}addFormatToken('Q',0,'Qo','quarter');addRegexToken('Q',match1);addParseToken('Q',function(input,array){array[MONTH]=(toInt(input)-1)*3;});function getSetQuarter(input){return input==null?Math.ceil((this.month()+1)/3):this.month((input-1)*3+(this.month()%3));}addFormatToken('D',['DD',2],'Do','date');addRegexToken('D',match1to2,match1to2NoLeadingZero);addRegexToken('DD',match1to2,match2);addRegexToken('Do',function(isStrict,locale){return isStrict?locale._dayOfMonthOrdinalParse||locale._ordinalParse:locale._dayOfMonthOrdinalParseLenient;});addParseToken(['D','DD'],DATE);addParseToken('Do',function(input,array){array[DATE]=toInt(input.match(match1to2)[0]);});var getSetDayOfMonth=makeGetSet('Date',true);addFormatToken('DDD',['DDDD',3],'DDDo','dayOfYear');addRegexToken('DDD',match1to3);addRegexToken('DDDD',match3);addParseToken(['DDD','DDDD'],function(input,array,config){config._dayOfYear=toInt(input);});function getSetDayOfYear(input){var dayOfYear=Math.round((this.clone().startOf('day')-this.clone().startOf('year'))/864e5\\n)+1;return input==null?dayOfYear:this.add(input-dayOfYear,'d');}addFormatToken('m',['mm',2],0,'minute');addRegexToken('m',match1to2,match1to2HasZero);addRegexToken('mm',match1to2,match2);addParseToken(['m','mm'],MINUTE);var getSetMinute=makeGetSet('Minutes',false);addFormatToken('s',['ss',2],0,'second');addRegexToken('s',match1to2,match1to2HasZero);addRegexToken('ss',match1to2,match2);addParseToken(['s','ss'],SECOND);var getSetSecond=makeGetSet('Seconds',false);addFormatToken('S',0,0,function(){return~~(this.millisecond()/100);});addFormatToken(0,['SS',2],0,function(){return~~(this.millisecond()/10);});addFormatToken(0,['SSS',3],0,'millisecond');addFormatToken(0,['SSSS',4],0,function(){return this.millisecond()*10;});addFormatToken(0,['SSSSS',5],0,function(){return this.millisecond()*100;});addFormatToken(0,['SSSSSS',6],0,function(){return this.millisecond()*1000;});addFormatToken(0,['SSSSSSS',7],0,function(){return this.millisecond()*10000;});addFormatToken(0,['SSSSSSSS',8],0,function(){\\nreturn this.millisecond()*100000;});addFormatToken(0,['SSSSSSSSS',9],0,function(){return this.millisecond()*1000000;});addRegexToken('S',match1to3,match1);addRegexToken('SS',match1to3,match2);addRegexToken('SSS',match1to3,match3);var token,getSetMillisecond;for(token='SSSS';token.length<=9;token+='S'){addRegexToken(token,matchUnsigned);}function parseMs(input,array){array[MILLISECOND]=toInt(('0.'+input)*1000);}for(token='S';token.length<=9;token+='S'){addParseToken(token,parseMs);}getSetMillisecond=makeGetSet('Milliseconds',false);addFormatToken('z',0,0,'zoneAbbr');addFormatToken('zz',0,0,'zoneName');function getZoneAbbr(){return this._isUTC?'UTC':'';}function getZoneName(){return this._isUTC?'Coordinated Universal Time':'';}var proto=Moment.prototype;proto.add=add;proto.calendar=calendar$1;proto.clone=clone;proto.diff=diff;proto.endOf=endOf;proto.format=format;proto.from=from;proto.fromNow=fromNow;proto.to=to;proto.toNow=toNow;proto.get=stringGet;proto.invalidAt=invalidAt;proto.isAfter=isAfter;\\nproto.isBefore=isBefore;proto.isBetween=isBetween;proto.isSame=isSame;proto.isSameOrAfter=isSameOrAfter;proto.isSameOrBefore=isSameOrBefore;proto.isValid=isValid$2;proto.lang=lang;proto.locale=locale;proto.localeData=localeData;proto.max=prototypeMax;proto.min=prototypeMin;proto.parsingFlags=parsingFlags;proto.set=stringSet;proto.startOf=startOf;proto.subtract=subtract;proto.toArray=toArray;proto.toObject=toObject;proto.toDate=toDate;proto.toISOString=toISOString;proto.inspect=inspect;if(typeof Symbol!=='undefined'&&Symbol.for!=null){proto[Symbol.for('nodejs.util.inspect.custom')]=function(){return'Moment<'+this.format()+'>';};}proto.toJSON=toJSON;proto.toString=toString;proto.unix=unix;proto.valueOf=valueOf;proto.creationData=creationData;proto.eraName=getEraName;proto.eraNarrow=getEraNarrow;proto.eraAbbr=getEraAbbr;proto.eraYear=getEraYear;proto.year=getSetYear;proto.isLeapYear=getIsLeapYear;proto.weekYear=getSetWeekYear;proto.isoWeekYear=getSetISOWeekYear;proto.quarter=proto.quarters=getSetQuarter;\\nproto.month=getSetMonth;proto.daysInMonth=getDaysInMonth;proto.week=proto.weeks=getSetWeek;proto.isoWeek=proto.isoWeeks=getSetISOWeek;proto.weeksInYear=getWeeksInYear;proto.weeksInWeekYear=getWeeksInWeekYear;proto.isoWeeksInYear=getISOWeeksInYear;proto.isoWeeksInISOWeekYear=getISOWeeksInISOWeekYear;proto.date=getSetDayOfMonth;proto.day=proto.days=getSetDayOfWeek;proto.weekday=getSetLocaleDayOfWeek;proto.isoWeekday=getSetISODayOfWeek;proto.dayOfYear=getSetDayOfYear;proto.hour=proto.hours=getSetHour;proto.minute=proto.minutes=getSetMinute;proto.second=proto.seconds=getSetSecond;proto.millisecond=proto.milliseconds=getSetMillisecond;proto.utcOffset=getSetOffset;proto.utc=setOffsetToUTC;proto.local=setOffsetToLocal;proto.parseZone=setOffsetToParsedOffset;proto.hasAlignedHourOffset=hasAlignedHourOffset;proto.isDST=isDaylightSavingTime;proto.isLocal=isLocal;proto.isUtcOffset=isUtcOffset;proto.isUtc=isUtc;proto.isUTC=isUtc;proto.zoneAbbr=getZoneAbbr;proto.zoneName=getZoneName;proto.dates=deprecate(\\n'dates accessor is deprecated. Use date instead.',getSetDayOfMonth);proto.months=deprecate('months accessor is deprecated. Use month instead',getSetMonth);proto.years=deprecate('years accessor is deprecated. Use year instead',getSetYear);proto.zone=deprecate('moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/',getSetZone);proto.isDSTShifted=deprecate('isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information',isDaylightSavingTimeShifted);function createUnix(input){return createLocal(input*1000);}function createInZone(){return createLocal.apply(null,arguments).parseZone();}function preParsePostFormat(string){return string;}var proto$1=Locale.prototype;proto$1.calendar=calendar;proto$1.longDateFormat=longDateFormat;proto$1.invalidDate=invalidDate;proto$1.ordinal=ordinal;proto$1.preparse=preParsePostFormat;proto$1.postformat=preParsePostFormat;proto$1.relativeTime=relativeTime;proto$1.pastFuture=pastFuture;\\nproto$1.set=set;proto$1.eras=localeEras;proto$1.erasParse=localeErasParse;proto$1.erasConvertYear=localeErasConvertYear;proto$1.erasAbbrRegex=erasAbbrRegex;proto$1.erasNameRegex=erasNameRegex;proto$1.erasNarrowRegex=erasNarrowRegex;proto$1.months=localeMonths;proto$1.monthsShort=localeMonthsShort;proto$1.monthsParse=localeMonthsParse;proto$1.monthsRegex=monthsRegex;proto$1.monthsShortRegex=monthsShortRegex;proto$1.week=localeWeek;proto$1.firstDayOfYear=localeFirstDayOfYear;proto$1.firstDayOfWeek=localeFirstDayOfWeek;proto$1.weekdays=localeWeekdays;proto$1.weekdaysMin=localeWeekdaysMin;proto$1.weekdaysShort=localeWeekdaysShort;proto$1.weekdaysParse=localeWeekdaysParse;proto$1.weekdaysRegex=weekdaysRegex;proto$1.weekdaysShortRegex=weekdaysShortRegex;proto$1.weekdaysMinRegex=weekdaysMinRegex;proto$1.isPM=localeIsPM;proto$1.meridiem=localeMeridiem;function get$1(format,index,field,setter){var locale=getLocale(),utc=createUTC().set(setter,index);return locale[field](utc,format);}function listMonthsImpl(format,index,field){\\nif(isNumber(format)){index=format;format=undefined;}format=format||'';if(index!=null){return get$1(format,index,field,'month');}var i,out=[];for(i=0;i<12;i++){out[i]=get$1(format,i,field,'month');}return out;}function listWeekdaysImpl(localeSorted,format,index,field){if(typeof localeSorted==='boolean'){if(isNumber(format)){index=format;format=undefined;}format=format||'';}else{format=localeSorted;index=format;localeSorted=false;if(isNumber(format)){index=format;format=undefined;}format=format||'';}var locale=getLocale(),shift=localeSorted?locale._week.dow:0,i,out=[];if(index!=null){return get$1(format,(index+shift)%7,field,'day');}for(i=0;i<7;i++){out[i]=get$1(format,(i+shift)%7,field,'day');}return out;}function listMonths(format,index){return listMonthsImpl(format,index,'months');}function listMonthsShort(format,index){return listMonthsImpl(format,index,'monthsShort');}function listWeekdays(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,'weekdays');}\\nfunction listWeekdaysShort(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,'weekdaysShort');}function listWeekdaysMin(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,'weekdaysMin');}getSetGlobalLocale('en',{eras:[{since:'0001-01-01',until:+Infinity,offset:1,name:'Anno Domini',narrow:'AD',abbr:'AD',},{since:'0000-12-31',until:-Infinity,offset:1,name:'Before Christ',narrow:'BC',abbr:'BC',},],dayOfMonthOrdinalParse:/\\\\d{1,2}(th|st|nd|rd)/,ordinal:function(number){var b=number%10,output=toInt((number%100)/10)===1?'th':b===1?'st':b===2?'nd':b===3?'rd':'th';return number+output;},});hooks.lang=deprecate('moment.lang is deprecated. Use moment.locale instead.',getSetGlobalLocale);hooks.langData=deprecate('moment.langData is deprecated. Use moment.localeData instead.',getLocale);var mathAbs=Math.abs;function abs(){var data=this._data;this._milliseconds=mathAbs(this._milliseconds);this._days=mathAbs(this._days);this._months=mathAbs(this._months);\\ndata.milliseconds=mathAbs(data.milliseconds);data.seconds=mathAbs(data.seconds);data.minutes=mathAbs(data.minutes);data.hours=mathAbs(data.hours);data.months=mathAbs(data.months);data.years=mathAbs(data.years);return this;}function addSubtract$1(duration,input,value,direction){var other=createDuration(input,value);duration._milliseconds+=direction*other._milliseconds;duration._days+=direction*other._days;duration._months+=direction*other._months;return duration._bubble();}function add$1(input,value){return addSubtract$1(this,input,value,1);}function subtract$1(input,value){return addSubtract$1(this,input,value,-1);}function absCeil(number){if(number<0){return Math.floor(number);}else{return Math.ceil(number);}}function bubble(){var milliseconds=this._milliseconds,days=this._days,months=this._months,data=this._data,seconds,minutes,hours,years,monthsFromDays;if(!((milliseconds>=0&&days>=0&&months>=0)||(milliseconds<=0&&days<=0&&months<=0))){milliseconds+=absCeil(monthsToDays(months)+days)*864e5;\\ndays=0;months=0;}data.milliseconds=milliseconds%1000;seconds=absFloor(milliseconds/1000);data.seconds=seconds%60;minutes=absFloor(seconds/60);data.minutes=minutes%60;hours=absFloor(minutes/60);data.hours=hours%24;days+=absFloor(hours/24);monthsFromDays=absFloor(daysToMonths(days));months+=monthsFromDays;days-=absCeil(monthsToDays(monthsFromDays));years=absFloor(months/12);months%=12;data.days=days;data.months=months;data.years=years;return this;}function daysToMonths(days){return(days*4800)/146097;}function monthsToDays(months){return(months*146097)/4800;}function as(units){if(!this.isValid()){return NaN;}var days,months,milliseconds=this._milliseconds;units=normalizeUnits(units);if(units==='month'||units==='quarter'||units==='year'){days=this._days+milliseconds/864e5;months=this._months+daysToMonths(days);switch(units){case'month':return months;case'quarter':return months/3;case'year':return months/12;}}else{days=this._days+Math.round(monthsToDays(this._months));switch(units){case'week':\\nreturn days/7+milliseconds/6048e5;case'day':return days+milliseconds/864e5;case'hour':return days*24+milliseconds/36e5;case'minute':return days*1440+milliseconds/6e4;case'second':return days*86400+milliseconds/1000;case'millisecond':return Math.floor(days*864e5)+milliseconds;default:throw new Error('Unknown unit '+units);}}}function makeAs(alias){return function(){return this.as(alias);};}var asMilliseconds=makeAs('ms'),asSeconds=makeAs('s'),asMinutes=makeAs('m'),asHours=makeAs('h'),asDays=makeAs('d'),asWeeks=makeAs('w'),asMonths=makeAs('M'),asQuarters=makeAs('Q'),asYears=makeAs('y'),valueOf$1=asMilliseconds;function clone$1(){return createDuration(this);}function get$2(units){units=normalizeUnits(units);return this.isValid()?this[units+'s']():NaN;}function makeGetter(name){return function(){return this.isValid()?this._data[name]:NaN;};}var milliseconds=makeGetter('milliseconds'),seconds=makeGetter('seconds'),minutes=makeGetter('minutes'),hours=makeGetter('hours'),days=makeGetter('days'),\\nmonths=makeGetter('months'),years=makeGetter('years');function weeks(){return absFloor(this.days()/7);}var round=Math.round,thresholds={ss:44,s:45,m:45,h:22,d:26,w:null,M:11,};function substituteTimeAgo(string,number,withoutSuffix,isFuture,locale){return locale.relativeTime(number||1,!!withoutSuffix,string,isFuture);}function relativeTime$1(posNegDuration,withoutSuffix,thresholds,locale){var duration=createDuration(posNegDuration).abs(),seconds=round(duration.as('s')),minutes=round(duration.as('m')),hours=round(duration.as('h')),days=round(duration.as('d')),months=round(duration.as('M')),weeks=round(duration.as('w')),years=round(duration.as('y')),a=(seconds<=thresholds.ss&&['s',seconds])||(seconds<thresholds.s&&['ss',seconds])||(minutes<=1&&['m'])||(minutes<thresholds.m&&['mm',minutes])||(hours<=1&&['h'])||(hours<thresholds.h&&['hh',hours])||(days<=1&&['d'])||(days<thresholds.d&&['dd',days]);if(thresholds.w!=null){a=a||(weeks<=1&&['w'])||(weeks<thresholds.w&&['ww',weeks]);}a=a||(months<=1&&['M'])||\\n(months<thresholds.M&&['MM',months])||(years<=1&&['y'])||['yy',years];a[2]=withoutSuffix;a[3]=+posNegDuration>0;a[4]=locale;return substituteTimeAgo.apply(null,a);}function getSetRelativeTimeRounding(roundingFunction){if(roundingFunction===undefined){return round;}if(typeof roundingFunction==='function'){round=roundingFunction;return true;}return false;}function getSetRelativeTimeThreshold(threshold,limit){if(thresholds[threshold]===undefined){return false;}if(limit===undefined){return thresholds[threshold];}thresholds[threshold]=limit;if(threshold==='s'){thresholds.ss=limit-1;}return true;}function humanize(argWithSuffix,argThresholds){if(!this.isValid()){return this.localeData().invalidDate();}var withSuffix=false,th=thresholds,locale,output;if(typeof argWithSuffix==='object'){argThresholds=argWithSuffix;argWithSuffix=false;}if(typeof argWithSuffix==='boolean'){withSuffix=argWithSuffix;}if(typeof argThresholds==='object'){th=Object.assign({},thresholds,argThresholds);if(argThresholds.s!=null&&argThresholds.ss==null){\\nth.ss=argThresholds.s-1;}}locale=this.localeData();output=relativeTime$1(this,!withSuffix,th,locale);if(withSuffix){output=locale.pastFuture(+this,output);}return locale.postformat(output);}var abs$1=Math.abs;function sign(x){return(x>0)-(x<0)||+x;}function toISOString$1(){if(!this.isValid()){return this.localeData().invalidDate();}var seconds=abs$1(this._milliseconds)/1000,days=abs$1(this._days),months=abs$1(this._months),minutes,hours,years,s,total=this.asSeconds(),totalSign,ymSign,daysSign,hmsSign;if(!total){return'P0D';}minutes=absFloor(seconds/60);hours=absFloor(minutes/60);seconds%=60;minutes%=60;years=absFloor(months/12);months%=12;s=seconds?seconds.toFixed(3).replace(/\\\\.?0+$/,''):'';totalSign=total<0?'-':'';ymSign=sign(this._months)!==sign(total)?'-':'';daysSign=sign(this._days)!==sign(total)?'-':'';hmsSign=sign(this._milliseconds)!==sign(total)?'-':'';return(totalSign+'P'+(years?ymSign+years+'Y':'')+(months?ymSign+months+'M':'')+(days?daysSign+days+'D':'')+(hours||minutes||seconds?'T':'')+\\n(hours?hmsSign+hours+'H':'')+(minutes?hmsSign+minutes+'M':'')+(seconds?hmsSign+s+'S':''));}var proto$2=Duration.prototype;proto$2.isValid=isValid$1;proto$2.abs=abs;proto$2.add=add$1;proto$2.subtract=subtract$1;proto$2.as=as;proto$2.asMilliseconds=asMilliseconds;proto$2.asSeconds=asSeconds;proto$2.asMinutes=asMinutes;proto$2.asHours=asHours;proto$2.asDays=asDays;proto$2.asWeeks=asWeeks;proto$2.asMonths=asMonths;proto$2.asQuarters=asQuarters;proto$2.asYears=asYears;proto$2.valueOf=valueOf$1;proto$2._bubble=bubble;proto$2.clone=clone$1;proto$2.get=get$2;proto$2.milliseconds=milliseconds;proto$2.seconds=seconds;proto$2.minutes=minutes;proto$2.hours=hours;proto$2.days=days;proto$2.weeks=weeks;proto$2.months=months;proto$2.years=years;proto$2.humanize=humanize;proto$2.toISOString=toISOString$1;proto$2.toString=toISOString$1;proto$2.toJSON=toISOString$1;proto$2.locale=locale;proto$2.localeData=localeData;proto$2.toIsoString=deprecate(\\n'toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)',toISOString$1);proto$2.lang=lang;addFormatToken('X',0,0,'unix');addFormatToken('x',0,0,'valueOf');addRegexToken('x',matchSigned);addRegexToken('X',matchTimestamp);addParseToken('X',function(input,array,config){config._d=new Date(parseFloat(input)*1000);});addParseToken('x',function(input,array,config){config._d=new Date(toInt(input));});hooks.version='2.30.1';setHookCallback(createLocal);hooks.fn=proto;hooks.min=min;hooks.max=max;hooks.now=now;hooks.utc=createUTC;hooks.unix=createUnix;hooks.months=listMonths;hooks.isDate=isDate;hooks.locale=getSetGlobalLocale;hooks.invalid=createInvalid;hooks.duration=createDuration;hooks.isMoment=isMoment;hooks.weekdays=listWeekdays;hooks.parseZone=createInZone;hooks.localeData=getLocale;hooks.isDuration=isDuration;hooks.monthsShort=listMonthsShort;hooks.weekdaysMin=listWeekdaysMin;hooks.defineLocale=defineLocale;hooks.updateLocale=updateLocale;hooks.locales=listLocales;\\nhooks.weekdaysShort=listWeekdaysShort;hooks.normalizeUnits=normalizeUnits;hooks.relativeTimeRounding=getSetRelativeTimeRounding;hooks.relativeTimeThreshold=getSetRelativeTimeThreshold;hooks.calendarFormat=getCalendarFormat;hooks.prototype=proto;hooks.HTML5_FMT={DATETIME_LOCAL:'YYYY-MM-DDTHH:mm',DATETIME_LOCAL_SECONDS:'YYYY-MM-DDTHH:mm:ss',DATETIME_LOCAL_MS:'YYYY-MM-DDTHH:mm:ss.SSS',DATE:'YYYY-MM-DD',TIME:'HH:mm',TIME_SECONDS:'HH:mm:ss',TIME_MS:'HH:mm:ss.SSS',WEEK:'GGGG-[W]WW',MONTH:'YYYY-MM',};return hooks;})));\\nmodule.exports=window.moment;\\nmoment.updateLocale('en',{longDateFormat:{LT:'h:mm A',LTS:'h:mm:ss A',L:'DD/MM/YYYY',LL:'D MMMM YYYY',LLL:'D MMMM YYYY LT',LLLL:'dddd, D MMMM YYYY LT'}});\\n(function(){if(moment.locale()==='en'&&mw.config.get('wgUserLanguage')!=='en'){moment.defineLocale(mw.config.get('wgUserLanguage'),{parentLocale:'en'});}moment.updateLocale(moment.locale(),{preparse:function(s){const table=mw.language.getDigitTransformTable();if(mw.config.get('wgTranslateNumerals')){for(let i=0;i<10;i++){if(table[i]!==undefined){s=s.replace(new RegExp(mw.util.escapeRegExp(table[i]),'g'),i);}}}if(['ar','ar-sa','fa'].includes(mw.config.get('wgUserLanguage'))){s=s.replace(/،/g,',');}return s;},postformat:function(s){const table=mw.language.getDigitTransformTable();if(mw.config.get('wgTranslateNumerals')){for(let i=0;i<10;i++){if(table[i]!==undefined){s=s.replace(new RegExp(i,'g'),table[i]);}}}if(['ar','ar-sa','fa'].includes(mw.config.get('wgUserLanguage'))){s=s.replace(/,/g,'،');}return s;}});}());\\n},{},{},{},\\\"This page is using the deprecated ResourceLoader module \\\\\\\"moment\\\\\\\".\\\\n[1.44] Use mediawiki.DateFormatter or native Intl function instead. See https://phabricator.wikimedia.org/T146798\\\"];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=moment&skin=vector-2022&version=qfsnj\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=moment&skin=vector-2022&sourcemap=1&version=qfsnj\",\"mediawiki.api@zlex8\":\"mw.loader.impl(function(){return[\\\"mediawiki.api@zlex8\\\",function($,jQuery,require,module){(function(){const defaultOptions={parameters:{action:'query',format:'json'},ajax:{url:mw.util.wikiScript('api'),timeout:30*1000,dataType:'json'}};mw.Api=function(options){const defaults=Object.assign({},options),setsUrl=options&&options.ajax&&options.ajax.url!==undefined;defaults.parameters=Object.assign({},defaultOptions.parameters,defaults.parameters);defaults.ajax=Object.assign({},defaultOptions.ajax,defaults.ajax);defaults.userAgent=defaults.userAgent||('MediaWiki-JS/'+mw.config.get('wgVersion'));if(setsUrl){defaults.ajax.url=String(defaults.ajax.url);}if(defaults.useUS===undefined){defaults.useUS=!setsUrl;}this.defaults=defaults;this.requests=[];};function normalizeTokenType(type){const csrfActions=['edit','delete','protect','move','block','unblock','email','import','options'];if(csrfActions.includes(type)){return'csrf';}return type;}function createTokenCache(){const tokenPromises={};tokenPromises[defaultOptions.ajax.url]={};const tokens=mw.user.tokens.get();for(const tokenKey in tokens){\\nconst value=tokens[tokenKey];tokenPromises[defaultOptions.ajax.url][tokenKey]=$.Deferred().resolve(value).promise({abort:function(){}});}return tokenPromises;}let promises=createTokenCache();const ABORTED_BY_ABORTABLE_PROMISE=new Error('ABORTED_BY_ABORTABLE_PROMISE');mw.Api.prototype={abort:function(){this.requests.forEach((request)=>{if(request){request.abort();}});},get:function(parameters,ajaxOptions){ajaxOptions=ajaxOptions||{};ajaxOptions.type='GET';return this.ajax(parameters,ajaxOptions);},post:function(parameters,ajaxOptions){ajaxOptions=ajaxOptions||{};ajaxOptions.type='POST';return this.ajax(parameters,ajaxOptions);},preprocessParameters:function(parameters,useUS){let key;for(key in parameters){if(Array.isArray(parameters[key])){if(!useUS||!parameters[key].join('').includes('|')){parameters[key]=parameters[key].join('|');}else{parameters[key]='\\\\x1f'+parameters[key].join('\\\\x1f');}}else if(parameters[key]===false||parameters[key]===undefined){delete parameters[key];}}},ajax:function(parameters,ajaxOptions){\\nconst apiDeferred=$.Deferred();parameters=Object.assign({},this.defaults.parameters,parameters);ajaxOptions=Object.assign({},this.defaults.ajax,ajaxOptions);if(ajaxOptions.signal&&ajaxOptions.signal.aborted){if(ajaxOptions.signal.reason!==ABORTED_BY_ABORTABLE_PROMISE){apiDeferred.reject(ajaxOptions.signal.reason,ajaxOptions.signal.reason);}else{apiDeferred.reject('http',{textStatus:'abort',exception:'abort'});}return apiDeferred.promise({abort:function(){}});}let token;if(parameters.token){token=parameters.token;delete parameters.token;}this.preprocessParameters(parameters,this.defaults.useUS);if(ajaxOptions.type==='POST'&&window.FormData&&ajaxOptions.contentType==='multipart/form-data'){const formData=new FormData();for(const key in parameters){formData.append(key,parameters[key]);}if(token){formData.append('token',token);}ajaxOptions.data=formData;ajaxOptions.processData=false;ajaxOptions.contentType=false;}else{ajaxOptions.data=$.param(parameters);if(token){ajaxOptions.data+='&token='+encodeURIComponent(token);\\n}if(ajaxOptions.contentType==='multipart/form-data'){delete ajaxOptions.contentType;}}ajaxOptions.headers=ajaxOptions.headers||{};const lowercaseHeaders=Object.keys(ajaxOptions.headers||{}).map((k)=>k.toLowerCase());if(!lowercaseHeaders.includes('api-user-agent')){ajaxOptions.headers['Api-User-Agent']=this.defaults.userAgent;}const xhr=$.ajax(ajaxOptions).fail((jqXHR,textStatus,exception)=>{apiDeferred.reject('http',{xhr:jqXHR,textStatus:textStatus,exception:exception});}).done((result,textStatus,jqXHR)=>{let code;if(result===undefined||result===null||result===''){apiDeferred.reject('ok-but-empty','OK response but empty result (check HTTP headers?)',result,jqXHR);}else if(result.error){code=result.error.code===undefined?'unknown':result.error.code;apiDeferred.reject(code,result,result,jqXHR);}else if(result.errors){code=result.errors[0].code===undefined?'unknown':result.errors[0].code;apiDeferred.reject(code,result,result,jqXHR);}else{apiDeferred.resolve(result,jqXHR);}});const requestIndex=this.requests.length;\\nthis.requests.push(xhr);xhr.always(()=>{this.requests[requestIndex]=null;});if(ajaxOptions.signal){ajaxOptions.signal.addEventListener('abort',()=>{if(ajaxOptions.signal.reason!==ABORTED_BY_ABORTABLE_PROMISE){apiDeferred.reject(ajaxOptions.signal.reason,ajaxOptions.signal.reason);}xhr.abort();});}return apiDeferred.promise({abort:xhr.abort}).fail((code,details)=>{if(!((code==='http'&&details&&details.textStatus==='abort')||(details instanceof DOMException&&details.name==='AbortError'))){mw.log('mw.Api error: ',code,details);}});},makeAbortablePromise:function(ajaxOptions){const abort=new mw.Api.AbortController();if(ajaxOptions.signal){if(ajaxOptions.signal.aborted){abort.abort(ajaxOptions.signal.reason);}else{ajaxOptions.signal.addEventListener('abort',()=>{abort.abort(ajaxOptions.signal.reason);});}}ajaxOptions.signal=abort.signal;return{abort:()=>abort.abort(ABORTED_BY_ABORTABLE_PROMISE)};},postWithToken:function(tokenType,params,ajaxOptions){const assertParams={assert:params.assert,\\nassertuser:params.assertuser};ajaxOptions=ajaxOptions||{};const abortable=this.makeAbortablePromise(ajaxOptions);return this.getToken(tokenType,assertParams).then((token)=>{params.token=token;return this.post(params,ajaxOptions).catch((code,...args)=>{if(code==='badtoken'){this.badToken(tokenType);params.token=undefined;return this.getToken(tokenType,assertParams).then((t)=>{params.token=t;return this.post(params,ajaxOptions);});}return $.Deferred().reject(code,...args);});}).promise(abortable);},getToken:function(type,additionalParams,ajaxOptions){type=normalizeTokenType(type);if(typeof additionalParams==='string'){additionalParams={assert:additionalParams};}const cacheKey=type+'Token';let promiseGroup=promises[this.defaults.ajax.url];if(!promiseGroup){promiseGroup=promises[this.defaults.ajax.url]={};}let promise=promiseGroup&&promiseGroup[cacheKey];const reject=(...args)=>{delete promiseGroup[cacheKey];return $.Deferred().reject(...args);};if(!promise){const apiPromise=this.get(Object.assign({\\naction:'query',meta:'tokens',type:type},additionalParams),ajaxOptions);promise=apiPromise.then((res)=>{if(!res.query){return reject('query-missing',res);}if(!res.query.tokens[type+'token']){return $.Deferred().reject('token-missing',res);}return res.query.tokens[type+'token'];},reject).promise({abort:apiPromise.abort});promiseGroup[cacheKey]=promise;}return promise;},badToken:function(type){const promiseGroup=promises[this.defaults.ajax.url];type=normalizeTokenType(type);if(promiseGroup){delete promiseGroup[type+'Token'];}},getErrorMessage:function(data){if(data===undefined||data===null||data===''||data==='OK response but empty result (check HTTP headers?)'){return $('<div>').append(mw.message('api-clientside-error-invalidresponse').parseDom());}else if(data instanceof DOMException&&data.name==='TimeoutError'){return $('<div>').append(mw.message('api-clientside-error-timeout').parseDom());}else if(data instanceof DOMException&&data.name==='AbortError'){return $('<div>').append(mw.message('api-clientside-error-aborted').parseDom());\\n}else if(data.xhr){if(data.textStatus==='timeout'){return $('<div>').append(mw.message('api-clientside-error-timeout').parseDom());}else if(data.textStatus==='abort'){return $('<div>').append(mw.message('api-clientside-error-aborted').parseDom());}else if(data.textStatus==='parsererror'){return $('<div>').append(mw.message('api-clientside-error-invalidresponse').parseDom());}else if(data.xhr.status===429){const retryAfter=data.xhr.getResponseHeader('Retry-After');if(retryAfter){const segments=[];if(Math.floor(retryAfter/3600)>0){segments.push(mw.msg('duration-hours',mw.language.convertNumber(Math.floor(retryAfter/3600))));}if(Math.floor(retryAfter%3600/60)>0){segments.push(mw.msg('duration-minutes',mw.language.convertNumber(Math.floor(retryAfter%3600/60))));}if(Math.floor(retryAfter%60)>0){segments.push(mw.msg('duration-seconds',mw.language.convertNumber(Math.floor(retryAfter%60))));}if(segments.length===0){segments.push(mw.msg('duration-seconds',mw.language.convertNumber(0)));}const formattedDuration=mw.language.listToText(segments);\\nreturn $('<div>').append(mw.message('api-clientside-error-http-429-retry',formattedDuration).parseDom());}else{return $('<div>').append(mw.message('api-clientside-error-http-429').parseDom());}}else if(data.xhr.status){return $('<div>').append(mw.message('api-clientside-error-http',data.xhr.status).parseDom());}else{return $('<div>').append(mw.message('api-clientside-error-noconnect').parseDom());}}else if(data.error){return $('<div>').text(data.error.info);}else if(data.errors){return $(data.errors.map((err)=>{const $node=$('<div>').html(err['*']||err.html);return $node[0];}));}else{mw.log.warn('mw.Api#getErrorMessage could not handle the response:',data);return $('<div>').append(mw.message('api-clientside-error-invalidresponse').parseDom());}},prepareExtensibleApiRequest:function(hookName){const data={params:{},promise:$.Deferred().resolve().promise()};mw.hook(hookName).fire(data);return data.promise.then(()=>data.params);}};if(window.QUnit){mw.Api.resetTokenCacheForTest=function(){\\npromises=createTokenCache();};}}());\\nmw.Api.AbortController=function(){this.signal={aborted:false,reason:undefined,handlers:$.Callbacks(),addEventListener:function(event,handler){if(event==='abort'){this.handlers.add(handler);}}};this.abort=function(reason){if(reason===undefined){reason=new DOMException('The operation was aborted.','AbortError');}this.signal.aborted=true;this.signal.reason=reason;this.signal.handlers.fire();};};\\n(function(){const defaultOptions={ajax:{url:mw.util.wikiScript('rest'),timeout:30*1000}};function objectKeysToLowerCase(headers){const updatedHeaders={};for(const key in headers){updatedHeaders[key.toLowerCase()]=headers[key];}return updatedHeaders;}mw.Rest=function(options){const defaults=Object.assign({},options);defaults.ajax=Object.assign({},defaultOptions.ajax,defaults.ajax);this.url=defaults.ajax.url;delete defaults.ajax.url;this.defaults=defaults;this.requests=[];};mw.Rest.prototype={abort:function(){this.requests.forEach((request)=>{if(request){request.abort();}});},get:function(path,query,headers){return this.ajax(path,{type:'GET',data:query,headers:headers||{}});},post:function(path,body,headers){if(body===undefined){body={};}headers=objectKeysToLowerCase(headers||{});return this.ajax(path,{type:'POST',headers:Object.assign(headers,{'content-type':'application/json'}),data:JSON.stringify(body)});},put:function(path,body,headers){headers=objectKeysToLowerCase(headers||{});\\nreturn this.ajax(path,{type:'PUT',headers:Object.assign(headers,{'content-type':'application/json'}),data:JSON.stringify(body)});},delete:function(path,body,headers){headers=objectKeysToLowerCase(headers||{});return this.ajax(path,{type:'DELETE',headers:Object.assign(headers,{'content-type':'application/json'}),data:JSON.stringify(body)});},ajax:function(path,ajaxOptions){const apiDeferred=$.Deferred();ajaxOptions=Object.assign({},this.defaults.ajax,ajaxOptions);ajaxOptions.url=this.url+path;const xhr=$.ajax(ajaxOptions);const requestIndex=this.requests.length;this.requests.push(xhr);xhr.always(()=>{this.requests[requestIndex]=null;});xhr.then((result,textStatus,jqXHR)=>{apiDeferred.resolve(result,jqXHR);},(jqXHR,textStatus,exception)=>{apiDeferred.reject('http',{xhr:jqXHR,textStatus:textStatus,exception:exception});});return apiDeferred.promise({abort:xhr.abort});}};}());\\n(function(){Object.assign(mw.Api.prototype,{isCategory:function(title){const apiPromise=this.get({formatversion:2,prop:'categoryinfo',titles:[String(title)]});return apiPromise.then((data)=>!!(data.query&&data.query.pages&&data.query.pages[0].categoryinfo)).promise({abort:apiPromise.abort});},getCategoriesByPrefix:function(prefix){const apiPromise=this.get({formatversion:2,list:'allpages',apprefix:prefix,apnamespace:mw.config.get('wgNamespaceIds').category});return apiPromise.then((data)=>data.query.allpages.map((category)=>new mw.Title(category.title).getMainText())).promise({abort:apiPromise.abort});},getCategories:function(title){const apiPromise=this.get({formatversion:2,prop:'categories',titles:[String(title)]});return apiPromise.then((data)=>{if(!data.query||!data.query.pages){return false;}const page=data.query.pages[0];if(!page.categories){return false;}return page.categories.map((cat)=>new mw.Title(cat.title));}).promise({abort:apiPromise.abort});}});}());\\n(function(){Object.assign(mw.Api.prototype,{postWithEditToken:function(params,ajaxOptions){return this.postWithToken('csrf',params,ajaxOptions);},getEditToken:function(){return this.getToken('csrf');},create:function(title,params,content){return this.postWithEditToken(Object.assign(this.assertCurrentUser({action:'edit',title:String(title),text:content,formatversion:'2',createonly:true}),params)).then((data)=>data.edit);},edit:function(title,transform){title=String(title);let basetimestamp,curtimestamp;return this.get({action:'query',prop:'revisions',rvprop:['content','timestamp'],rvslots:'main',titles:[title],formatversion:'2',curtimestamp:true}).then((data)=>{if(!data.query||!data.query.pages){return $.Deferred().reject('unknown');}const page=data.query.pages[0];if(!page||page.invalid){return $.Deferred().reject('invalidtitle');}if(page.missing){return $.Deferred().reject('nocreate-missing');}const revision=page.revisions[0];basetimestamp=revision.timestamp;curtimestamp=data.curtimestamp;\\nreturn transform({timestamp:revision.timestamp,content:revision.slots.main.content});}).then((params)=>{const editParams=typeof params==='object'?params:{text:String(params)};return this.postWithEditToken(Object.assign({action:'edit',title:title,formatversion:'2',assert:mw.config.get('wgUserName')?'user':undefined,basetimestamp:basetimestamp,starttimestamp:curtimestamp,nocreate:true},editParams));}).then((data)=>data.edit);},newSection:function(title,header,message,additionalParams){return this.postWithEditToken(Object.assign({action:'edit',section:'new',title:String(title),summary:header,text:message},additionalParams));}});}());\\n(function(){'use strict';Object.assign(mw.Api.prototype,{login:function(username,password){const params={action:'login',lgname:username,lgpassword:password};const ajaxOptions={};const abortable=this.makeAbortablePromise(ajaxOptions);return this.post(params,ajaxOptions).then((data)=>{params.lgtoken=data.login.token;return this.post(params,ajaxOptions).then((response)=>{let code;if(response.login.result!=='Success'){code=response.error&&response.error.code||'unknown';return $.Deferred().reject(code,response);}return response;});}).promise(abortable);}});}());\\n(function(){'use strict';Object.assign(mw.Api.prototype,{getMessages:function(messages,options){options=options||{};messages=Array.isArray(messages)?messages:[messages];return this.get(Object.assign({action:'query',meta:'allmessages',ammessages:messages.slice(0,50),amlang:mw.config.get('wgUserLanguage'),formatversion:2},options)).then((data)=>{const result={};data.query.allmessages.forEach((obj)=>{if(!obj.missing){result[obj.name]=obj.content;}});if(messages.length<=50){return result;}return this.getMessages(messages.slice(50),options).then((innerResult)=>Object.assign(result,innerResult));});},loadMessages:function(messages,options){return this.getMessages(messages,options).then(mw.messages.set.bind(mw.messages));},loadMessagesIfMissing:function(messages,options){messages=Array.isArray(messages)?messages:[messages];const missing=messages.filter((msg)=>!mw.message(msg).exists());if(missing.length===0){return $.Deferred().resolve();}return this.loadMessages(missing,options);}});}());\\n(function(){const saveOptionsRequests={};Object.assign(mw.Api.prototype,{saveOption:function(name,value,params){const options={};options[name]=value;return this.saveOptions(options,params);},saveOptions:function(options,params){const grouped=[];if(mw.config.get('wgUserName')===null||mw.config.get('wgUserIsTemp')){return $.Deferred().reject('notloggedin').promise();}let promise;if(saveOptionsRequests[this.defaults.ajax.url]&&saveOptionsRequests[this.defaults.ajax.url].state()==='pending'){promise=saveOptionsRequests[this.defaults.ajax.url].then(()=>$.Deferred().resolve(),()=>$.Deferred().resolve());}else{promise=$.Deferred().resolve();}for(const name in options){const value=options[name]===null?null:String(options[name]);let bundleable;if(this.defaults.useUS){bundleable=!name.includes('=');}else{bundleable=(value===null||!value.includes('|'))&&(!name.includes('|')&&!name.includes('='));}if(bundleable){if(value!==null){grouped.push(name+'='+value);}else{grouped.push(name);}}else{if(value!==null){\\npromise=promise.then(function(n,v){return this.postWithToken('csrf',Object.assign({formatversion:2,action:'options',optionname:n,optionvalue:v},params));}.bind(this,name,value));}else{promise=promise.then(function(n){return this.postWithToken('csrf',Object.assign({formatversion:2,action:'options',optionname:n},params));}.bind(this,name));}}}if(grouped.length){promise=promise.then(()=>this.postWithToken('csrf',Object.assign({formatversion:2,action:'options',change:grouped},params)));}saveOptionsRequests[this.defaults.ajax.url]=promise;return promise;}});}());\\n(function(){Object.assign(mw.Api.prototype,{parse:function(content,additionalParams){const config=Object.assign({formatversion:2,action:'parse',prop:'text',contentmodel:'wikitext'},additionalParams);let apiPromise;if(mw.Title&&content instanceof mw.Title){config.page=content.getPrefixedDb();apiPromise=this.get(config);}else{config.text=String(content);apiPromise=this.post(config);}return apiPromise.then((data)=>data.parse.text).promise({abort:apiPromise.abort});}});}());\\n(function(){Object.assign(mw.Api.prototype,{rollback:function(page,user,params){return this.postWithToken('rollback',Object.assign({action:'rollback',title:String(page),user:user,uselang:mw.config.get('wgUserLanguage')},params)).then((data)=>data.rollback);}});}());\\n(function(){const fieldsAllowed={stash:true,filekey:true,filename:true,comment:true,tags:true,text:true,watchlist:true,watchlistexpiry:true,ignorewarnings:true,chunk:true,offset:true,filesize:true,async:true};function getFirstKey(obj){return obj[Object.keys(obj)[0]];}Object.assign(mw.Api.prototype,{upload:function(file,data){if(file&&file.nodeType===Node.ELEMENT_NODE&&file.files){file=file.files[0];}if(!file){throw new Error('No file');}if(!(file instanceof window.File||file instanceof window.Blob)){throw new Error('Unsupported argument type passed to mw.Api.upload');}return this.uploadWithFormData(file,data);},uploadWithFormData:function(file,data){const deferred=$.Deferred();for(const key in data){if(!fieldsAllowed[key]){delete data[key];}}data=Object.assign({},this.defaults.parameters,{action:'upload'},data);if(!data.chunk){data.file=file;}if(!data.filename&&!data.stash){throw new Error('Filename not included in file data.');}const request=this[this.needToken()?'postWithEditToken':'post'](data,{\\ncontentType:'multipart/form-data',timeout:0,xhr:function(){const xhr=$.ajaxSettings.xhr();if(xhr.upload){xhr.upload.addEventListener('progress',(ev)=>{if(ev.lengthComputable){deferred.notify(ev.loaded/ev.total);}});}return xhr;}}).done((result)=>{deferred.notify(1);if(result.upload&&result.upload.warnings){deferred.reject(getFirstKey(result.upload.warnings),result);}else{deferred.resolve(result);}}).fail((errorCode,result)=>{deferred.notify(1);deferred.reject(errorCode,result);});return deferred.promise({abort:request.abort});},chunkedUpload:function(file,data,chunkSize,chunkRetries){const deferred=$.Deferred();chunkSize=chunkSize===undefined?5*1024*1024:chunkSize;chunkRetries=chunkRetries===undefined?1:chunkRetries;if(!data.filename){throw new Error('Filename not included in file data.');}let promise;let active=promise=this.uploadChunk(file,data,0,chunkSize,'',chunkRetries).done(chunkSize>=file.size?deferred.resolve:null).fail(deferred.reject).progress(deferred.notify);for(let start=chunkSize;start<file.size;start+=chunkSize){\\nconst end=Math.min(start+chunkSize,file.size);const next=$.Deferred();promise.done(function(s,e,n,result){const filekey=result.upload.filekey;active=this.uploadChunk(file,data,s,e,filekey,chunkRetries).done(e===file.size?deferred.resolve:n.resolve).fail(deferred.reject).progress(deferred.notify);}.bind(this,start,end,next));promise=next;}return deferred.promise({abort:active.abort});},uploadChunk:function(file,data,start,end,filekey,retries){const chunk=this.slice(file,start,end);retries=retries===undefined?1:retries;data.filesize=file.size;data.chunk=chunk;data.offset=start;if(filekey&&start!==0){data.filekey=filekey;}const upload=this.uploadWithFormData(file,data);return upload.then(null,(code,result)=>{if(result.upload&&result.upload.warnings){if(end===file.size){return $.Deferred().reject(result.upload.warnings.code||'unknown',result);}else{return $.Deferred().resolve(result);}}if(retries===0){return $.Deferred().reject(code,result);}const retry=this.uploadChunk.bind(this,file,data,start,end,filekey,retries-1);\\nreturn this.retry(code,result,retry);},(fraction)=>(start+fraction*(end-start))/file.size).promise({abort:upload.abort});},retry:function(code,result,callable){let uploadPromise;const deferred=$.Deferred(),retry=function(){uploadPromise=callable();uploadPromise.then(deferred.resolve,deferred.reject);};if(code!=='http'||result.textStatus==='abort'){return deferred.reject(code,result);}const retryTimer=setTimeout(retry,1000);return deferred.promise({abort:function(){if(retryTimer){clearTimeout(retryTimer);}if(uploadPromise.abort){uploadPromise.abort();}}});},slice:function(file,start,stop){if(file.mozSlice){return file.mozSlice(start,stop,file.type);}else if(file.webkitSlice){return file.webkitSlice(start,stop,file.type);}else{return file.slice(start,stop,file.type);}},finishUploadToStash:function(uploadPromise,data){let filekey;const finishUpload=(moreData)=>this.uploadFromStash(filekey,Object.assign({},data,moreData));return uploadPromise.then((result)=>{filekey=result.upload.filekey;\\nreturn finishUpload;},(errorCode,result)=>{if(result&&result.upload&&result.upload.result==='Success'&&result.upload.filekey){filekey=result.upload.filekey;return $.Deferred().resolve(finishUpload);}return $.Deferred().reject(errorCode,result);});},uploadToStash:function(file,data){if(!data.filename){throw new Error('Filename not included in file data.');}const promise=this.upload(file,{stash:true,filename:data.filename,ignorewarnings:data.ignorewarnings});return this.finishUploadToStash(promise,data);},chunkedUploadToStash:function(file,data,chunkSize,chunkRetries){if(!data.filename){throw new Error('Filename not included in file data.');}const promise=this.chunkedUpload(file,{stash:true,filename:data.filename,ignorewarnings:data.ignorewarnings},chunkSize,chunkRetries);return this.finishUploadToStash(promise,data);},uploadFromStash:function(filekey,data){data.filekey=filekey;data.action='upload';data.format='json';if(!data.filename){throw new Error('Filename not included in file data.');\\n}return this.postWithEditToken(data).then((result)=>{if(result.upload&&result.upload.warnings){return $.Deferred().reject(getFirstKey(result.upload.warnings),result).promise();}return result;});},needToken:function(){return true;}});}());\\n(function(){Object.assign(mw.Api.prototype,{getUserInfo:function(){return this.get({action:'query',meta:'userinfo',uiprop:['groups','rights']}).then((data)=>{if(data.query&&data.query.userinfo){return data.query.userinfo;}return $.Deferred().reject().promise();});},assertCurrentUser:function(query){const user=mw.config.get('wgUserName'),assertParams={};if(user!==null){assertParams.assert='user';assertParams.assertuser=user;}else{assertParams.assert='anon';}return Object.assign(assertParams,query);}});}());\\n(function(){function doWatchInternal(pages,addParams){const apiPromise=this.postWithToken('watch',Object.assign({formatversion:2,action:'watch',titles:Array.isArray(pages)?pages:String(pages)},addParams));return apiPromise.then((data)=>Array.isArray(pages)?data.watch:data.watch[0]).promise({abort:apiPromise.abort});}Object.assign(mw.Api.prototype,{watch:function(pages,expiry){return doWatchInternal.call(this,pages,{expiry:expiry});},unwatch:function(pages){return doWatchInternal.call(this,pages,{unwatch:1});}});}());\\n},{},{\\\"api-clientside-error-aborted\\\":\\\"The request was aborted.\\\",\\\"api-clientside-error-http\\\":\\\"Server returned error: HTTP $1.\\\",\\\"api-clientside-error-http-429\\\":\\\"You have performed too many actions in a short period of time. Try again later.\\\",\\\"api-clientside-error-http-429-retry\\\":\\\"You have performed too many actions in a short period of time. You can try again in $1.\\\",\\\"api-clientside-error-invalidresponse\\\":\\\"Invalid response from server.\\\",\\\"api-clientside-error-noconnect\\\":\\\"Could not connect to the server. Make sure you have a working internet connection and try again.\\\",\\\"api-clientside-error-timeout\\\":\\\"The server did not respond within the expected time.\\\",\\\"duration-hours\\\":\\\"$1 {{PLURAL:$1|hour|hours}}\\\",\\\"duration-minutes\\\":\\\"$1 {{PLURAL:$1|minute|minutes}}\\\",\\\"duration-seconds\\\":\\\"$1 {{PLURAL:$1|second|seconds}}\\\"}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.api&skin=vector-2022&version=q2anx\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.api&skin=vector-2022&sourcemap=1&version=q2anx\",\"mediawiki.user@qhmrd\":\"mw.loader.impl(function(){return[\\\"mediawiki.user@qhmrd\\\",function($,jQuery,require,module){(function(){let userInfoPromise,tempUserNamePromise,pageviewRandomId,sessionId;const CLIENTPREF_COOKIE_NAME='mwclientpreferences';const CLIENTPREF_SUFFIX='-clientpref-';const CLIENTPREF_DELIMITER=',';function getUserInfo(){if(!userInfoPromise){userInfoPromise=new mw.Api().getUserInfo();}return userInfoPromise;}function saveClientPrefs(feature,value){const existingCookie=mw.cookie.get(CLIENTPREF_COOKIE_NAME)||'';const data={};existingCookie.split(CLIENTPREF_DELIMITER).forEach((keyValuePair)=>{const m=keyValuePair.match(/^([\\\\w-]+)-clientpref-(\\\\w+)$/);if(m){data[m[1]]=m[2];}});data[feature]=value;const newCookie=Object.keys(data).map((key)=>key+CLIENTPREF_SUFFIX+data[key]).join(CLIENTPREF_DELIMITER);mw.cookie.set(CLIENTPREF_COOKIE_NAME,newCookie);}function isValidFeatureName(value){return value.match(/^[a-zA-Z0-9-]+$/)!==null;}function isValidFeatureValue(value){return value.match(/^[a-zA-Z0-9]+$/)!==null;}Object.assign(mw.user,{generateRandomSessionId:function(){let rnds;try{rnds=new Uint16Array(5);\\ncrypto.getRandomValues(rnds);}catch(e){rnds=new Array(5);for(let i=0;i<5;i++){rnds[i]=Math.floor(Math.random()*0x10000);}}return(rnds[0]+0x10000).toString(16).slice(1)+(rnds[1]+0x10000).toString(16).slice(1)+(rnds[2]+0x10000).toString(16).slice(1)+(rnds[3]+0x10000).toString(16).slice(1)+(rnds[4]+0x10000).toString(16).slice(1);},getPageviewToken:function(){if(!pageviewRandomId){pageviewRandomId=mw.user.generateRandomSessionId();}return pageviewRandomId;},getId:function(){return mw.config.get('wgUserId')||0;},isNamed:function(){return!mw.user.isAnon()&&!mw.user.isTemp();},isTemp:function(){return mw.config.get('wgUserIsTemp')||false;},getName:function(){return mw.config.get('wgUserName');},acquireTempUserName:function(){if(tempUserNamePromise!==undefined){return tempUserNamePromise;}if(mw.config.get('wgUserId')){tempUserNamePromise=$.Deferred().resolve(null);}else if(mw.config.get('wgTempUserName')){tempUserNamePromise=$.Deferred().resolve(mw.config.get('wgTempUserName'));}else{const api=new mw.Api();\\ntempUserNamePromise=api.post({action:'acquiretempusername'}).then((resp)=>{mw.config.set('wgTempUserName',resp.acquiretempusername);return resp.acquiretempusername;}).catch(()=>null);}return tempUserNamePromise;},getRegistration:function(){if(mw.user.isAnon()){return false;}const registration=mw.config.get('wgUserRegistration');return!registration?null:new Date(registration);},getFirstRegistration:function(){if(mw.user.isAnon()){return false;}const registration=mw.config.get('wgUserFirstRegistration');return registration?new Date(registration):null;},isAnon:function(){return mw.user.getName()===null;},sessionId:function(){if(sessionId===undefined){sessionId=mw.cookie.get('mwuser-sessionId');if(sessionId===null||!/^[0-9a-f]{20}$/.test(sessionId)){sessionId=mw.user.generateRandomSessionId();mw.cookie.set('mwuser-sessionId',sessionId,{expires:null});}}return sessionId;},id:function(){return mw.user.getName()||mw.user.sessionId();},getGroups:function(callback){const userGroups=mw.config.get('wgUserGroups',[]);\\nreturn $.Deferred().resolve(userGroups).then(callback);},getRights:function(callback){return getUserInfo().then((userInfo)=>userInfo.rights,()=>[]).then(callback);},clientPrefs:{set:function(feature,value){if(mw.user.isNamed()){throw new Error('clientPrefs are for unregistered users only');}if(!isValidFeatureName(feature)||!isValidFeatureValue(value)){return false;}const currentValue=mw.user.clientPrefs.get(feature);if(!currentValue){return false;}const oldFeatureClass=feature+CLIENTPREF_SUFFIX+currentValue;const newFeatureClass=feature+CLIENTPREF_SUFFIX+value;document.documentElement.classList.remove(oldFeatureClass);document.documentElement.classList.add(newFeatureClass);saveClientPrefs(feature,value);return true;},get:function(feature){const featurePrefix=feature+CLIENTPREF_SUFFIX;const docClass=document.documentElement.className;const featureRegEx=new RegExp('(^| )'+mw.util.escapeRegExp(featurePrefix)+'([a-zA-Z0-9]+)( |$)');const match=docClass.match(featureRegEx);const isAmbiguous=docClass.replace(featureRegEx,'$1$3').match(featureRegEx)!==null;\\nreturn!isAmbiguous&&match?match[2]:false;}}});}());\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.user&skin=vector-2022&version=18lxq\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.user&skin=vector-2022&sourcemap=1&version=18lxq\",\"mediawiki.page.watch.ajax@19tvq\":\"mw.loader.impl(function(){return[\\\"mediawiki.page.watch.ajax@19tvq\\\",{\\\"main\\\":\\\"watch-ajax.js\\\",\\\"files\\\":{\\\"watch-ajax.js\\\":function(require,module,exports){(function(){const pageTitle=mw.config.get('wgRelevantPageName'),config=require('./config.json'),isWatchlistExpiryEnabled=config.WatchlistExpiry,watchlistLabelsEnabled=config.EnableWatchlistLabels,watchstarsByTitle=Object.create(null);function updateWatchLinkAttributes($link,action,state,expiry){if(!$link.length){return;}expiry=expiry||'infinity';if(action!=='watch'&&action!=='unwatch'){throw new Error('Invalid action');}const otherAction=action==='watch'?'unwatch':'watch';const $li=$link.closest('li');if(state!=='loading'){$li.trigger('watchpage.mw',[otherAction,mw.util.isInfinity(expiry)?null:expiry]);}let tooltipAction=action;let daysLeftExpiry=null;let watchExpiry=null;if(isWatchlistExpiryEnabled&&action==='unwatch'){if(mw.util.isInfinity(expiry)){tooltipAction='unwatch';}else{const expiryDate=new Date(expiry);const currentDate=new Date();daysLeftExpiry=Math.ceil((expiryDate-currentDate)/(1000*60*60*24));if(daysLeftExpiry>0){tooltipAction='unwatch-expiring';}else{tooltipAction='unwatch-expiring-hours';\\n}watchExpiry=expiryDate.toISOString();}}const msgKey=state==='loading'?action+'ing':action;const msg=mw.msg(msgKey);const link=$link.get(0);if(link.children.length>1&&link.lastElementChild.tagName==='SPAN'){link.lastElementChild.textContent=msg;}else{link.textContent=msg;}$link.toggleClass('loading',state==='loading').attr('title',mw.msg('tooltip-ca-'+tooltipAction,daysLeftExpiry)).updateTooltipAccessKeys().attr('href',mw.util.getUrl(pageTitle,{action:action})).attr('data-mw-expiry',watchExpiry);$li.toggleClass('mw-watchlink-temp',expiry!==null&&expiry!=='infinity');if(state!=='loading'&&$li.prop('id')==='ca-'+otherAction){$li.prop('id','ca-'+action);}}function notifyPageWatchStatus(isWatched,expiry,expirySelected){expiry=expiry||'infinity';expirySelected=expirySelected||'infinite';mw.hook('wikipage.watchlistChange').fire(isWatched,expiry,expirySelected);}function updatePageWatchStatus(isWatched,expiry,expirySelected){(watchstarsByTitle[pageTitle]||[]).forEach((w)=>{w.update(isWatched,expiry);\\n});notifyPageWatchStatus(isWatched,expiry,expirySelected);}function updateWatchLink(titleOrLink,action,state,expiry,expirySelected){if(titleOrLink instanceof $){updateWatchLinkAttributes(titleOrLink,action,state,expiry);}else{const isWatched=action==='unwatch';const normalizedTitle=titleOrLink.getPrefixedDb();(watchstarsByTitle[normalizedTitle]||[]).forEach((w)=>{w.update(isWatched,expiry,expirySelected);});if(normalizedTitle===pageTitle){notifyPageWatchStatus(isWatched,expiry,expirySelected);}}}function mwUriGetAction(url){const action=mw.util.getParamValue('action',url);if(action!==null){return action;}const actionPaths=mw.config.get('wgActionPaths');for(const key in actionPaths){let parts=actionPaths[key].split('$1');parts=parts.map(mw.util.escapeRegExp);const m=new RegExp(parts.join('(.+)')).exec(url);if(m&&m[1]){return key;}}return'view';}function init(){let $pageWatchLinks=$('.mw-watchlink a[data-mw-interface]');if(!$pageWatchLinks.length){$pageWatchLinks=$('.mw-watchlink a, a.mw-watchlink');\\n$pageWatchLinks=$pageWatchLinks.filter(':not( #bodyContent *, #content * )');}if($pageWatchLinks.length){watchstar($pageWatchLinks,pageTitle);}}function Watchstar($link,title,callback){this.$link=$link;this.title=title;this.callback=callback;}Watchstar.prototype.update=function(isWatched,expiry){expiry=expiry||'infinity';updateWatchLinkAttributes(this.$link,isWatched?'unwatch':'watch','idle',expiry);if(this.callback){this.callback(this.$link,isWatched,expiry);}};function watchstar($links,title,callback){const notificationId='mw-watchlink-notification';const mwTitle=mw.Title.newFromText(title);const preferredExpiry=mw.user.options.get('watchstar-expiry','infinity');if(!mwTitle){return;}const normalizedTitle=mwTitle.getPrefixedDb();watchstarsByTitle[normalizedTitle]=watchstarsByTitle[normalizedTitle]||[];$links.each(function(){watchstarsByTitle[normalizedTitle].push(new Watchstar($(this),mwTitle,callback));});$links.attr('aria-controls',notificationId);$links.on('click',function(e){const action=mwUriGetAction(this.href);\\nif(!mwTitle||(action!=='watch'&&action!=='unwatch')){return true;}e.preventDefault();e.stopPropagation();const $link=$(this);if($link.hasClass('loading')){return;}updateWatchLinkAttributes($link,action,'loading');const modulesToLoad=['mediawiki.notification'];if(isWatchlistExpiryEnabled||watchlistLabelsEnabled){modulesToLoad.push('mediawiki.watchstar.widgets');}if(watchlistLabelsEnabled){modulesToLoad.push('mediawiki.widgets.MenuTagMultiselectWidget');}mw.loader.load(modulesToLoad);const api=new mw.Api();api[action](title,preferredExpiry).done((watchResponse)=>{const isWatched=watchResponse.watched===true;let message=isWatched?'addedwatchtext':'removedwatchtext';if(mwTitle.isTalkPage()){message+='-talk';}let notifyPromise;let watchlistPopup;if(isWatchlistExpiryEnabled||watchlistLabelsEnabled){if(isWatched){if(!preferredExpiry||mw.util.isInfinity(preferredExpiry)){message=mwTitle.isTalkPage()?'addedwatchindefinitelytext-talk':'addedwatchindefinitelytext';}else{message=mwTitle.isTalkPage()?'addedwatchexpirytext-talk':'addedwatchexpirytext';\\n}}notifyPromise=mw.loader.using('mediawiki.watchstar.widgets').then((require)=>{const WatchlistPopup=require('mediawiki.watchstar.widgets');if(!watchlistPopup){watchlistPopup=new WatchlistPopup(action,title,watchResponse.expiry,updateWatchLink,{expiryEnabled:isWatchlistExpiryEnabled,labelsEnabled:watchlistLabelsEnabled,message:mw.message(message,mwTitle.getPrefixedText(),preferredExpiry).parseDom(),$link:$link});}mw.notify(watchlistPopup.$element,{tag:'watch-self',id:notificationId,autoHideSeconds:'short'});});}else{notifyPromise=mw.notify(mw.message(message,mwTitle.getPrefixedText()).parseDom(),{tag:'watch-self',id:notificationId});}notifyPromise.always(()=>{watchstarsByTitle[normalizedTitle].forEach((w)=>{w.update(isWatched);});if(normalizedTitle===pageTitle){notifyPageWatchStatus(isWatched,watchResponse.expiry);}});}).fail((code,data)=>{updateWatchLinkAttributes($link,action);const $msg=api.getErrorMessage(data);mw.notify($msg,{tag:'watch-self',type:'error',id:notificationId});});});\\n}$(init);module.exports={watchstar:watchstar,updateWatchLink:updateWatchLink,updatePageWatchStatus:updatePageWatchStatus};}());\\n},\\\"config.json\\\":{\\\"WatchlistExpiry\\\":true,\\\"EnableWatchlistLabels\\\":true}}},{},{\\\"addedwatchtext\\\":\\\"\\\\\\\"[[:$1]]\\\\\\\" and its discussion page have been added to your [[Special:Watchlist|watchlist]].\\\",\\\"addedwatchtext-talk\\\":\\\"\\\\\\\"[[:$1]]\\\\\\\" and its associated page have been added to your [[Special:Watchlist|watchlist]].\\\",\\\"removedwatchtext\\\":\\\"\\\\\\\"[[:$1]]\\\\\\\" and its discussion page have been removed from your [[Special:Watchlist|watchlist]].\\\",\\\"removedwatchtext-talk\\\":\\\"\\\\\\\"[[:$1]]\\\\\\\" and its associated page have been removed from your [[Special:Watchlist|watchlist]].\\\",\\\"tooltip-ca-unwatch\\\":\\\"Remove this page from your watchlist\\\",\\\"tooltip-ca-unwatch-expiring\\\":\\\"{{PLURAL:$1|1 day|$1 days}} left in your watchlist. Click to remove it.\\\",\\\"tooltip-ca-unwatch-expiring-hours\\\":\\\"A few hours left in your watchlist. Click to remove it.\\\",\\\"tooltip-ca-watch\\\":\\\"Add this page to your watchlist\\\",\\\"unwatch\\\":\\\"Unwatch\\\",\\\"unwatching\\\":\\\"Unwatching...\\\",\\\"watch\\\":\\\"Watch\\\",\\\"watching\\\":\\\"Watching...\\\"}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.page.watch.ajax&skin=vector-2022&version=zmvkm\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.page.watch.ajax&skin=vector-2022&sourcemap=1&version=zmvkm\",\"ext.visualEditor.targetLoader@dx5s8\":\"mw.loader.impl(function(){return[\\\"ext.visualEditor.targetLoader@dx5s8\\\",function($,jQuery,require,module){mw.libs.ve=mw.libs.ve||{};mw.libs.ve.decodeURIComponentIntoArticleTitle=function(s,preserveUnderscores){try{s=decodeURIComponent(s);}catch(e){return s;}if(preserveUnderscores){return s;}return s.replace(/_/g,' ');};mw.libs.ve.unwrapParsoidSections=function(element,keepSection){Array.prototype.forEach.call(element.querySelectorAll('section[data-mw-section-id]'),(section)=>{const parent=section.parentNode,sectionId=section.getAttribute('data-mw-section-id');if(sectionId!==null&&+sectionId>0){section.firstChild.setAttribute('data-mw-section-id',sectionId);}if(keepSection!==undefined&&sectionId===keepSection){return;}while(section.firstChild){parent.insertBefore(section.firstChild,section);}parent.removeChild(section);});};mw.libs.ve.stripParsoidFallbackIds=function(element){Array.prototype.forEach.call(element.querySelectorAll('span[typeof=\\\"mw:FallbackId\\\"][id]:empty'),(legacySpan)=>{legacySpan.parentNode.removeChild(legacySpan);});};mw.libs.ve.restbaseIdRegExp=/^mw[a-zA-Z0-9\\\\-_]{2,6}$/;mw.libs.ve.stripRestbaseIds=function(doc){\\nconst restbaseIdRegExp=mw.libs.ve.restbaseIdRegExp;Array.prototype.forEach.call(doc.querySelectorAll('[id^=\\\"mw\\\"]'),(element)=>{if(restbaseIdRegExp.test(element.id)){element.removeAttribute('id');}});};mw.libs.ve.reduplicateStyles=function(element){Array.prototype.forEach.call(element.querySelectorAll('link[rel~=\\\"mw-deduplicated-inline-style\\\"]'),(link)=>{const href=link.getAttribute('href');if(!href||!href.startsWith('mw-data:')){return;}const key=href.slice('mw-data:'.length);const style=element.querySelector('style[data-mw-deduplicate=\\\"'+key+'\\\"]');if(!style){return;}const newStyle=link.ownerDocument.createElement('style');newStyle.setAttribute('data-mw-deduplicate',key);for(let i=0;i<style.childNodes.length;i++){newStyle.appendChild(style.childNodes[i].cloneNode(true));}Array.prototype.forEach.call(link.attributes,(attr)=>{if(attr.name!=='rel'&&attr.name!=='href'){newStyle.setAttribute(attr.name,attr.value);}});link.parentNode.replaceChild(newStyle,link);});Array.prototype.forEach.call(element.querySelectorAll('style[data-mw-deduplicate]:empty'),(style)=>{\\nconst key=style.getAttribute('data-mw-deduplicate');const firstStyle=element.querySelector('style[data-mw-deduplicate=\\\"'+key+'\\\"]');if(!firstStyle||firstStyle===style){return;}for(let i=0;i<firstStyle.childNodes.length;i++){style.appendChild(firstStyle.childNodes[i].cloneNode(true));}});};mw.libs.ve.deduplicateStyles=function(element){function isFosterablePosition(node){const fosterablePositions=['table','thead','tbody','tfoot','tr'];return node&&fosterablePositions.includes(node.parentNode.nodeName.toLowerCase());}const styleTagKeys={};Array.prototype.forEach.call(element.querySelectorAll('style[data-mw-deduplicate]'),(style)=>{const key=style.getAttribute('data-mw-deduplicate');if(!styleTagKeys[key]){styleTagKeys[key]=true;return;}if(!isFosterablePosition(style)){const link=style.ownerDocument.createElement('link');link.setAttribute('rel','mw-deduplicated-inline-style');link.setAttribute('href','mw-data:'+key);Array.prototype.forEach.call(style.attributes,(attr)=>{if(attr.name!=='rel'&&attr.name!=='data-mw-deduplicate'){\\nlink.setAttribute(attr.name,attr.value);}});style.parentNode.replaceChild(link,style);}else{style.innerHTML='';}});};mw.libs.ve.fixFragmentLinks=function(container,docTitle,prefix){const docTitleText=docTitle.getPrefixedText();prefix=prefix||'';Array.prototype.forEach.call(container.querySelectorAll('a[href*=\\\"#\\\"]'),(el)=>{let fragment=null;if(el.getAttribute('href').startsWith('#')){fragment=el.getAttribute('href').slice(1);}else{const targetData=mw.libs.ve.getTargetDataFromHref(el.href,el.ownerDocument);if(targetData.isInternal){const title=mw.Title.newFromText(targetData.title);if(title&&title.getPrefixedText()===docTitleText){fragment=new URL(el.href).hash.slice(1);}}}if(fragment!==null){if(!fragment){el.setAttribute('href','#');}else{if(prefix){const target=container.querySelector('#'+$.escapeSelector(fragment));if(target){target.setAttribute('id',prefix+fragment);target.setAttribute('data-mw-id-fixed','');}}el.setAttribute('href','#'+prefix+fragment);}el.removeAttribute('target');\\n}});Array.prototype.forEach.call(container.querySelectorAll('h1, h2, h3, h4, h5, h6'),(el)=>{if(el.hasAttribute('id')&&!el.hasAttribute('data-mw-id-fixed')){el.removeAttribute('id');}});};mw.libs.ve.getRegexFromUrlPattern=function(urlPattern){const regexEscape=(str)=>str.replace(/([.?*+^$[\\\\]\\\\\\\\(){}|-])/g,'\\\\\\\\$1');return new RegExp(regexEscape(urlPattern).replace(regexEscape('$1'),'(.*)'));};mw.libs.ve.getTargetDataFromHref=function(href,doc){function returnExternalData(){return{isInternal:false};}function returnInternalData(titleish){const data=mw.libs.ve.parseParsoidResourceName(titleish);data.isInternal=true;return data;}let url;try{url=new URL(href,doc.baseURI);}catch(e){return returnExternalData();}const externalLinkUrlProtocolsRegExp=new RegExp('^('+mw.config.get('wgUrlProtocols')+')','i');if(!externalLinkUrlProtocolsRegExp.test(url.toString())){return returnInternalData(url.toString());}if(url.searchParams.get('action')==='edit'&&url.searchParams.get('redlink')==='1'){url.searchParams.delete('action');\\nurl.searchParams.delete('redlink');}const keys=[];url.searchParams.forEach((val,key)=>{keys.push(key);});const queryLength=keys.length;const relativeHref=url.toString().replace(/^https?:/i,'');const scriptBase=new URL(mw.config.get('wgScript'),doc.baseURI).toString().replace(/^https?:/i,'');if(relativeHref.startsWith(scriptBase)){if(queryLength===1&&url.searchParams.get('title')){return returnInternalData(url.searchParams.get('title')+url.hash);}}const articleBase=new URL(mw.config.get('wgArticlePath'),doc.baseURI).toString().replace(/^https?:/i,'');const articleBaseRegex=mw.libs.ve.getRegexFromUrlPattern(articleBase);const matches=relativeHref.match(articleBaseRegex);if(matches){if(queryLength===0&&matches&&!matches[1].split('#')[0].includes('?')){return returnInternalData(matches[1]);}}return returnExternalData();};mw.libs.ve.encodeParsoidResourceName=function(title){const idx=title.indexOf('#');let anchor=null;if(idx!==-1){anchor=title.slice(idx+1);title=title.slice(0,idx);}let encodedTitle=title.replace(/[%? [\\\\]#|<>]/g,(match)=>mw.util.wikiUrlencode(match));\\nif(anchor!==null){encodedTitle+='#'+mw.util.escapeIdForLink(anchor);}return'./'+encodedTitle;};mw.libs.ve.parseParsoidResourceName=function(resourceName){const matches=resourceName.match(/^(\\\\.\\\\/|)(.*)$/);return{title:mw.libs.ve.decodeURIComponentIntoArticleTitle(matches[2])};};mw.libs.ve.normalizeParsoidResourceName=function(resourceName){return mw.libs.ve.parseParsoidResourceName(resourceName).title;};\\nmw.libs.ve=mw.libs.ve||{};mw.libs.ve.smoothScrollTo=function(scrollTop){const supportsSmoothScroll='scrollBehavior'in document.documentElement.style;if(supportsSmoothScroll){window.scroll({top:scrollTop,behavior:'smooth'});}else{let scrollContainer;if(OO&&OO.ui){scrollContainer=OO.ui.Element.static.getRootScrollableElement(document.body);}else{scrollContainer=document.documentElement;}$(scrollContainer).animate({scrollTop});}};\\n(function(){mw.libs.ve=mw.libs.ve||{};const conf=mw.config.get('wgVisualEditorConfig'),pluginCallbacks=[],modules=['ext.visualEditor.articleTarget',...conf.pluginModules.filter(mw.loader.getState)];const url=new URL(location.href);mw.libs.ve.initialUrl=url;if(mw.user.options.get('visualeditor-newwikitext')||url.searchParams.get('veaction')==='editsource'){modules.push('ext.visualEditor.mwwikitext');}if(mw.user.options.get('visualeditor-collab')||url.searchParams.has('collabSession')){modules.push('ext.visualEditor.collab');}if(conf.editCheck&&conf.editCheckABTest){let inABTest;if(mw.user.isAnon()){const token=mw.cookie.get('VEECid','',mw.user.generateRandomSessionId());mw.cookie.set('VEECid',token,{path:'/',expires:90*86400,prefix:''});inABTest=parseInt(token.slice(0,8),16)%2===1;}else{inABTest=mw.user.getId()%2===1;}conf.editCheckABTestGroup=inABTest?'test':'control';mw.config.set('wgVisualEditorEditCheckABTestBucket','2025-09-editcheck-'+conf.editCheckABTest+'-'+(inABTest?'test':'control')\\n);}let ecenable=url.searchParams.get('ecenable');if(window.MWVE_FORCE_EDIT_CHECK_ENABLED&&ecenable!=='0'){ecenable=window.MWVE_FORCE_EDIT_CHECK_ENABLED;}const editCheck=conf.editCheck||!!ecenable;if(conf.editCheckTagging||editCheck){modules.push('ext.visualEditor.editCheck','ext.visualEditor.editCheck.checks');}const namespaces=mw.config.get('wgNamespaceIds');if(Object.keys(namespaces).some((name)=>mw.Title.wantSignaturesNamespace(namespaces[name]))){modules.push('ext.visualEditor.mwsignature');}mw.libs.ve.targetLoader={addPlugin:function(plugin){if(typeof plugin==='string'){modules.push(plugin);}else{pluginCallbacks.push(plugin);}},loadModules:function(mode){mw.hook('ve.loadModules').fire(this.addPlugin.bind(this));ve.track('trace.moduleLoad.enter',{mode});return mw.loader.using(modules).then(()=>{ve.track('trace.moduleLoad.exit',{mode});pluginCallbacks.push(ve.init.platform.getInitializedPromise.bind(ve.init.platform));return $.when(...pluginCallbacks.map((callback)=>{try{return callback();\\n}catch(e){mw.log.warn('Failed to load VE plugin:',e);return null;}}));});},createCheckboxFields:function(checkboxesDef,widgetConfig){const checkboxFields=[],checkboxesByName={};if(checkboxesDef){Object.keys(checkboxesDef).forEach((name)=>{const options=checkboxesDef[name];let accessKey=null,title=null;if(options.tooltip){accessKey=mw.message('accesskey-'+options.tooltip).text();title=mw.message('tooltip-'+options.tooltip).text();}if(options['title-message']){title=mw.message(options['title-message']).text();}const $label=mw.message(options['label-message']).parseDom();const config=$.extend({accessKey,classes:['ve-ui-mwSaveDialog-checkbox-'+name]},widgetConfig);let checkbox;switch(options.class){case'OOUI\\\\\\\\DropdownInputWidget':checkbox=new OO.ui.DropdownInputWidget($.extend(config,{value:options.default,options:options.options}));break;default:checkbox=new OO.ui.CheckboxInputWidget($.extend(config,{selected:options.default}));break;}checkboxFields.push(new OO.ui.FieldLayout(checkbox,{\\nalign:'inline',label:$label,title,invisibleLabel:!!options.invisibleLabel,classes:['ve-ui-mwSaveDialog-field-'+name]}));checkboxesByName[name]=checkbox;});}return{checkboxFields,checkboxesByName};},requestPageData:function(mode,pageName,options={}){if(mode==='visual'&&options.section==='new'){throw new Error('Adding new section is not supported in visual mode');}const apiRequest=mode==='source'?this.requestWikitext.bind(this,pageName,options):this.requestParsoidData.bind(this,pageName,options);if(options.sessionStore){let sessionState;try{sessionState=JSON.parse(mw.storage.session.get('ve-docstate'));}catch(e){}if(sessionState){const request=sessionState.request||{};const enableVisualSectionEditing=conf.enableVisualSectionEditing;const section=request.mode==='source'||enableVisualSectionEditing===true||enableVisualSectionEditing===options.targetName?options.section:null;if(request.pageName===pageName&&request.mode===mode&&request.section===section){const dataPromise=$.Deferred().resolve({\\nvisualeditor:$.extend({content:mw.storage.session.get('ve-dochtml')},sessionState.response,{recovered:true})}).promise();if(sessionState.response.oldid===mw.config.get('wgCurRevisionId')){return dataPromise;}else{ve.track=function(){};return mw.loader.using('oojs-ui-windows').then(()=>OO.ui.confirm(mw.msg('visualeditor-autosave-modified-prompt-message'),{title:mw.msg('visualeditor-autosave-modified-prompt-title'),actions:[{action:'accept',label:mw.msg('visualeditor-autosave-modified-prompt-accept'),flags:['primary','progressive']},{action:'reject',label:mw.msg('visualeditor-autosave-modified-prompt-reject'),flags:'destructive'}]}).then((confirmed)=>{if(confirmed){return dataPromise;}else{mw.storage.session.remove('ve-docstate');return apiRequest();}}));}}}}return apiRequest();},requestParsoidData:function(pageName,options={},noRestbase=false,noMetadata=false){const section=options.section!==undefined?options.section:null,useRestbase=!noRestbase&&(conf.fullRestbaseUrl||conf.restbaseUrl)&&section===null;\\nconst data={action:'visualeditor',paction:useRestbase?'metadata':'parse',page:pageName,badetag:options.badetag,uselang:mw.config.get('wgUserLanguage'),editintro:options.editintro,preload:options.preload,preloadparams:options.preloadparams,formatversion:2};if(options.oldId!==undefined){data.oldid=options.oldId;}const start=ve.now();ve.track('trace.apiLoad.enter',{mode:'visual'});let apiXhr,apiPromise;let switched=false,fromEditedState=false;if(!useRestbase&&options.wikitext!==undefined){data.paction='parse';data.stash=true;switched=true;fromEditedState=options.modified;data.wikitext=options.wikitext;data.section=options.section;data.oldid=options.oldId;apiXhr=new mw.Api().post(data);}else{if(useRestbase&&noMetadata){apiPromise=$.Deferred().resolve({visualeditor:{}}).promise();}else{apiXhr=new mw.Api().get(data);}}if(!apiPromise){apiPromise=apiXhr.then((response)=>{ve.track('trace.apiLoad.exit',{mode:'visual'});mw.track('timing.ve.'+options.targetName+'.performance.system.apiLoad',ve.now()-start);\\nif(response.visualeditor){response.visualeditor.switched=switched;response.visualeditor.fromEditedState=fromEditedState;}return response;});}let dataPromise,abort;if(useRestbase){ve.track('trace.restbaseLoad.enter',{mode:'visual'});const headers={Accept:'text/html; charset=utf-8; profile=\\\"https://www.mediawiki.org/wiki/Specs/HTML/2.8.0\\\"','Accept-Language':mw.config.get('wgVisualEditor').pageLanguageCode,'Api-User-Agent':'VisualEditor-MediaWiki/'+mw.config.get('wgVersion')};let restbaseXhr,pageHtmlUrl;if(options.wikitext!==undefined&&!$('[name=wpSection]').val()){if(conf.fullRestbaseUrl){pageHtmlUrl=conf.fullRestbaseUrl+'v1/transform/wikitext/to/html/';}else{pageHtmlUrl=conf.restbaseUrl.replace('v1/page/html/','v1/transform/wikitext/to/html/');}switched=true;fromEditedState=options.modified;window.onbeforeunload=null;$(window).off('beforeunload');restbaseXhr=$.ajax({url:pageHtmlUrl+encodeURIComponent(pageName)+(data.oldid===undefined?'':'/'+data.oldid),type:'POST',data:{title:pageName,\\nwikitext:options.wikitext,stash:'true'},headers,dataType:'text'});}else{if(conf.fullRestbaseUrl){pageHtmlUrl=conf.fullRestbaseUrl+'v1/page/html/';}else{pageHtmlUrl=conf.restbaseUrl;}restbaseXhr=$.ajax({url:pageHtmlUrl+encodeURIComponent(pageName)+(data.oldid===undefined?'':'/'+data.oldid)+'?redirect=false&stash=true',type:'GET',headers,dataType:'text'});}const restbasePromise=restbaseXhr.then((response,status,jqxhr)=>{ve.track('trace.restbaseLoad.exit',{mode:'visual'});mw.track('timing.ve.'+options.targetName+'.performance.system.restbaseLoad',ve.now()-start);return[response,jqxhr.getResponseHeader('etag')];},(xhr,code,_)=>{if(xhr.status===404){return $.Deferred().resolve(['',undefined]).promise();}else{mw.log.warn('RESTBase load failed: '+xhr.statusText);return $.Deferred().reject(code,xhr,_).promise();}});dataPromise=$.when(apiPromise,restbasePromise).then((apiData,restbaseData)=>{if(apiData.visualeditor){if(restbaseData[0]||!apiData.visualeditor.content){apiData.visualeditor.content=restbaseData[0];\\napiData.visualeditor.etag=restbaseData[1];}apiData.visualeditor.switched=switched;apiData.visualeditor.fromEditedState=fromEditedState;}return apiData;});abort=function(){if(apiXhr){apiXhr.abort();}restbaseXhr.abort();};}else{dataPromise=apiPromise;if(apiXhr){abort=apiXhr.abort;}}return dataPromise.then((resp)=>{const etagRegexp=/^(?:W\\\\/)?\\\"?([^\\\"/]+)(?:\\\\/([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}))(?:\\\\/([^\\\"]+))?\\\"?$/;if(useRestbase&&resp.visualeditor.content&&(!resp.visualeditor.etag||!etagRegexp.test(resp.visualeditor.etag))){return mw.libs.ve.targetLoader.requestParsoidData(pageName,$.extend({},options,{badetag:resp.visualeditor.etag||''}),true);}resp.veMode='visual';return resp;}).promise({abort});},requestWikitext:function(pageName,options={}){const data={action:'visualeditor',paction:'wikitext',page:pageName,uselang:mw.config.get('wgUserLanguage'),editintro:options.editintro,preload:options.preload,preloadparams:options.preloadparams,formatversion:2};if(options.section!==null&&options.section!==undefined){\\ndata.section=options.section;}if(options.oldId!==undefined){data.oldid=options.oldId;}const dataPromise=new mw.Api().get(data);return dataPromise.then((resp)=>{resp.veMode='source';return resp;}).promise({abort:dataPromise.abort});}};}());\\n(function(){mw.libs.ve=mw.libs.ve||{};mw.libs.ve.targetSaver={preloadDeflate:function(){mw.loader.load('mediawiki.deflate');},deflate:function(html){return mw.loader.using('mediawiki.deflate').then(()=>mw.deflateAsync(html));},getHtml:function(newDoc,oldDoc){function copyAttributes(from,to){Array.prototype.forEach.call(from.attributes,(attr)=>{to.setAttribute(attr.name,attr.value);});}if(oldDoc){for(let i=0,len=oldDoc.head.childNodes.length;i<len;i++){newDoc.head.appendChild(oldDoc.head.childNodes[i].cloneNode(true));}copyAttributes(oldDoc.documentElement,newDoc.documentElement);copyAttributes(oldDoc.head,newDoc.head);copyAttributes(oldDoc.body,newDoc.body);}$(newDoc).find(['script','noscript','object','style:not( [ data-mw ] ):not( [ data-mw-deduplicate ] )','embed','a[href^=\\\"javascript:\\\"]','img[src^=\\\"data:\\\"]','div[id=\\\"myEventWatcherDiv\\\"]','div[id=\\\"sendToInstapaperResults\\\"]','div[id=\\\"kloutify\\\"]','div[id^=\\\"mittoHidden\\\"]','div.hon.certificateLink','div.donut-container',\\n'div.shield-container'].join(',')).each((j,el)=>{function truncate(text,l){return text.length>l?text.slice(0,l)+'…':text;}const errorMessage='DOM content matching deny list found:\\\\n'+truncate(el.outerHTML,100)+'\\\\nContext:\\\\n'+truncate(el.parentNode.outerHTML,200);mw.log.error(errorMessage);const err=new Error(errorMessage);err.name='VeDomDenyListWarning';mw.errorLogger.logError(err,'error.visualeditor');$(el).remove();});$(newDoc).find('[data-mw-section-id]:not( section )').removeAttr('data-mw-section-id');mw.libs.ve.deduplicateStyles(newDoc.body);return'<!doctype html>'+ve.properOuterHtml(newDoc.documentElement);},deflateDoc:function(doc,oldDoc){return this.deflate(this.getHtml(doc,oldDoc));},saveDoc:function(doc,extraData,options){return this.deflateDoc(doc).then((html)=>this.postHtml(html,null,extraData,options));},postWikitext:function(wikitext,extraData,options){return this.postContent($.extend({wikitext},extraData),options);},postHtml:function(html,cacheKey,extraData={},options={}){\\nlet data;if(cacheKey){data=$.extend({cachekey:cacheKey},extraData);}else{data=$.extend({html},extraData);}return this.postContent(data,options).then(null,(code,response)=>{if(options.onCacheKeyFail){options.onCacheKeyFail();}if(code==='badcachekey'){return this.postHtml(html,null,extraData,options);}return $.Deferred().reject(code,response).promise();});},postContent:function(data,options={}){const api=options.api||new mw.Api();let start;if(options.now){start=options.now();}data=$.extend({action:'visualeditoredit',paction:'save',useskin:mw.config.get('skin'),mobileformat:!!mw.config.get('wgMFMode'),formatversion:2,errorformat:'html',errorlang:mw.config.get('wgUserLanguage'),errorsuselocal:true},data);const action=data.action;const request=api.postWithToken('csrf',data,{contentType:'multipart/form-data',trackEditAttemptStepSessionId:true});return request.then((response,jqxhr)=>{const responseData=response[action];if(options.track&&options.eventName){const eventData={bytes:require('mediawiki.String').byteLength(jqxhr.responseText),\\nduration:options.now()-start};const fullEventName='performance.system.'+options.eventName+(responseData.cachekey?'.withCacheKey':'.withoutCacheKey');options.track(fullEventName,eventData);}let error;if(!responseData){error={code:'invalidresponse',html:mw.message('api-clientside-error-invalidresponse').parse()};}else if(responseData.result!=='success'){return $.Deferred().reject('no-error-no-success',response).promise();}else{switch(responseData.paction){case'save':case'serialize':if(typeof responseData.content!=='string'){error={code:'invalidcontent',html:mw.message('api-clientside-error-invalidresponse').parse()};}break;case'diff':if(typeof responseData.diff!=='string'){error={code:'invalidcontent',html:mw.message('api-clientside-error-invalidresponse').parse()};}break;}}if(error){return $.Deferred().reject(error.code,{errors:[error]}).promise();}return responseData;},(code,response)=>{const responseText=OO.getProp(response,'xhr','responseText');if(responseText&&options.track&&options.eventName){\\nconst eventData={bytes:require('mediawiki.String').byteLength(responseText),duration:options.now()-start};let fullEventName;if(code==='badcachekey'){fullEventName='performance.system.'+options.eventName+'.badCacheKey';}else{fullEventName='performance.system.'+options.eventName+'.withoutCacheKey';}options.track(fullEventName,eventData);}return $.Deferred().reject(code,response).promise();});}};}());\\n},{},{\\\"api-clientside-error-invalidresponse\\\":\\\"Invalid response from server.\\\",\\\"visualeditor-autosave-modified-prompt-accept\\\":\\\"Resume edit\\\",\\\"visualeditor-autosave-modified-prompt-message\\\":\\\"This page was edited since you last loaded it. Would {{GENDER:|you}} like to resume {{GENDER:|your}} edit of the old version, or start a new edit of the latest version?\\\",\\\"visualeditor-autosave-modified-prompt-reject\\\":\\\"Start a new edit\\\",\\\"visualeditor-autosave-modified-prompt-title\\\":\\\"Resume {{GENDER:|your}} edit?\\\"}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.targetLoader&skin=vector-2022&version=afpwp\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.targetLoader&skin=vector-2022&sourcemap=1&version=afpwp\",\"ext.eventLogging@bnq3c\":\"mw.loader.impl(function(){return[\\\"ext.eventLogging@bnq3c\\\",{\\\"main\\\":\\\"ext.eventLogging/subscriber.js\\\",\\\"files\\\":{\\\"ext.eventLogging/subscriber.js\\\":function(require,module,exports){'use strict';mw.eventLog=require('./core.js');mw.eventLog.Schema=require('./Schema.js');function titleCase(word){return word[0].toUpperCase()+word.slice(1);}function handleTrackedEvent(topic,event){const schema=titleCase(topic.slice(topic.indexOf('.')+1));mw.eventLog.logEvent(schema,event);}function init(){mw.trackSubscribe('event.',handleTrackedEvent);}if(document.readyState==='complete'){mw.requestIdleCallback(init);}else{$(window).one('load',init);}\\n},\\\"ext.eventLogging/core.js\\\":function(require,module,exports){'use strict';let config=require('./data.json');const BackgroundQueue=require('./BackgroundQueue.js');const queue=(new BackgroundQueue(config.queueLingerSeconds));const debugMode=Number(mw.user.options.get('eventlogging-display-console'))===1;function makeLegacyStreamName(schemaName){return'eventlogging_'+schemaName;}const core={maxUrlSize:2000,getRevisionOrSchemaUri:function(schemaName){return config.schemasInfo[schemaName]||-1;},prepare:function(schemaName,eventData){const event={event:eventData,schema:schemaName,webHost:mw.config.get('wgServerName'),wiki:mw.config.get('wgDBname')},revisionOrSchemaUri=core.getRevisionOrSchemaUri(schemaName);if(typeof revisionOrSchemaUri==='string'){event.$schema=revisionOrSchemaUri;event.client_dt=new Date().toISOString();}else{event.revision=revisionOrSchemaUri;}return event;},makeBeaconUrl:function(data){const queryString=encodeURIComponent(JSON.stringify(data));return config.baseUrl+'?'+queryString+';';},checkUrlSize:function(schemaName,url){let message;\\nif(url.length>core.maxUrlSize){message='Url exceeds maximum length';core.logFailure(schemaName,'urlSize');mw.track('eventlogging.error',mw.format('[$1] $2',schemaName,message));return message;}},sendBeacon:function(url){if(navigator.sendBeacon){try{navigator.sendBeacon(url);}catch(e){}}else{document.createElement('img').src=url;}},enqueue:queue.add,logEvent:function(schemaName,eventData){const event=core.prepare(schemaName,eventData);const deferred=$.Deferred();if(event.$schema){core.submit(makeLegacyStreamName(schemaName),event);deferred.resolveWith(event,[event]);}else{const url=core.makeBeaconUrl(event);const sizeError=core.checkUrlSize(schemaName,url);if(!sizeError){if(config.baseUrl||debugMode){core.enqueue(()=>{core.sendBeacon(url);});}deferred.resolveWith(event,[event]);}else{deferred.rejectWith(event,[event,sizeError]);}}return deferred.promise();},logFailure:function(schemaName,errorCode){mw.track('counter.eventlogging.client_errors.'+schemaName+'.'+errorCode);mw.track('stats.mediawiki_eventlogging_client_errors_total',{schemaName,errorCode});\\n},randomTokenMatch:function(populationSize,explicitToken){const token=explicitToken||mw.user.generateRandomSessionId(),rand=parseInt(token.slice(0,8),16);return rand%populationSize===0;},sessionInSample:function(populationSize){return this.randomTokenMatch(populationSize,mw.user.sessionId());},eventInSample:function(populationSize){return this.randomTokenMatch(populationSize,mw.user.getPageviewToken());},pageviewInSample:function(populationSize){return this.randomTokenMatch(populationSize,mw.user.getPageviewToken());}};mw.log.deprecate(core,'inSample',core.pageviewInSample,'Use \\\"mw.eventLog.pageviewInSample\\\" instead.','mw.eventLog.inSample');const EventSubmitter=require('./EventSubmitter.js');const metricsPlatform=require('ext.eventLogging.metricsPlatform');function initMetricsClient(){const eventSubmitter=new EventSubmitter(config.serviceUri,core.enqueue.bind(core),debugMode);const metricsClient=metricsPlatform.newMetricsClient(config.streamConfigs,eventSubmitter);core.submit=metricsClient.submit.bind(metricsClient);\\ncore.submitInteraction=metricsClient.submitInteraction.bind(metricsClient);core.submitClick=metricsClient.submitClick.bind(metricsClient);core.newInstrument=metricsClient.newInstrument.bind(metricsClient);}initMetricsClient();core.storage={get:function(name){return mw.cookie.get('el-'+name);},set:function(name,value){mw.cookie.set('el-'+name,value);},unset:function(name){mw.cookie.set('el-'+name,null);}};core.id=(function(){const UINT32_MAX=4294967295;let pageviewId=null,sessionId=null;mw.trackSubscribe('sessionReset',()=>{core.id.resetSessionId();});return{resetPageviewId:function(){pageviewId=null;},resetSessionId:function(){sessionId=null;core.storage.unset('sessionId');},generateId:function(){return mw.user.generateRandomSessionId();},normalizeId:function(id){return parseInt(id.slice(0,8),16)/UINT32_MAX;},getPageviewId:function(){if(!pageviewId){pageviewId=core.id.generateId();}return pageviewId;},getSessionId:function(){if(!sessionId){sessionId=core.storage.get('sessionId');if(!sessionId){\\nsessionId=core.id.generateId();core.storage.set('sessionId',sessionId);}}return sessionId;}};}());function getUserEditCountBucket(editCount){if(editCount===null){return null;}if(editCount===0){return'0 edits';}if(editCount<5){return'1-4 edits';}if(editCount<100){return'5-99 edits';}if(editCount<1000){return'100-999 edits';}return'1000+ edits';}mw.config.set('wgUserEditCountBucket',getUserEditCountBucket(mw.config.get('wgUserEditCount')));if(window.QUnit){core.setOptionsForTest=function(opts){const originalOptions=config;config=opts;initMetricsClient();return originalOptions;};core.BackgroundQueue=BackgroundQueue;core.makeLegacyStreamName=makeLegacyStreamName;core.getUserEditCountBucket=getUserEditCountBucket;core.getQueue=function(){return queue;};}module.exports=core;\\n},\\\"ext.eventLogging/Schema.js\\\":function(require,module,exports){'use strict';function Schema(name,samplingRate,defaults){if(!name){throw new Error('name is required');}this.name=name;this.populationSize=samplingRate!==undefined?(1/samplingRate):1;this.defaults=defaults||{};}Schema.prototype.log=function(data,samplingRate){const pop=samplingRate!==undefined?(1/samplingRate):this.populationSize;if(mw.eventLog.pageviewInSample(pop)){mw.track('event.'+this.name,Object.assign({},this.defaults,data));}};module.exports=Schema;\\n},\\\"ext.eventLogging/BackgroundQueue.js\\\":function(require,module,exports){'use strict';module.exports=function BackgroundQueue(intervalSecs){let timer=null;const pendingCallbacks=[];let discardingPage;const queue=this;intervalSecs=intervalSecs||30;queue.add=function(fn){if(discardingPage){fn();return;}pendingCallbacks.push(fn);if(!timer){timer=setTimeout(queue.flush,intervalSecs*1000);}};queue.flush=function(){if(timer){clearTimeout(timer);timer=null;}while(pendingCallbacks.length){pendingCallbacks.shift()();}};window.addEventListener('pagehide',()=>{discardingPage=true;queue.flush();});window.addEventListener('pageshow',()=>{discardingPage=false;});document.addEventListener('visibilitychange',()=>{if(document.hidden){queue.flush();}});if(window.QUnit){queue.getTimer=function(){return timer;};queue.getCallbacks=function(){return pendingCallbacks;};}};\\n},\\\"ext.eventLogging/data.json\\\":{\\\"baseUrl\\\":\\\"https://wikitech.wikimedia.org/beacon/event\\\",\\\"schemasInfo\\\":{\\\"CentralNoticeBannerHistory\\\":\\\"/analytics/legacy/centralnoticebannerhistory/1.0.0\\\",\\\"CentralNoticeImpression\\\":\\\"/analytics/legacy/centralnoticeimpression/1.0.0\\\",\\\"VisualEditorTemplateDialogUse\\\":\\\"/analytics/legacy/visualeditortemplatedialoguse/1.0.0\\\",\\\"TemplateWizard\\\":\\\"/analytics/legacy/templatewizard/1.2.0\\\",\\\"EditAttemptStep\\\":\\\"/analytics/legacy/editattemptstep/2.0.2\\\",\\\"VisualEditorFeatureUse\\\":\\\"/analytics/legacy/visualeditorfeatureuse/1.1.0\\\",\\\"SearchSatisfaction\\\":\\\"/analytics/legacy/searchsatisfaction/1.5.0\\\",\\\"WMDEBannerEvents\\\":\\\"/analytics/legacy/wmdebannerevents/1.0.0\\\",\\\"WMDEBannerInteractions\\\":\\\"/analytics/legacy/wmdebannerinteractions/1.0.0\\\",\\\"WMDEBannerSizeIssue\\\":\\\"/analytics/legacy/wmdebannersizeissue/1.0.0\\\",\\\"WikidataCompletionSearchClicks\\\":\\\"/analytics/legacy/wikidatacompletionsearchclicks/1.0.0\\\",\\\"Test\\\":\\\"/analytics/legacy/test/1.2.0\\\",\\\"UniversalLanguageSelector\\\":\\\"/analytics/legacy/universallanguageselector/1.4.0\\\",\\n\\\"CpuBenchmark\\\":\\\"/analytics/legacy/cpubenchmark/1.1.0\\\",\\\"FirstInputDelay\\\":\\\"/analytics/legacy/firstinputdelay/1.0.0\\\",\\\"NavigationTiming\\\":\\\"/analytics/legacy/navigationtiming/1.6.0\\\",\\\"SaveTiming\\\":\\\"/analytics/legacy/savetiming/1.0.0\\\",\\\"QuickSurveysResponses\\\":\\\"/analytics/legacy/quicksurveysresponses/1.1.0\\\",\\\"QuickSurveyInitiation\\\":\\\"/analytics/legacy/quicksurveyinitiation/1.1.0\\\"},\\\"serviceUri\\\":\\\"https://intake-analytics.wikimedia.org/v1/events?hasty=true\\\",\\\"queueLingerSeconds\\\":30,\\\"streamConfigs\\\":{\\\"eventlogging_CentralNoticeBannerHistory\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_CentralNoticeImpression\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_ContentTranslationAbuseFilter\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\n\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_CodeMirrorUsage\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_CpuBenchmark\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_EditAttemptStep\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_HelpPanel\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_HomepageModule\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_HomepageVisit\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\n\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_LandingPageImpression\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_NavigationTiming\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_NewcomerTask\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_PaintTiming\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_PrefUpdate\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\n\\\"eventlogging_QuickSurveyInitiation\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_QuickSurveysResponses\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_ReferencePreviewsBaseline\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_ReferencePreviewsCite\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_ReferencePreviewsPopups\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_SaveTiming\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\n\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_ServerSideAccountCreation\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_SpecialInvestigate\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_SearchSatisfaction\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_TemplateDataApi\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_TemplateDataEditor\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\n\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_TemplateWizard\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_Test\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_UniversalLanguageSelector\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_VirtualPageView\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_VisualEditorFeatureUse\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_VisualEditorTemplateDialogUse\\\":{\\\"producers\\\":{\\n\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_WikibaseTermboxInteraction\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_WikidataCompletionSearchClicks\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_WMDEBannerEvents\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_WMDEBannerInteractions\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"eventlogging_WMDEBannerSizeIssue\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\n\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.client.session_tick\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}},\\\"sample\\\":{\\\"unit\\\":\\\"session\\\",\\\"rate\\\":0.1}},\\\"mediawiki.content_translation_event\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.talk_page_edit\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.mediasearch_interaction\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.searchpreview\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\n\\\"mediawiki.structured_task.article.link_suggestion_interaction\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.structured_task.article.image_suggestion_interaction\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.pref_diff\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.skin_diff\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.reading_depth\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.web_ui_scroll\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\n\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.welcomesurvey.interaction\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"test.instrumentation\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"test.instrumentation.sampled\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}},\\\"sample\\\":{\\\"rate\\\":0.5,\\\"unit\\\":\\\"session\\\"}},\\\"wd_propertysuggester.client_side_property_request\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"wd_propertysuggester.server_side_property_request\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\n\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.mentor_dashboard.visit\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.mentor_dashboard.personalized_praise\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.mentor_dashboard.interaction\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.ipinfo_interaction\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.ip_reputation.score\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}\\n},\\\"mediawiki.hcaptcha.edit\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":false}}}},\\\"mediawiki.hcaptcha.risk_score\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":false}}}},\\\"mediawiki.editgrowthconfig\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.accountcreation_block\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.editattempt_block\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.maps_interaction\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\n\\\"http.request_headers.user-agent\\\":false}}}},\\\"development.network.probe\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.web_ui_actions\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"page_namespace_id\\\",\\\"performer_is_logged_in\\\",\\\"performer_session_id\\\",\\\"performer_pageview_id\\\",\\\"performer_edit_count_bucket\\\",\\\"performer_groups\\\",\\\"performer_is_bot\\\",\\\"mediawiki_skin\\\",\\\"mediawiki_database\\\"]}},\\\"sample\\\":{\\\"unit\\\":\\\"session\\\",\\\"rate\\\":0.2}},\\\"mediawiki.web_ui_scroll_migrated\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"performer_is_bot\\\",\\\"mediawiki_database\\\",\\\"mediawiki_skin\\\",\\\"performer_session_id\\\",\\\"page_id\\\",\\n\\\"performer_is_logged_in\\\"]}}},\\\"mediawiki.product_metrics.checkuser_ip_auto_reveal_interaction\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":false}},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"performer_id\\\",\\\"performer_name\\\",\\\"performer_active_browsing_session_token\\\",\\\"performer_session_id\\\",\\\"agent_client_platform_family\\\"]}}},\\\"mediawiki.product_metrics.suggested_investigations_interaction\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":false}},\\\"mediawiki_eventbus\\\":{\\\"event_service_name\\\":\\\"eventgate-analytics-external\\\"},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"agent_client_platform_family\\\",\\\"mediawiki_database\\\",\\\"performer_id\\\",\\\"performer_groups\\\",\\\"performer_name\\\",\\\"performer_pageview_id\\\",\\\"performer_edit_count\\\",\\\"performer_edit_count_bucket\\\",\\\"performer_registration_dt\\\"]}}},\\n\\\"mediawiki.product_metrics.incident_reporting_system_interaction\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}},\\\"mediawiki_eventbus\\\":{\\\"event_service_name\\\":\\\"eventgate-analytics-external\\\"},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"page_id\\\",\\\"page_title\\\",\\\"page_namespace_id\\\",\\\"performer_language\\\",\\\"performer_language_variant\\\",\\\"performer_session_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"performer_name\\\"]}}},\\\"mediawiki.product_metrics.wikifunctions_ui\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"agent_client_platform_family\\\",\\\"page_id\\\",\\\"page_title\\\",\\\"page_revision_id\\\",\\\"performer_is_logged_in\\\",\\\"performer_id\\\",\\\"performer_name\\\",\\\"performer_session_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"performer_pageview_id\\\",\\\"performer_language\\\",\\n\\\"performer_language_variant\\\",\\\"performer_edit_count\\\",\\\"performer_edit_count_bucket\\\",\\\"performer_groups\\\",\\\"performer_is_bot\\\"]}},\\\"sample\\\":{\\\"unit\\\":\\\"pageview\\\",\\\"rate\\\":1}},\\\"mediawiki.product_metrics.wikilambda_api\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"agent_client_platform_family\\\",\\\"page_id\\\",\\\"page_revision_id\\\",\\\"page_title\\\",\\\"performer_active_browsing_session_token\\\",\\\"performer_edit_count\\\",\\\"performer_edit_count_bucket\\\",\\\"performer_groups\\\",\\\"performer_id\\\",\\\"performer_is_bot\\\",\\\"performer_is_logged_in\\\",\\\"performer_language\\\",\\\"performer_language_variant\\\",\\\"performer_name\\\",\\\"performer_pageview_id\\\",\\\"performer_session_id\\\"]}},\\\"sample\\\":{\\\"unit\\\":\\\"pageview\\\",\\\"rate\\\":1}},\\\"mediawiki.product_metrics.suggested_investigations_interaction.v2\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":false}},\\n\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"mediawiki_database\\\"]}}},\\\"mediawiki.product_metrics.translate_extension\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"mediawiki_database\\\",\\\"mediawiki_site_content_language\\\",\\\"mediawiki_site_content_language_variant\\\",\\\"page_content_language\\\",\\\"agent_client_platform\\\",\\\"agent_client_platform_family\\\",\\\"performer_session_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"performer_name\\\",\\\"performer_is_bot\\\",\\\"performer_is_logged_in\\\",\\\"performer_edit_count_bucket\\\",\\\"performer_groups\\\",\\\"performer_registration_dt\\\",\\\"performer_is_temp\\\",\\\"performer_language\\\",\\\"performer_language_variant\\\",\\\"performer_pageview_id\\\"]}},\\\"sample\\\":{\\\"unit\\\":\\\"pageview\\\",\\\"rate\\\":1}},\\\"mediawiki.product_metrics.translation_mint_for_readers\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\n\\\"http.request_headers.user-agent\\\":false}},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"mediawiki_database\\\",\\\"mediawiki_site_content_language\\\",\\\"mediawiki_site_content_language_variant\\\",\\\"page_content_language\\\",\\\"agent_client_platform\\\",\\\"agent_client_platform_family\\\",\\\"performer_session_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"performer_name\\\",\\\"performer_is_bot\\\",\\\"performer_is_logged_in\\\",\\\"performer_edit_count_bucket\\\",\\\"performer_groups\\\",\\\"performer_registration_dt\\\",\\\"performer_is_temp\\\",\\\"performer_language\\\",\\\"performer_language_variant\\\",\\\"performer_pageview_id\\\"]}},\\\"sample\\\":{\\\"unit\\\":\\\"pageview\\\",\\\"rate\\\":1}},\\\"mediawiki.product_metrics.translation_mint_for_readers.experiments\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":false},\\\"use_edge_uniques\\\":true},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"mediawiki_database\\\",\\\"mediawiki_skin\\\",\\\"mediawiki_site_content_language\\\",\\\"mediawiki_site_content_language_variant\\\",\\n\\\"page_content_language\\\",\\\"agent_client_platform\\\",\\\"agent_client_platform_family\\\",\\\"performer_session_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"performer_is_logged_in\\\",\\\"performer_is_temp\\\",\\\"performer_language\\\",\\\"performer_language_variant\\\",\\\"performer_pageview_id\\\"]}}},\\\"mediawiki.product_metrics.homepage_module_interaction\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"mediawiki_database\\\",\\\"mediawiki_site_content_language\\\",\\\"mediawiki_site_content_language_variant\\\",\\\"page_content_language\\\",\\\"agent_client_platform\\\",\\\"agent_client_platform_family\\\",\\\"performer_session_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"performer_name\\\",\\\"performer_is_bot\\\",\\\"performer_is_logged_in\\\",\\\"performer_edit_count_bucket\\\",\\\"performer_groups\\\",\\\"performer_registration_dt\\\",\\\"performer_is_temp\\\",\\\"performer_language\\\",\\\"performer_language_variant\\\",\\\"performer_pageview_id\\\",\\\"performer_id\\\"]\\n}},\\\"sample\\\":{\\\"unit\\\":\\\"pageview\\\",\\\"rate\\\":1}},\\\"mediawiki.product_metrics.growth_product_interaction\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":false}}}},\\\"mediawiki.product_metrics.ext_massdelete\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"mediawiki_database\\\",\\\"performer_session_id\\\"]}}},\\\"mediawiki.product_metrics.special_create_account\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}},\\\"mediawiki_eventbus\\\":{\\\"event_service_name\\\":\\\"eventgate-analytics-external\\\"},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"agent_client_platform_family\\\",\\\"mediawiki_database\\\",\\\"performer_language\\\",\\\"performer_language_variant\\\",\\\"performer_pageview_id\\\",\\\"performer_session_id\\\",\\n\\\"performer_active_browsing_session_token\\\"]}}},\\\"mediawiki.product_metrics.user_info_card_interaction\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":false}},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"agent_client_platform_family\\\",\\\"page_namespace\\\",\\\"page_namespace_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"performer_edit_count_bucket\\\",\\\"performer_groups\\\",\\\"performer_language\\\",\\\"performer_language_variant\\\",\\\"performer_name\\\",\\\"performer_registration_dt\\\",\\\"performer_session_id\\\",\\\"mediawiki_skin\\\",\\\"mediawiki_database\\\"]}}},\\\"mediawiki.product_metrics.WatchlistClickTracker\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":false}},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"mediawiki_database\\\",\\\"performer_name\\\",\\\"performer_pageview_id\\\"]}},\\\"sample\\\":{\\\"unit\\\":\\\"pageview\\\",\\\"rate\\\":1}},\\\"mediawiki.accountcreation.account_conversion\\\":{\\\"producers\\\":{\\n\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"mediawiki.accountcreation.login\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}}}},\\\"product_metrics.app_base\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[]}}},\\\"product_metrics.web_base\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":false},\\\"use_edge_uniques\\\":true},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"agent_client_platform\\\",\\\"agent_client_platform_family\\\",\\\"performer_is_logged_in\\\",\\\"performer_is_temp\\\",\\\"performer_pageview_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"mediawiki_skin\\\",\\\"mediawiki_database\\\"]}}},\\n\\\"product_metrics.web_base_with_ip\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":false,\\\"http.request_headers.x-ja3n\\\":\\\"x-ja3n\\\",\\\"http.request_headers.x-ja4h\\\":\\\"x-ja4h\\\",\\\"http.request_headers.x-is-browser\\\":\\\"x-is-browser\\\"},\\\"use_edge_uniques\\\":true},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"agent_client_platform\\\",\\\"agent_client_platform_family\\\",\\\"performer_is_logged_in\\\",\\\"performer_is_temp\\\",\\\"performer_pageview_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"mediawiki_skin\\\",\\\"mediawiki_database\\\"]}}},\\\"wikibase.client.interaction\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":\\\"user-agent\\\"}},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"mediawiki_database\\\",\\\"mediawiki_skin\\\",\\\"performer_is_logged_in\\\"]}}},\\\"mediawiki.product_metrics.readerexperiments_imagebrowsing\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\n\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":false},\\\"use_edge_uniques\\\":true},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"agent_client_platform\\\",\\\"agent_client_platform_family\\\",\\\"mediawiki_database\\\",\\\"mediawiki_skin\\\",\\\"page_content_language\\\",\\\"page_namespace_id\\\",\\\"performer_is_bot\\\",\\\"performer_is_logged_in\\\",\\\"performer_is_temp\\\",\\\"performer_session_id\\\"]}}},\\\"mediawiki.product_metrics.readerexperiments_stickyheaders\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":false},\\\"use_edge_uniques\\\":true},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"agent_client_platform\\\",\\\"agent_client_platform_family\\\",\\\"mediawiki_database\\\",\\\"mediawiki_skin\\\",\\\"page_content_language\\\",\\\"page_namespace_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"performer_edit_count_bucket\\\",\\\"performer_is_bot\\\",\\\"performer_is_logged_in\\\",\\\"performer_is_temp\\\",\\\"performer_session_id\\\"]}}},\\\"mediawiki.product_metrics.reader_experiments\\\":{\\\"producers\\\":{\\n\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":false},\\\"use_edge_uniques\\\":true},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"agent_client_platform\\\",\\\"agent_client_platform_family\\\",\\\"mediawiki_database\\\",\\\"mediawiki_skin\\\",\\\"page_content_language\\\",\\\"page_namespace_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"performer_edit_count_bucket\\\",\\\"performer_is_bot\\\",\\\"performer_is_logged_in\\\",\\\"performer_is_temp\\\",\\\"performer_session_id\\\"]}}},\\\"mediawiki.product_metrics.reading_list\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":false}},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"mediawiki_database\\\",\\\"mediawiki_skin\\\",\\\"page_content_language\\\",\\\"page_namespace_id\\\",\\\"performer_edit_count_bucket\\\",\\\"performer_is_bot\\\",\\\"performer_is_logged_in\\\",\\\"performer_is_temp\\\",\\\"performer_session_id\\\"]}}},\\\"mediawiki.product_metrics.contributors.experiments\\\":{\\\"producers\\\":{\\\"eventgate\\\":{\\n\\\"enrich_fields_from_http_headers\\\":{\\\"meta.request_id\\\":\\\"x-request-id\\\",\\\"http.request_headers.user-agent\\\":false},\\\"use_edge_uniques\\\":true},\\\"metrics_platform_client\\\":{\\\"provide_values\\\":[\\\"performer_is_logged_in\\\",\\\"performer_is_temp\\\",\\\"performer_is_bot\\\",\\\"performer_pageview_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"mediawiki_skin\\\",\\\"mediawiki_database\\\",\\\"performer_id\\\",\\\"performer_edit_count\\\"]}}}}},\\\"ext.eventLogging/EventSubmitter.js\\\":function(require,module,exports){function EventSubmitter(eventGateUri,enqueue,isDebugMode){this.eventGateUri=eventGateUri;this.enqueue=enqueue;this.isDebugMode=isDebugMode;}EventSubmitter.prototype.submitEvent=function(eventData){const eventGateUri=this.eventGateUri;if(eventGateUri){mw.eventLog.enqueue(()=>{try{navigator.sendBeacon(eventGateUri,JSON.stringify(eventData));}catch(e){}});this.onSubmitEvent(eventData);}};EventSubmitter.prototype.onSubmitEvent=function(eventData){if(this.isDebugMode){mw.track('eventlogging.eventSubmitDebug',{streamName:eventData.meta.stream,eventData:eventData});}};module.exports=EventSubmitter;\\n}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.eventLogging&skin=vector-2022&version=1kz7n\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.eventLogging&skin=vector-2022&sourcemap=1&version=1kz7n\",\"ext.wikimediaEvents.testKitchen@fz794\":\"mw.loader.impl(function(){return[\\\"ext.wikimediaEvents.testKitchen@fz794\\\",{\\\"main\\\":\\\"index.js\\\",\\\"files\\\":{\\\"index.js\\\":function(require,module,exports){module.exports={ClickThroughRateInstrument:require('./ClickThroughRateInstrument.js')};\\n},\\\"ClickThroughRateInstrument.js\\\":function(require,module,exports){const state=[];const findBySelector=(selector)=>(stateEntry)=>stateEntry.selector===selector;function submitInteraction(stateEntry,action){const{funnelEntryToken,friendlyName,instrument}=stateEntry;instrument.submitInteraction(action,{instrument_name:'ClickThroughRateInstrument',funnel_entry_token:funnelEntryToken,element_friendly_name:friendlyName});}const intersectionObserver=new IntersectionObserver((entries,observer)=>{entries.forEach(({target})=>{state.forEach((stateEntry)=>{if(stateEntry.element===target){submitInteraction(stateEntry,'impression');}});observer.unobserve(target);});},{threshold:1});const ClickThroughRateInstrument={start(selector,friendlyName,instrument,{trackSingleClick=false}={}){const e=document.querySelector(selector);if(!e){mw.log.warn('ClickThroughRateInstrument: selector '+selector+' does not exist');return null;}let result;if(state.some(findBySelector(selector))){result=state.find(findBySelector(selector));}else{result={selector,friendlyName,\\ntrackSingleClick,element:e,funnelEntryToken:mw.user.generateRandomSessionId(),instrument};state.forEach((stateEntry)=>{const areRelated=result.element.contains(stateEntry.element)||stateEntry.element.contains(result.element);const singleClickTrackingEnabled=stateEntry.element.trackSingleClick||result.trackSingleClick;if(areRelated&&!singleClickTrackingEnabled){mw.log.warn('ClickThroughRateInstrument: selector '+selector+' is already contained by '+'another instrument, or contains an existing instrument. To prevent submitting duplicate '+'click interactions use options.trackSingleClick = true');}});if(result.trackSingleClick){state.unshift(result);}else{state.push(result);}intersectionObserver.observe(e);}return Object.assign({},result);},stop({element,selector}){intersectionObserver.unobserve(element);state.splice(state.findIndex(findBySelector(selector)),1);}};document.addEventListener('click',(event)=>{for(const stateEntry of state){if(stateEntry.element.contains(event.target)){\\nsubmitInteraction(stateEntry,'click');if(stateEntry.trackSingleClick){break;}}}},true);module.exports=ClickThroughRateInstrument;\\n}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.wikimediaEvents.testKitchen&skin=vector-2022&version=1eqcu\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.wikimediaEvents.testKitchen&skin=vector-2022&sourcemap=1&version=1eqcu\",\"ext.navigationTiming@1u0am\":\"mw.loader.impl(function(){return[\\\"ext.navigationTiming@1u0am\\\",{\\\"main\\\":\\\"ext.navigationTiming.js\\\",\\\"files\\\":{\\\"ext.navigationTiming.js\\\":function(require,module,exports){(function(){'use strict';var perf=window.performance;var navigator=window.navigator;var Geo=window.Geo;var config=require('./config.json');var visibilityChanged=false;var mediaWikiLoadEnd;var cpuBenchmarkDone;function getNavTimingSharedEvent(){var event={pageviewToken:mw.user.getPageviewToken(),isAnon:mw.config.get('wgUserId')===null,isOversample:false};var mobileMode=mw.config.get('wgMFMode');if(mobileMode){event.mobileMode=mobileMode;}if(Geo&&typeof Geo.country==='string'){event.originCountry=Geo.country;}return event;}function emitFirstInputDelay(entry,observer){var event={inputDelay:Math.round(entry.processingStart-entry.startTime),skin:mw.config.get('skin'),pageviewToken:mw.user.getPageviewToken(),isOversample:false};if(Geo&&typeof Geo.country==='string'){event.originCountry=Geo.country;}mw.eventLog.logEvent('FirstInputDelay',event);observer.disconnect();}function setUpFirstInputDelayObserver(){var performanceObserver;if(window.PerformanceObserver){performanceObserver=new PerformanceObserver((list,observer)=>{\\nvar entries=list.getEntries();if(entries[0]){var firstEntry=entries[0];emitFirstInputDelay(firstEntry,observer);}});try{performanceObserver.observe({type:'first-input',buffered:true});}catch(e){}}}function getNavTimingLevel1(){var timing=perf&&perf.timing;if(!timing){return{};}function validate(value){return(typeof value==='number'&&value>=0)?value:undefined;}var navStart=timing.navigationStart;return{connectEnd:validate(timing.connectEnd-navStart),connectStart:validate(timing.connectStart-navStart),domComplete:validate(timing.domComplete-navStart),domInteractive:validate(timing.domInteractive-navStart),fetchStart:validate(timing.fetchStart-navStart),loadEventEnd:validate(timing.loadEventEnd-navStart),loadEventStart:validate(timing.loadEventStart-navStart),requestStart:validate(timing.requestStart-navStart),responseEnd:validate(timing.responseEnd-navStart),responseStart:validate(timing.responseStart-navStart),secureConnectionStart:timing.secureConnectionStart===0?0:validate(timing.secureConnectionStart-navStart),\\ndnsLookup:timing.domainLookupEnd-timing.domainLookupStart,redirecting:timing.redirectStart?timing.redirectEnd-timing.redirectStart:0,unload:timing.unloadEventStart?timing.unloadEventEnd-timing.unloadEventStart:0,gaps:(timing.domainLookupStart-timing.fetchStart)+(timing.connectStart-timing.domainLookupEnd)+(timing.requestStart-timing.connectEnd)+(timing.loadEventStart-timing.domComplete)};}function getCumulativeLayoutShift(){var perfObserver=new PerformanceObserver(()=>{});perfObserver.observe({type:'layout-shift',buffered:true});var entries=perfObserver.takeRecords();var max=0;var curr=0;var firstTs=Number.NEGATIVE_INFINITY;var prevTs=Number.NEGATIVE_INFINITY;entries.forEach((entry)=>{if(entry.hadRecentInput){return;}if(entry.startTime-firstTs>5000||entry.startTime-prevTs>1000){firstTs=entry.startTime;curr=0;}prevTs=entry.startTime;curr+=entry.value;max=Math.max(max,curr);});perfObserver.disconnect();return max>0.01?Number(max.toFixed(3)):0;}function getLargestContentfulPaint(){var element,value,perfObserver=new PerformanceObserver(()=>{\\n});perfObserver.observe({type:'largest-contentful-paint',buffered:true});var entries=perfObserver.takeRecords();if(entries.length>0){var largestEntry=entries[entries.length-1];value=Number(Math.max(largestEntry.renderTime,largestEntry.loadTime).toFixed(0));element=largestEntry.element?largestEntry.element.tagName:undefined;}perfObserver.disconnect();return{value:value,element:element};}function getLongTask(firstContentfulPaint){var perfObserver=new PerformanceObserver(()=>{});perfObserver.observe({type:'longtask',buffered:true});var entries=perfObserver.takeRecords();var totalDuration=0;var totalEntries=entries.length;var longTasksBeforeFcp=0;var longTasksDurationBeforeFcp=0;entries.forEach((entry)=>{totalDuration+=entry.duration;if(entry.startTime<firstContentfulPaint){longTasksBeforeFcp++;longTasksDurationBeforeFcp+=entry.duration;}});perfObserver.disconnect();return{totalEntries:totalEntries,totalDuration:totalDuration,longTasksBeforeFcp:longTasksBeforeFcp,longTasksDurationBeforeFcp:longTasksDurationBeforeFcp\\n};}function getPaintTiming(){var firstPaint,firstContentfulPaint;var entries=perf.getEntriesByType('paint');entries.forEach((entry)=>{if(entry.name==='first-paint'){firstPaint=Math.round(entry.startTime);}else if(entry.name==='first-contentful-paint'){firstContentfulPaint=Math.round(entry.startTime);}});return{firstPaint:firstPaint,firstContentfulPaint:firstContentfulPaint};}function emitCpuBenchmark(){var deferred=$.Deferred();if(cpuBenchmarkDone||!window.Blob||!window.URL||!window.URL.createObjectURL||!window.Worker||!window.performance){return deferred.resolve();}cpuBenchmarkDone=true;function onMessage(){if(!self.performance){postMessage(false);return;}var amount=100000000;var startTime=performance.now();for(var i=amount;i>0;i--){}postMessage(Math.round(performance.now()-startTime));}var work='onmessage = '+String(onMessage);var blob=new Blob([work],{type:'application/javascript'});var worker=new Worker(URL.createObjectURL(blob));worker.onmessage=function(e){deferred.resolve(e.data);\\nworker.terminate();};worker.postMessage(false);return deferred.then((result)=>{if(!result){return;}var event=getNavTimingSharedEvent();event.score=result;var batteryPromise=navigator.getBattery?navigator.getBattery():$.Deferred().reject();return batteryPromise.then((battery)=>{event.batteryLevel=battery.level;mw.eventLog.logEvent('CpuBenchmark',event);},()=>{mw.eventLog.logEvent('CpuBenchmark',event);});});}function isRegularNavigation(){var TYPE_NAVIGATE=0;return!!(perf&&perf.timing&&perf.navigation&&perf.navigation.type===TYPE_NAVIGATE);}function emitNavigationTiming(){var event=getNavTimingSharedEvent();event.mediaWikiVersion=mw.config.get('wgVersion');event.skin=mw.config.get('skin');if(mw.config.get('wgCanonicalSpecialPageName')){event.mwSpecialPageName=mw.config.get('wgCanonicalSpecialPageName');}else{event.namespaceId=mw.config.get('wgNamespaceNumber');event.revId=mw.config.get('wgCurRevisionId');event.action=mw.config.get('wgAction');}var veaction=mw.util.getParamValue('veaction');\\nif(veaction!==null){event.veaction=veaction;}if(mediaWikiLoadEnd){event.mediaWikiLoadEnd=mediaWikiLoadEnd;}if(navigator.connection){if(typeof navigator.connection.effectiveType==='string'){event.netinfoEffectiveConnectionType=navigator.connection.effectiveType;}if(typeof navigator.connection.type==='string'){event.netinfoConnectionType=navigator.connection.type;}if(navigator.connection.rtt!==undefined){event.netinfoRtt=navigator.connection.rtt;}if(navigator.connection.downlink!==undefined){event.netinfoDownlink=navigator.connection.downlink;}}if(navigator.deviceMemory){event.deviceMemory=navigator.deviceMemory;}if(navigator.hardwareConcurrency){event.hardwareConcurrency=navigator.hardwareConcurrency;}if(window.PerformanceObserver&&window.PerformanceObserver.supportedEntryTypes&&PerformanceObserver.supportedEntryTypes.includes('layout-shift')){event.cumulativeLayoutShift=getCumulativeLayoutShift();}if(window.PerformanceObserver&&PerformanceObserver.supportedEntryTypes&&PerformanceObserver.supportedEntryTypes.includes('largest-contentful-paint')){\\nvar lcpInfo=getLargestContentfulPaint();event.largestContentfulPaint=lcpInfo.value;event.largestContentfulPaintElement=lcpInfo.element;}if(perf.timing&&perf.timing.msFirstPaint>perf.timing.navigationStart){event.firstPaint=Math.round(perf.timing.msFirstPaint-perf.timing.navigationStart);}else if(perf.getEntriesByType){var ptInfo=getPaintTiming();if(ptInfo.firstPaint){event.firstPaint=ptInfo.firstPaint;}if(ptInfo.firstContentfulPaint){event.firstContentfulPaint=ptInfo.firstContentfulPaint;}}if(window.PerformanceObserver&&window.PerformanceObserver.supportedEntryTypes&&PerformanceObserver.supportedEntryTypes.includes('longtask')){var ltInfo=getLongTask(event.firstContentfulPaint);event.longTaskTotalDuration=ltInfo.totalDuration;event.longTaskTotalTasks=ltInfo.totalEntries;event.longTasksBeforeFcp=ltInfo.longTasksBeforeFcp;event.longTasksDurationBeforeFcp=ltInfo.longTasksDurationBeforeFcp;}var navigationEntry;try{navigationEntry=perf.getEntriesByType('navigation')[0];}catch(e){}if(navigationEntry&&navigationEntry.serverTiming){\\nnavigationEntry.serverTiming.forEach((entry)=>{if(entry.name==='cache'){event.cacheResponseType=entry.description;}else if(entry.name==='host'){event.cacheHost=entry.description;}});}Object.assign(event,getNavTimingLevel1());mw.eventLog.logEvent('NavigationTiming',event);}function emitSaveTiming(){var timing=perf&&perf.timing;if(!mw.config.get('wgPostEdit')||!timing){return;}var responseStart=timing.responseStart-timing.navigationStart;if(!responseStart){return;}mw.eventLog.logEvent('SaveTiming',{mediaWikiVersion:mw.config.get('wgVersion'),saveTiming:responseStart});}function setMwLoadEnd(){if(perf&&perf.now){mediaWikiLoadEnd=Math.round(perf.now());}}function onMwLoadEnd(){var deferred=$.Deferred();var modules=window.RLPAGEMODULES;if(!modules){mw.log.warn('Fallback RLPAGEMODULES');modules=mw.loader.getModuleNames().filter((module)=>mw.loader.getState(module)==='loading');}mw.loader.using(modules).done(()=>{setMwLoadEnd();deferred.resolve();}).fail(()=>{var count=modules.length;function decrement(){\\ncount--;if(count===0){setMwLoadEnd();deferred.resolve();}}for(var i=0;i<modules.length;i++){mw.loader.using(modules[i]).always(decrement);}});return deferred;}function onLoadComplete(callback){onMwLoadEnd().then(()=>{if(document.readyState==='complete'){setTimeout(callback);}else{window.addEventListener('load',()=>{setTimeout(callback);});}});}function setVisibilityChanged(){visibilityChanged=true;}function loadCallback(){mw.hook('postEdit').add(emitSaveTiming);$(document).off('visibilitychange',setVisibilityChanged);if(visibilityChanged){return;}if(!isRegularNavigation()){return;}var isInSample=mw.eventLog.pageviewInSample(config.samplingFactor||0);if(!isInSample){return;}setUpFirstInputDelayObserver();if(mw.eventLog.randomTokenMatch(config.cpuBenchmarkSamplingFactor||0)){emitCpuBenchmark();}if(isInSample){emitNavigationTiming();}}function main(){visibilityChanged=typeof document.hidden!=='undefined'?document.hidden:false;if(!visibilityChanged){$(document).one('visibilitychange',setVisibilityChanged);\\n}onLoadComplete(loadCallback);}if(!window.QUnit){main();}else{module.exports={isRegularNavigation:isRegularNavigation,emitNavigationTiming:emitNavigationTiming,emitFirstInputDelay:emitFirstInputDelay,onMwLoadEnd:onMwLoadEnd,emitCpuBenchmark:emitCpuBenchmark,reinit:function(mocks){perf=mocks&&mocks.performance||undefined;navigator=mocks&&mocks.navigator||window.navigator;Geo=mocks&&mocks.Geo||window.Geo;visibilityChanged=false;setMwLoadEnd();}};config={samplingFactor:1};}}());\\n},\\\"config.json\\\":{\\\"samplingFactor\\\":1000,\\\"cpuBenchmarkSamplingFactor\\\":2}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.navigationTiming&skin=vector-2022&version=o0d51\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.navigationTiming&skin=vector-2022&sourcemap=1&version=o0d51\",\"ext.uls.preferences@1i0ug\":\"mw.loader.impl(function(){return[\\\"ext.uls.preferences@1i0ug\\\",function($,jQuery,require,module){(function(){'use strict';let instance;const ULSPreferences=function(){this.preferenceName='uls-preferences';this.username=mw.user.getName();this.isNamed=mw.user.isNamed();this.preferences=null;this.init();};ULSPreferences.prototype={init:function(){if(this.isNamed){try{this.preferences=JSON.parse(mw.user.options.get(this.preferenceName));}catch(e){}}else{this.preferences=mw.storage.getObject(this.preferenceName);}if(!$.isPlainObject(this.preferences)){this.preferences={};}},set:function(key,value){this.preferences[key]=value;},get:function(key){return this.preferences[key];},save:function(callback){callback=callback||function(){};if(this.isNamed){new mw.Api().saveOption(this.preferenceName,JSON.stringify(this.preferences)).then(()=>{callback.call(this,true);},()=>{callback.call(this,false);});}else{mw.storage.setObject(this.preferenceName,this.preferences);callback.call(this,true);}}};module.exports=function(){instance=instance||new ULSPreferences();return instance;};}());\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.208Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.uls.preferences&skin=vector-2022&version=11u78\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.uls.preferences&skin=vector-2022&sourcemap=1&version=11u78\",\"ext.uls.webfonts@86xg2\":\"mw.loader.impl(function(){return[\\\"ext.uls.webfonts@86xg2\\\",function($,jQuery,require,module){(function(){'use strict';const getULSPreferences=require('ext.uls.preferences');let ulsPreferences=getULSPreferences();mw.webfonts=mw.webfonts||{};mw.webfonts.preferences={registry:{fonts:{},webfontsEnabled:mw.config.get('wgULSWebfontsEnabled')},isEnabled:function(){return this.registry.webfontsEnabled;},enable:function(){this.registry.webfontsEnabled=true;},disable:function(){this.registry.webfontsEnabled=false;},setFont:function(language,font){this.registry.fonts[language]=font;},getFont:function(language){return this.registry.fonts[language];},save:function(callback){ulsPreferences=getULSPreferences();ulsPreferences.set('webfonts',this.registry);ulsPreferences.save(callback);},load:function(){mw.webfonts.preferences.registry=Object.assign(this.registry,ulsPreferences.get('webfonts'));}};mw.webfonts.setup=function(){const mediawikiFontRepository=$.webfonts.repository;mediawikiFontRepository.base=mw.config.get('wgULSFontRepositoryBasePath');Object.assign($.fn.webfonts.defaults,{\\nrepository:mediawikiFontRepository,fontStack:$(document.body).css('font-family').split(/, /g),fontSelector:function(repository,language,classes){if(!language){return null;}const defaultFont=repository.defaultFont(language);if(classes&&classes.includes('autonym')){return null;}const font=mw.webfonts.preferences.getFont(language)||defaultFont;if(!font||font==='system'){return null;}return font;},exclude:(function(){let excludes=mw.config.get('wgULSNoWebfontsSelectors').join(', ');if(mw.user.options.get('editfont')!=='default'){excludes=excludes?excludes+',textarea':'textarea';}return excludes;}()),overridableFontFamilies:(function(){const headingFont=$('h1').css('font-family');return headingFont?[headingFont]:[];}())});setTimeout(()=>{$(document.body).webfonts();},0);};$(()=>{mw.webfonts.preferences.load();if(mw.webfonts.preferences.isEnabled()){mw.requestIdleCallback(()=>{mw.loader.using('ext.uls.webfonts.repository').then(mw.webfonts.setup);});}});}());\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.uls.webfonts&skin=vector-2022&version=xgt2l\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.uls.webfonts&skin=vector-2022&sourcemap=1&version=xgt2l\",\"ext.checkUser.clientHints@13jk2\":\"mw.loader.impl(function(){return[\\\"ext.checkUser.clientHints@13jk2\\\",{\\\"main\\\":\\\"index.js\\\",\\\"files\\\":{\\\"index.js\\\":function(require,module,exports){(function(){function init(navigatorData){const hasHighEntropyValuesMethod=navigatorData.userAgentData&&navigatorData.userAgentData.getHighEntropyValues;if(!hasHighEntropyValuesMethod){return false;}const wgCheckUserClientHintsHeadersJsApi=mw.config.get('wgCheckUserClientHintsHeadersJsApi');function postClientHintData(clientHintData,identifier,type,retryOnTokenMismatch){const restApi=new mw.Rest();const api=new mw.Api();const deferred=$.Deferred();api.getToken('csrf').then((token)=>{clientHintData.token=token;restApi.post('/checkuser/v0/useragent-clienthints/'+type+'/'+identifier,clientHintData).then((data)=>{deferred.resolve(data);}).catch((err,errObject)=>{mw.log.error(errObject);let errMessage=errObject.exception;if(errObject.xhr&&errObject.xhr.responseJSON&&errObject.xhr.responseJSON.messageTranslations){errMessage=errObject.xhr.responseJSON.messageTranslations.en;}if(retryOnTokenMismatch&&errObject.xhr&&errObject.xhr.responseJSON&&errObject.xhr.responseJSON.errorKey&&errObject.xhr.responseJSON.errorKey==='rest-badtoken'\\n){api.badToken('csrf');postClientHintData(clientHintData,identifier,type,false).then((data)=>{deferred.resolve(data);},(secondRequestErr,secondRequestErrObject)=>{deferred.reject(secondRequestErr,secondRequestErrObject);});}else{logError('Unable to submit client hints',errMessage);deferred.reject(err,errObject);}});}).catch((err,errObject)=>{mw.log.error(errObject);let errMessage=errObject.exception;if(errObject.xhr&&errObject.xhr.responseJSON&&errObject.xhr.responseJSON.messageTranslations){errMessage=errObject.xhr.responseJSON.messageTranslations.en;}logError('Unable to get token for recording client hints',errMessage);deferred.reject(err,errObject);});return deferred.promise();}function collectAndSendClientHintsData(identifier,type){return collectClientHintsData().then((userAgentHighEntropyValues)=>{postClientHintData(userAgentHighEntropyValues,identifier,type,true);});}function collectClientHintsData(){try{return navigatorData.userAgentData.getHighEntropyValues(\\nwgCheckUserClientHintsHeadersJsApi);}catch(err){mw.log.error(err);logError('Unable to collect high entropy client hints',err.toString());return Promise.reject(err);}}function logError(message,originalMessage){const loggedError=new Error(message);loggedError.error_context={originalMessage};mw.errorLogger.logError(loggedError,'error.checkuser');}const privateEventId=mw.config.get('wgCheckUserClientHintsPrivateEventId');if(privateEventId){collectAndSendClientHintsData(privateEventId,'privatelog');}mw.hook('postEdit').add(()=>{collectAndSendClientHintsData(mw.config.get('wgCurRevisionId'),'revision');});mw.hook('extendLogout').add((data)=>{data.promise=data.promise.then(()=>{return collectClientHintsData().then((userAgentHighEntropyValues)=>{data.params.checkuserclienthints=JSON.stringify(userAgentHighEntropyValues);});});});return true;}init(navigator);module.exports={init:init};}());\\n}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.checkUser.clientHints&skin=vector-2022&version=bo84q\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.checkUser.clientHints&skin=vector-2022&sourcemap=1&version=bo84q\",\"ext.testKitchen@1vjl2\":\"mw.loader.impl(function(){return[\\\"ext.testKitchen@1vjl2\\\",{\\\"main\\\":\\\"index.js\\\",\\\"files\\\":{\\\"index.js\\\":function(require,module,exports){'use strict';const{Experiment,UnenrolledExperiment,OverriddenExperiment}=require('./Experiment.js');const ContextualAttributesFactory=require('./ContextualAttributesFactory.js');const EventFactory=require('./EventFactory.js');const eventSender=require('./eventSender.js');const{Instrument,UnsampledInstrument}=require('./Instrument.js');const COORDINATOR_DEFAULT='default';const STREAM_NAME='product_metrics.web_base';const SCHEMA_ID='/analytics/product_metrics/web/base/2.0.0';const COOKIE_NAME='mpo';const UINT32_MAX=4294967295;let config=require('./config.json');const contextualAttributesFactory=new ContextualAttributesFactory();const eventFactory=new EventFactory(contextualAttributesFactory);function getExperiment(experimentName){const userExperiments=mw.config.get('wgTestKitchenUserExperiments');if(!userExperiments||!userExperiments.assigned[experimentName]){return new UnenrolledExperiment();}const assigned=userExperiments.assigned[experimentName];if(userExperiments.overrides.includes(experimentName)){\\nreturn new OverriddenExperiment(experimentName,assigned);}const samplingUnit=userExperiments.sampling_units[experimentName];const isLoggedInExperiment=samplingUnit==='mw-user';const eventIntakeServiceUrl=isLoggedInExperiment?config.LoggedInExperimentEventIntakeServiceUrl:config.EveryoneExperimentEventIntakeServiceUrl;const subjectID=isLoggedInExperiment?userExperiments.subject_ids[experimentName]:'awaiting';const contextualAttributes=config.experimentConfigs[STREAM_NAME].contextual_attributes;return new Experiment(eventFactory,eventSender,eventIntakeServiceUrl,config.experimentConfigs,{enrolled:experimentName,assigned,subject_id:subjectID,sampling_unit:samplingUnit,coordinator:COORDINATOR_DEFAULT,stream_name:STREAM_NAME,schema_id:SCHEMA_ID,contextual_attributes:contextualAttributes});}function getExperimentByPrefix(experimentNamePrefix){const userExperiments=mw.config.get('wgTestKitchenUserExperiments');if(!userExperiments||userExperiments.enrolled.length===0){return new UnenrolledExperiment();\\n}const experimentNames=userExperiments.enrolled.filter((experimentName)=>experimentName.startsWith(experimentNamePrefix)).sort((a,b)=>b.localeCompare(a));if(!experimentNames.length){return new UnenrolledExperiment();}return getExperiment(experimentNames[0]);}function getAssignments(){const userExperiments=mw.config.get('wgTestKitchenUserExperiments');return userExperiments?Object.assign({},userExperiments.assigned):{};}function setCookieAndReload(value){mw.cookie.set(COOKIE_NAME,value);if(!window.QUnit){window.location.reload();}}function overrideExperimentGroup(experimentName,groupName){const rawOverrides=mw.cookie.get(COOKIE_NAME,null,'');const part=`${experimentName}:${groupName}`;if(rawOverrides===''){setCookieAndReload(part);}else if(!rawOverrides.includes(`${experimentName}:`)){setCookieAndReload(`${rawOverrides};${part}`);}else{setCookieAndReload(rawOverrides.replace(new RegExp(`${experimentName}:[A-Za-z0-9][-_.A-Za-z0-9]+?(?=;|$)`),part));}}function clearExperimentOverride(experimentName){\\nconst rawOverrides=mw.cookie.get(COOKIE_NAME,null,'');let newRawOverrides=rawOverrides.replace(new RegExp(`;?${experimentName}:[A-Za-z0-9][-_.A-Za-z0-9]+`),'');newRawOverrides=newRawOverrides.replace(/^;/,'');newRawOverrides=newRawOverrides||null;setCookieAndReload(newRawOverrides);}function clearExperimentOverrides(){setCookieAndReload(null);}function isInstrumentInSample(instrumentSamplingConfig){let id;const{performer}=contextualAttributesFactory.newContextualAttributes();switch(instrumentSamplingConfig.unit){case'pageview':id=performer.pageview_id;break;case'session':id=performer.session_id;break;default:return false;}return parseInt(id.slice(0,8),16)/UINT32_MAX<instrumentSamplingConfig.rate;}function getInstrument(instrumentName){const instrumentConfig=config.instrumentConfigs[instrumentName];if(!instrumentConfig||(instrumentConfig.sample&&!isInstrumentInSample(instrumentConfig.sample))){return new UnsampledInstrument();}instrumentConfig.schema_id=SCHEMA_ID;return new Instrument(\\neventFactory,eventSender,config.InstrumentEventIntakeServiceUrl,instrumentName,instrumentConfig);}mw.testKitchen={getExperiment,getExperimentByPrefix,getAssignments,getInstrument,overrideExperimentGroup,clearExperimentOverride,clearExperimentOverrides};mw.tk=mw.testKitchen;if(window.QUnit){const originalConfig=config;mw.testKitchen=Object.assign(mw.testKitchen,{EventFactory,eventSender,Experiment,UnenrolledExperiment,OverriddenExperiment,Instrument,UnsampledInstrument,setConfig(newConfig){config=newConfig;},resetConfig(){config=originalConfig;}});}\\n},\\\"ContextualAttributesFactory.js\\\":function(require,module,exports){const c=mw.config.get.bind(mw.config);let contextAttributes=null;class ContextualAttributesFactory{newContextualAttributes(){if(contextAttributes){return contextAttributes;}const isMobileFrontendActive=c('wgMFMode')!==null;const version=String(c('wgVersion'));const userIsLoggedIn=!mw.user.isAnon();const userGroups=c('wgUserGroups',[]);const result={agent:{client_platform:'mediawiki_js',client_platform_family:isMobileFrontendActive?'mobile_browser':'desktop_browser',ua_string:navigator.userAgent},page:{id:c('wgArticleId'),title:c('wgTitle'),namespace_id:c('wgNamespaceNumber'),namespace_name:c('wgCanonicalNamespace'),revision_id:c('wgRevisionId'),wikidata_qid:c('wgWikibaseItemId'),content_language:c('wgPageContentLanguage'),is_redirect:c('wgIsRedirect'),user_groups_allowed_to_move:c('wgRestrictionMove'),user_groups_allowed_to_edit:c('wgRestrictionEdit')},mediawiki:{skin:c('skin'),version:version,is_production:version.includes('wmf'),is_debug_mode:c('debug'),database:c('wgDBname'),\\nsite_content_language:c('wgContentLanguage')},performer:{is_logged_in:userIsLoggedIn,id:mw.user.getId(),name:mw.user.getName(),groups:userGroups,is_bot:userGroups.includes('bot'),is_temp:c('wgUserIsTemp'),language:c('wgUserLanguage'),language_variant:c('wgUserVariant'),can_probably_edit_page:c('wgIsProbablyEditable')}};if(userIsLoggedIn){result.performer.edit_count=c('wgUserEditCount');result.performer.edit_count_bucket=c('wgUserEditCountBucket');result.performer.registration_dt=new Date(c('wgUserRegistration')).toISOString();}Object.defineProperty(result.performer,'session_id',{get:function(){return mw.user.sessionId();}});Object.defineProperty(result.performer,'pageview_id',{get:function(){return mw.user.getPageviewToken();}});Object.defineProperty(result.performer,'active_browsing_session_token',{get:function(){return mw.eventLog.id.getSessionId();}});contextAttributes=result;return result;}}module.exports=ContextualAttributesFactory;\\n},\\\"EventFactory.js\\\":function(require,module,exports){const REQUIRED_CONTEXTUAL_ATTRIBUTES=['agent_client_platform','agent_client_platform_family'];class EventFactory{constructor(contextualAttributesFactory){this.contextualAttributesFactory=contextualAttributesFactory;this.domain=mw.config.get('wgServerName');}newEvent(streamName,schemaID,contextualAttributes,action,interactionData){const event=Object.assign({},interactionData,{$schema:schemaID,meta:{domain:this.domain,stream:streamName},dt:new Date().toISOString()},{action});this.addContextualAttributes(event,contextualAttributes);return event;}addContextualAttributes(event,requestedContextualAttributes){requestedContextualAttributes=REQUIRED_CONTEXTUAL_ATTRIBUTES.concat(requestedContextualAttributes);requestedContextualAttributes=Array.from(new Set(requestedContextualAttributes));const contextualAttributes=this.contextualAttributesFactory.newContextualAttributes();for(let i=0;i<requestedContextualAttributes.length;i++){copyAttributeByName(contextualAttributes,event,requestedContextualAttributes[i]);\\n}}}function copyAttributeByName(from,to,name){const index=name.indexOf('_');const primaryKey=name.slice(0,index);const secondaryKey=name.slice(index+1);const value=from[primaryKey]?from[primaryKey][secondaryKey]:null;if(value===undefined||value===null){return;}to[primaryKey]=to[primaryKey]||{};to[primaryKey][secondaryKey]=value;}module.exports=EventFactory;\\n},\\\"eventSender.js\\\":function(require,module,exports){const DRAIN_QUEUE_DELAY=5000;let queues=new Map();let isDocumentUnloading=false;let drainQueueTimeout=null;function doSendEvents(events,url){try{navigator.sendBeacon(url,JSON.stringify(events));}catch(e){}}function drainQueue(){queues.forEach(doSendEvents);queues=new Map();drainQueueTimeout=null;}function onPageHide(){isDocumentUnloading=true;drainQueue();}function onPageShow(){isDocumentUnloading=false;}function onVisibilityChange(documentHidden){if(documentHidden){drainQueue();}}module.exports={sendEvent(event,url){if(isDocumentUnloading){doSendEvents([event],url);return;}if(!queues.has(url)){queues.set(url,[event]);}else{queues.get(url).push(event);}if(!drainQueueTimeout){drainQueueTimeout=setTimeout(drainQueue,DRAIN_QUEUE_DELAY);}}};if(window.QUnit){module.exports=Object.assign(module.exports,{onPageHide,onPageShow,onVisibilityChange,reset(){queues=new Map();isDocumentUnloading=false;if(drainQueueTimeout){clearTimeout(drainQueueTimeout);drainQueueTimeout=null;}}});}else{window.addEventListener('pagehide',onPageHide);\\nwindow.addEventListener('pageshow',onPageShow);document.addEventListener('visibilitychange',()=>onVisibilityChange(document.hidden));}\\n},\\\"Experiment.js\\\":function(require,module,exports){const EXPOSURE_CONTEXTUAL_ATTRIBUTES=['performer_is_logged_in','performer_is_temp','performer_is_bot','mediawiki_database'];class Experiment{constructor(eventFactory,eventSender,eventIntakeServiceUrl,experimentConfigs,config){this.eventFactory=eventFactory;this.eventSender=eventSender;this.eventIntakeServiceUrl=eventIntakeServiceUrl;this.experimentConfigs=experimentConfigs;this.config=config;this.streamName=config.stream_name;this.schemaID=config.schema_id;this.contextualAttributes=config.contextual_attributes;}getAssignedGroup(){return this.config.assigned;}isAssignedGroup(...groups){return groups.includes(this.config.assigned);}send(action,interactionData,contextualAttributes){const keys=['enrolled','assigned','subject_id','sampling_unit','coordinator'];const experiment={};for(const key of keys){experiment[key]=this.config[key];}interactionData=Object.assign({},interactionData,{experiment});let eventContextualAttributes=this.contextualAttributes;if(contextualAttributes&&contextualAttributes.length>0){\\neventContextualAttributes=contextualAttributes.concat(this.contextualAttributes);}const event=this.eventFactory.newEvent(this.streamName,this.schemaID,eventContextualAttributes,action,interactionData);this.eventSender.sendEvent(event,this.eventIntakeServiceUrl);}submitInteraction(action,interactionData){this.send(action,interactionData);}sendExposure(){this.send('experiment_exposure',{},EXPOSURE_CONTEXTUAL_ATTRIBUTES);}setStream(streamName){this.streamName=streamName;if(!this.experimentConfigs[streamName]){console.warn('%s: The stream %s isn\\\\'t registered. Has you added %s to $wgTestKitchenExperimentStreamNames?',this.name,streamName);this.contextualAttributes=[];}else{this.contextualAttributes=this.experimentConfigs[streamName].contextual_attributes;}return this;}setSchema(schemaID){this.schemaID=schemaID;return this;}}class UnenrolledExperiment{getAssignedGroup(){return null;}isAssignedGroup(...groups){}send(action,interactionData,contextualAttributes){}submitInteraction(action,interactionData){}\\nsendExposure(){}setStream(streamName){return this;}setSchema(schemaID){return this;}}class OverriddenExperiment{constructor(name,assigned){this.name=name;this.assigned=assigned;}getAssignedGroup(){return this.assigned;}isAssignedGroup(...groups){return groups.includes(this.assigned);}send(action,interactionData,contextualAttributes){const message=`${this.name}: The enrollment for this experiment has been overridden. `+'The following event will not be sent:\\\\n';console.log(message,action,JSON.stringify(interactionData,null,2));}submitInteraction(action,interactionData){this.send(action,interactionData);}sendExposure(){this.send('experiment_exposure');}setSchema(schemaID){return this;}setStream(streamName){return this;}}module.exports={Experiment,UnenrolledExperiment,OverriddenExperiment};\\n},\\\"Instrument.js\\\":function(require,module,exports){class Instrument{constructor(eventFactory,eventSender,eventIntakeServiceUrl,name,config){this.eventFactory=eventFactory;this.eventSender=eventSender;this.eventIntakeServiceUrl=eventIntakeServiceUrl;this.name=name;this.config=config;this.schemaID=config.schema_id;this.funnelEventSequencePosition=1;}send(action,interactionData){const event=this.buildEvent(action,interactionData);this.eventSender.sendEvent(event,this.eventIntakeServiceUrl);}sendImmediately(action,interactionData){const event=this.buildEvent(action,interactionData);try{navigator.sendBeacon(this.eventIntakeServiceUrl,JSON.stringify(event));}catch(e){}}submitInteraction(action,interactionData){this.send(action,interactionData);}setSchema(schemaID){this.schemaID=schemaID;return this;}isInSample(){return true;}buildEvent(action,interactionData){interactionData=Object.assign({},interactionData,{instrument_name:this.name,funnel_event_sequence_position:this.funnelEventSequencePosition++});return this.eventFactory.newEvent(this.config.stream_name,\\nthis.schemaID,this.config.contextual_attributes,action,interactionData);}}class UnsampledInstrument{send(action,interactionData){}sendImmediately(action,interactionData){}submitInteraction(action,interactionData){}setSchema(schemaID){return this;}isInSample(){return false;}}module.exports={Instrument,UnsampledInstrument};\\n},\\\"config.json\\\":{\\\"EveryoneExperimentEventIntakeServiceUrl\\\":\\\"/evt-103e/v2/events?hasty=true\\\",\\\"LoggedInExperimentEventIntakeServiceUrl\\\":\\\"https://intake-analytics.wikimedia.org/v1/events?hasty=true\\\",\\\"InstrumentEventIntakeServiceUrl\\\":\\\"/ins-502b/v2/events?hasty=true\\\",\\\"experimentConfigs\\\":{\\\"product_metrics.web_base\\\":{\\\"contextual_attributes\\\":[\\\"agent_client_platform\\\",\\\"agent_client_platform_family\\\",\\\"performer_is_logged_in\\\",\\\"performer_is_temp\\\",\\\"performer_pageview_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"mediawiki_skin\\\",\\\"mediawiki_database\\\"]},\\\"mediawiki.product_metrics.translation_mint_for_readers.experiments\\\":{\\\"contextual_attributes\\\":[\\\"mediawiki_database\\\",\\\"mediawiki_skin\\\",\\\"mediawiki_site_content_language\\\",\\\"mediawiki_site_content_language_variant\\\",\\\"page_content_language\\\",\\\"agent_client_platform\\\",\\\"agent_client_platform_family\\\",\\\"performer_session_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"performer_is_logged_in\\\",\\\"performer_is_temp\\\",\\\"performer_language\\\",\\\"performer_language_variant\\\",\\\"performer_pageview_id\\\"]},\\n\\\"mediawiki.product_metrics.reading_list\\\":{\\\"contextual_attributes\\\":[\\\"mediawiki_database\\\",\\\"mediawiki_skin\\\",\\\"page_content_language\\\",\\\"page_namespace_id\\\",\\\"performer_edit_count_bucket\\\",\\\"performer_is_bot\\\",\\\"performer_is_logged_in\\\",\\\"performer_is_temp\\\",\\\"performer_session_id\\\"]},\\\"mediawiki.product_metrics.readerexperiments_imagebrowsing\\\":{\\\"contextual_attributes\\\":[\\\"agent_client_platform\\\",\\\"agent_client_platform_family\\\",\\\"mediawiki_database\\\",\\\"mediawiki_skin\\\",\\\"page_content_language\\\",\\\"page_namespace_id\\\",\\\"performer_is_bot\\\",\\\"performer_is_logged_in\\\",\\\"performer_is_temp\\\",\\\"performer_session_id\\\"]},\\\"mediawiki.product_metrics.readerexperiments_stickyheaders\\\":{\\\"contextual_attributes\\\":[\\\"agent_client_platform\\\",\\\"agent_client_platform_family\\\",\\\"mediawiki_database\\\",\\\"mediawiki_skin\\\",\\\"page_content_language\\\",\\\"page_namespace_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"performer_edit_count_bucket\\\",\\\"performer_is_bot\\\",\\\"performer_is_logged_in\\\",\\\"performer_is_temp\\\",\\\"performer_session_id\\\"]},\\n\\\"mediawiki.product_metrics.reader_experiments\\\":{\\\"contextual_attributes\\\":[\\\"agent_client_platform\\\",\\\"agent_client_platform_family\\\",\\\"mediawiki_database\\\",\\\"mediawiki_skin\\\",\\\"page_content_language\\\",\\\"page_namespace_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"performer_edit_count_bucket\\\",\\\"performer_is_bot\\\",\\\"performer_is_logged_in\\\",\\\"performer_is_temp\\\",\\\"performer_session_id\\\"]},\\\"mediawiki.product_metrics.contributors.experiments\\\":{\\\"contextual_attributes\\\":[\\\"performer_is_logged_in\\\",\\\"performer_is_temp\\\",\\\"performer_is_bot\\\",\\\"performer_pageview_id\\\",\\\"performer_active_browsing_session_token\\\",\\\"mediawiki_skin\\\",\\\"mediawiki_database\\\",\\\"performer_id\\\",\\\"performer_edit_count\\\"]}},\\\"instrumentConfigs\\\":{\\\"watchlist-click-tracker\\\":{\\\"sample\\\":{\\\"rate\\\":1,\\\"unit\\\":\\\"pageview\\\"},\\\"stream_name\\\":\\\"mediawiki.product_metrics.WatchlistClickTracker\\\",\\\"contextual_attributes\\\":[\\\"mediawiki_database\\\",\\\"performer_name\\\",\\\"performer_pageview_id\\\"]},\\\"synth-test-external-path\\\":{\\\"sample\\\":{\\\"rate\\\":0,\\\"unit\\\":\\\"session\\\"},\\\"stream_name\\\":\\\"product_metrics.web_base\\\",\\n\\\"contextual_attributes\\\":[\\\"performer_is_logged_in\\\",\\\"agent_ua_string\\\"]},\\\"personal-dashboard-health-metrics\\\":{\\\"sample\\\":{\\\"rate\\\":0,\\\"unit\\\":\\\"pageview\\\"},\\\"stream_name\\\":\\\"product_metrics.web_base\\\",\\\"contextual_attributes\\\":[\\\"mediawiki_database\\\",\\\"performer_name\\\",\\\"performer_pageview_id\\\",\\\"performer_groups\\\",\\\"performer_edit_count_bucket\\\",\\\"performer_registration_dt\\\"]},\\\"cite-footnote-content-interaction\\\":{\\\"sample\\\":{\\\"rate\\\":0,\\\"unit\\\":\\\"pageview\\\"},\\\"stream_name\\\":\\\"product_metrics.web_base\\\",\\\"contextual_attributes\\\":[\\\"mediawiki_database\\\",\\\"performer_is_logged_in\\\",\\\"performer_is_bot\\\",\\\"performer_edit_count_bucket\\\"]},\\\"bot-detection-2026-03\\\":{\\\"sample\\\":{\\\"rate\\\":0,\\\"unit\\\":\\\"pageview\\\"},\\\"stream_name\\\":\\\"product_metrics.web_base_with_ip\\\",\\\"contextual_attributes\\\":[\\\"page_id\\\",\\\"page_namespace_id\\\",\\\"agent_ua_string\\\"]}}}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.testKitchen&skin=vector-2022&version=e9c8q\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.testKitchen&skin=vector-2022&sourcemap=1&version=e9c8q\",\"ext.wikimediaEvents@1oq9f\":\"mw.loader.impl(function(){return[\\\"ext.wikimediaEvents@1oq9f\\\",{\\\"main\\\":\\\"index.js\\\",\\\"files\\\":{\\\"index.js\\\":function(require,module,exports){require('./statsd.js');require('./deprecate.js');require('./clientError.js');require('./sessionTick.js');require('./readingDepth.js');require('./phpEngine.js');require('./blockedEdit.js');require('./clickTracking/webUIClick.js');const skin=mw.config.get('skin');if(skin==='vector-2022'||skin==='vector'){require('./universalLanguageSelector.js');require('./webUIScroll.js');}if(skin==='vector-2022'||skin==='minerva'){if(mw.user.isNamed()&&(mw.user.options.get('readinglists-web-ui-enabled')==='1')){require('./testKitchen/readingListAB.js');}}require('./editAttemptStep.js');require('./mobileSectionSwitch.js');require('./hCaptcha.js')();require('./networkProbe.js');require('./editSaves.js');require('./loggedOutWarning.js')();require('./accountCreation.js')();require('./testKitchen/attribution.js');require('./testKitchen/pageVisitBotDetection.js');require('./testKitchen/externalPathTest.js');require('./specialCreateAccount/init.js');require('./testKitchen/impactTest.js');require('./testKitchen/loggedOutReaderRetention.js');\\nrequire('./externalLinks.js')();const{SessionLengthInstrumentMixin}=require('./sessionLength/mixin.js');mw.wikimediaEvents={SessionLengthInstrumentMixin};if(!window.QUnit){require('./searchSatisfaction/index.js')();}\\n},\\\"statsd.js\\\":function(require,module,exports){const config=require('./config.json');const BATCH_SIZE=5000;let statsdBuffer='';let statsdFlushPending=false;function statsdFlush(){mw.eventLog.sendBeacon(config.WMEStatsdBaseUri+'?'+statsdBuffer);statsdBuffer='';}function statsdAdd(line){if(config.WMEStatsdBaseUri){if(statsdBuffer&&(statsdBuffer.length+line.length)>BATCH_SIZE){statsdFlush();}statsdBuffer+=(statsdBuffer?'&':'')+line;if(!statsdFlushPending){statsdFlushPending=true;mw.eventLog.enqueue(()=>{statsdFlushPending=false;statsdFlush();});}}}mw.trackSubscribe('timing.',(topic,time)=>{statsdAdd(topic.slice('timing.'.length)+'='+Math.round(time)+'ms');});mw.trackSubscribe('counter.',(topic,count)=>{count=isNaN(count)?1:Math.round(count);statsdAdd(topic.slice('counter.'.length)+'='+count+'c');});let statsBuffer='';let statsFlushPending=false;function statsFlush(){mw.eventLog.sendBeacon(config.WMEStatsBeaconUri+'?'+statsBuffer);statsBuffer='';}function statsAdd(line){if(config.WMEStatsBeaconUri){if(statsBuffer&&(statsBuffer.length+line.length)>BATCH_SIZE){\\nstatsFlush();}statsBuffer+=(statsBuffer?'%0A':'')+line;if(!statsFlushPending){statsFlushPending=true;mw.eventLog.enqueue(()=>{statsFlushPending=false;statsFlush();});}}}function error(err,invalidValue=null){mw.log.error(err);if(invalidValue!==null){err.error_context={invalidValue};}mw.errorLogger.logError(err);}function formatDogstatsd(name,value,labels={}){const rLegalKey=/^[A-Za-z0-9_]+$/;const rLegalValue=/^[A-Za-z0-9_.+-]+$/;let labelStr='';for(const labelKey in labels){if(!rLegalKey.test(labelKey)){return error(new TypeError(`Invalid stat label \\\"${labelKey}\\\"`));}let val=labels[labelKey];if(!rLegalValue.test(val)){mw.log.warn(`Invalid label value for ${name} ${labelKey} \\\"${val}\\\"`);val='_invalid_value';}labelStr+=`${!labelStr?encodeURIComponent('|#'):','}${labelKey}:${val}`;}return`${name}:${value}${labelStr}`;}function trackHistogram(name,value,labels){if(Number.isNaN(value)||typeof value!=='number'){return error(new TypeError(`Invalid histogram value for ${name}`),value);}if(labels.le){\\nreturn error(new Error(`Reserved label \\\"le\\\" used for ${name}. Buckets must be set as an array of numbers for the \\\"buckets\\\" label.`));}const buckets=labels.buckets;const labelsWithoutBuckets=Object.assign({},labels);delete labelsWithoutBuckets.buckets;if(!Array.isArray(buckets)){return error(new TypeError(`Invalid \\\"buckets\\\" label for ${name}: it MUST be an array of numbers.`));}const maxBuckets=10;const bucketCount=buckets.length;if(bucketCount>maxBuckets){return error(new RangeError(`Too many buckets defined for ${name}. Got: ${bucketCount}, Max: ${maxBuckets}`));}for(const b of buckets){if(typeof b!=='number'||Number.isNaN(b)||!Number.isFinite(b)){return error(new TypeError(`Invalid bucket value for ${name}`),b);}}const uniqueBuckets=[...new Set(buckets)].sort((a,b)=>a-b);for(let i=0;i<buckets.length;i++){if(uniqueBuckets[i]!==buckets[i]){return error(new Error(`Buckets must be unique and sorted for ${name}`));}}const bucketName=`${name}_bucket`;for(const bucket of buckets){const valueToSend=value<=bucket?1:0;\\nconst labelsWithBucket=Object.assign({},labelsWithoutBuckets,{le:bucket});statsAdd(formatDogstatsd(bucketName,valueToSend+'|c',labelsWithBucket));}const labelsWithInfBucket=Object.assign({},labelsWithoutBuckets,{le:'+Inf'});statsAdd(formatDogstatsd(bucketName,'1|c',labelsWithInfBucket));const countName=`${name}_count`;statsAdd(formatDogstatsd(countName,1+'|c',labelsWithoutBuckets));const sumName=`${name}_sum`;statsAdd(formatDogstatsd(sumName,value+'|c',labelsWithoutBuckets));}mw.trackSubscribe('stats.',(topic,value,labels={})=>{const name=topic.slice('stats.'.length);let line;if(/^mediawiki_[A-Za-z0-9_]+_total$/.test(name)){if(value===undefined){value=1;}if(isNaN(value)||Math.round(value)!==value||value<1){return error(new TypeError(`Invalid counter value for ${name}`),value);}line=formatDogstatsd(name,value+'|c',labels);}else if(/^mediawiki_[A-Za-z0-9_]+_seconds$/.test(name)){if(isNaN(value)||typeof value!=='number'||value<0){return error(new TypeError(`Invalid timing value for ${name}`),value);\\n}line=formatDogstatsd(name,Math.round(value)+'|ms',labels);}else if(/^mediawiki_[A-Za-z0-9_]+_distribution$/.test(name)){trackHistogram(name,value,labels);return;}else{return error(new TypeError(`Invalid stat name ${name}`));}if(line){statsAdd(line);}});\\n},\\\"deprecate.js\\\":function(require,module,exports){if(mw.config.get('wgUserName')&&mw.eventLog.pageviewInSample(100)){mw.trackSubscribe('mw.deprecate',(_,feature)=>{feature=feature.replace(/\\\\W+/g,'_');mw.track('counter.mw.js.deprecate.'+feature,1);mw.track('stats.mediawiki_deprecated_js_calls_total',1,{feature});});}\\n},\\\"clientError.js\\\":function(require,module,exports){const moduleConfig=require(('./config.json'));const errorLimit=5;let errorCount=0;const regexWebKit=/^\\\\s*at (?:(.*?)\\\\()?(.*?:\\\\d+:\\\\d+)\\\\)?\\\\s*$/i;const regexGecko=/^\\\\s*(?:(.*?)(?:\\\\(.*?\\\\))?@)?(.*:\\\\d+:\\\\d+)\\\\s*$/i;function getNormalizedStackTraceLines(str){const result=[];const lines=str.split('\\\\n');let parts;let i;for(i=0;i<lines.length;i++){parts=regexWebKit.exec(lines[i])||regexGecko.exec(lines[i]);if(parts){if(parts[1]){result.push('at '+parts[1]+' '+parts[2]);}else{result.push('at '+parts[2]);}}}return result;}function shouldIgnoreMessage(message){return!!(message)&&['module already implemented: ext.gadget','Permission denied to access property','Permission denied to access object'].some((m)=>message.includes(m));}function shouldIgnoreFileUrl(fileUrl){return fileUrl.split('#')[0]===location.href.split('#')[0]||fileUrl.startsWith('javascript:')||fileUrl.includes('/inj_js/')||fileUrl.startsWith('blob:')||fileUrl.startsWith('jar:')||fileUrl.startsWith('C:\\\\\\\\')||fileUrl.startsWith('chrome://')||\\nfileUrl.startsWith('chrome-extension://')||fileUrl.startsWith('safari-extension://')||fileUrl.startsWith('moz-extension://');}function processErrorInstance(error){if(!error||!(error instanceof Error)||!error.stack){return null;}const stackTraceLines=getNormalizedStackTraceLines(String(error.stack));if(!stackTraceLines.length){return null;}const firstLine=stackTraceLines[0];const parts=firstLine.split(' ');const fileUrlParts=parts[parts.length-1].split(':');const fileUrl=fileUrlParts.slice(0,-2).join(':');return{errorClass:error.constructor.name,errorMessage:error.message,fileUrl:fileUrl,stackTrace:stackTraceLines.join('\\\\n'),errorObject:error,customErrorContext:(error).error_context};}function normalizeErrorMessage(message){return message.replace(/^Uncaught /,'');}function processErrorLoggerObject(errorLoggerObject){if(!errorLoggerObject){return null;}const errorObject=errorLoggerObject.errorObject;const stackTrace=errorObject&&errorObject.stack?getNormalizedStackTraceLines(errorObject.stack).join('\\\\n'):\\n'';return{errorClass:(errorObject&&errorObject.constructor.name)||'',errorMessage:normalizeErrorMessage(errorLoggerObject.errorMessage),fileUrl:errorLoggerObject.url||'undefined',stackTrace:stackTrace,errorObject:errorObject};}function shouldLog(descriptor){if(descriptor.fileUrl==='undefined'&&descriptor.errorMessage==='Script error.'){return false;}try{if(window.self!==window.top){return false;}}catch(e){return false;}if(mw.storage.session.get('client-error-opt-out')){return false;}if(shouldIgnoreFileUrl(descriptor.fileUrl)){return false;}if(errorCount>=errorLimit){return false;}errorCount++;if(shouldIgnoreMessage(descriptor.errorMessage)){return false;}return true;}function log(intakeURL,descriptor,component){let gadgets='';const host=location.host;const protocol=location.protocol;const search=location.search;const hash=location.hash;const canonicalName=mw.config.get('wgCanonicalSpecialPageName');const url=canonicalName?protocol+'//'+host+mw.util.getUrl('Special:'+canonicalName)+search+hash:\\nlocation.href;const centralNotice=(mw.centralNotice);const errorContext={component:component||'unknown',wiki:mw.config.get('wgWikiID',''),version:mw.config.get('wgVersion',''),skin:mw.config.get('skin',''),action:mw.config.get('wgAction',''),is_mobile_frontend_enabled:String(!(mw.config.get('wgMFMode')===null)),is_logged_in:String(!mw.user.isAnon()),namespace:mw.config.get('wgCanonicalNamespace',''),debug:String(!!mw.config.get('debug',0)),banner_shown:String((centralNotice&&centralNotice.isBannerShown&&centralNotice.isBannerShown())||false)};if(canonicalName){errorContext.special_page=canonicalName;}gadgets=mw.loader.getModuleNames().filter((module)=>module.match(/^ext\\\\.gadget\\\\./)&&mw.loader.getState(module)!=='registered').map((module)=>module.replace(/^ext\\\\.gadget\\\\./,'')).join(',');if(gadgets){errorContext.gadgets=gadgets;}const testKitchen=(mw.testKitchen);const experimentAssignments=(testKitchen&&testKitchen.getAssignments&&testKitchen.getAssignments())||{};const experimentNames=Object.keys(experimentAssignments);\\nif(experimentNames.length){errorContext.experiment_assignments=experimentNames.map((experimentName)=>`${experimentName}=${experimentAssignments[experimentName]}`).join(';');}const customErrorContext=descriptor.customErrorContext?descriptor.customErrorContext:{};navigator.sendBeacon(intakeURL,JSON.stringify({meta:{stream:'mediawiki.client.error',domain:location.hostname},$schema:'/mediawiki/client/error/2.0.0',error_class:descriptor.errorClass,message:descriptor.errorMessage,file_url:descriptor.fileUrl,url:url,stack_trace:descriptor.stackTrace||'undefined',error_context:Object.assign({},errorContext,customErrorContext)}));}function install(intakeURL){mw.trackSubscribe('error.',(topic,error)=>{if(topic==='error.uncaught'){return;}const component=topic.replace(/^error\\\\./,'');const descriptor=processErrorInstance((error));if(descriptor&&shouldLog(descriptor)){log(intakeURL,descriptor,component);}});mw.trackSubscribe('global.error',(_,obj)=>{const descriptor=processErrorLoggerObject((obj));\\nif(descriptor&&shouldLog(descriptor)){log(intakeURL,descriptor);}});}module.exports={getNormalizedStackTraceLines,processErrorInstance,processErrorLoggerObject,log};if(!window.QUnit&&navigator.sendBeacon!==undefined&&moduleConfig.WMEClientErrorIntakeURL){install(moduleConfig.WMEClientErrorIntakeURL);}\\n},\\\"sessionTick.js\\\":function(require,module,exports){const moduleConfig=require('./config.json');const enabled=moduleConfig.WMESessionTick;const TICK_MS=60000;const IDLE_MS=100000;const RESET_MS=1800000;const DEBOUNCE_MS=5000;const TICK_LIMIT=Math.ceil(RESET_MS/TICK_MS);const KEY_LAST_TIME='wmE-sessionTickLastTickTime';const KEY_COUNT='wmE-sessionTickTickCount';function detectPassiveEventListenerSupport(){let supportsPassive=false;const noop=function(){};try{const options=Object.defineProperty({},'passive',{get:function(){supportsPassive=true;return false;}});window.addEventListener('testPassiveOption',noop,options);window.removeEventListener('testPassiveOption',noop,options);}catch(e){}return supportsPassive;}function sessionReset(){mw.storage.set(KEY_COUNT,0);mw.track('sessionReset',1);}function sessionTick(incr){if(incr>TICK_LIMIT){throw new Error('Session ticks exceed limit');}const count=(Number(mw.storage.get(KEY_COUNT))||0);mw.storage.set(KEY_COUNT,count+incr);while(incr-->0){mw.eventLog.submit('mediawiki.client.session_tick',{\\n$schema:'/analytics/session_tick/2.0.0',tick:count+incr});}}function regulator(){let tickTimeout=null;let idleTimeout=null;let debounceTimeout=null;function run(){const now=Date.now();const gap=now-(Number(mw.storage.get(KEY_LAST_TIME))||0);if(gap>RESET_MS){mw.storage.set(KEY_LAST_TIME,now);sessionReset();sessionTick(1);}else if(gap>TICK_MS){mw.storage.set(KEY_LAST_TIME,now-(gap%TICK_MS));sessionTick(Math.floor(gap/TICK_MS));}tickTimeout=setTimeout(run,TICK_MS);}function setInactive(){clearTimeout(idleTimeout);clearTimeout(tickTimeout);clearTimeout(debounceTimeout);tickTimeout=null;debounceTimeout=null;}function setActive(){if(tickTimeout===null){run();}clearTimeout(idleTimeout);idleTimeout=setTimeout(setInactive,IDLE_MS);}function setActiveDebounce(){if(!debounceTimeout){debounceTimeout=setTimeout(()=>{clearTimeout(debounceTimeout);debounceTimeout=null;},DEBOUNCE_MS);mw.requestIdleCallback(setActive);}}function onVisibilitychange(){if(document.hidden){setInactive();}else{setActive();}\\n}document.addEventListener('visibilitychange',onVisibilitychange,false);window.addEventListener('click',setActiveDebounce,false);window.addEventListener('keyup',setActiveDebounce,false);window.addEventListener('scroll',setActiveDebounce,{passive:true,capture:false});onVisibilitychange();}if(enabled&&document.hidden!==undefined&&detectPassiveEventListenerSupport()){mw.requestIdleCallback(regulator);}\\n},\\\"editingSessionService.js\\\":function(require,module,exports){'use strict';let lastSessionId;function getEditingSessionId(existingSessionId=null,useLastSessionId=false){const configId=mw.config.get('wgWMESchemaEditAttemptStepSessionId');if(configId){return configId;}const urlParam=new URL(location.href).searchParams.get('editingStatsId');if(urlParam){return urlParam;}const formField=$('#editingStatsId').val();if(formField){return formField;}if(existingSessionId){return existingSessionId;}if(!useLastSessionId||!lastSessionId){lastSessionId=mw.user.generateRandomSessionId();}return lastSessionId;}module.exports={getEditingSessionId};\\n},\\\"sessionLength/mixin.js\\\":function(require,module,exports){'use strict';const NOOP=function(){};const TICK_MS=30*1000;const IDLE_MS=100*1000;const RESET_MS=60*60*1000;const DEBOUNCE_MS=5*1000;const KEY_LAST_TIME='mp-sessionTickLastTickTime';const KEY_COUNT='mp-sessionTickTickCount';const state=new Map();function supportsPassiveEventListeners(){let supportsPassive=false;try{const options=Object.defineProperty({},'passive',{get:function(){supportsPassive=true;return false;}});window.addEventListener('testPassiveOption',NOOP,options);window.removeEventListener('testPassiveOption',NOOP,options);}catch(e){}return supportsPassive;}if(document.hidden===undefined&&!supportsPassiveEventListeners()){mw.SessionLengthInstrumentMixin={start:NOOP,stop:NOOP};return;}function sessionReset(){mw.storage.session.set(KEY_COUNT,0);}function sessionTick(incr,tickLimit){if(incr>tickLimit){throw new Error('Session ticks exceed limit');}const count=(Number(mw.storage.session.get(KEY_COUNT))||0);state.forEach(({schemaID,data,instrument},streamName)=>{if(instrument){\\ndata=Object.assign({action_context:count.toString()},data);instrument.submitInteraction('tick',data);}else{data=Object.assign({action_context:count.toString(),instrument_name:'SessionLengthMixin'},data);mw.eventLog.submitInteraction(streamName,schemaID,'tick',data);}});mw.storage.session.set(KEY_COUNT,count+incr);}function regulator(reset,tick){const tickLimit=Math.ceil(reset/tick);let tickTimeout=null;let idleTimeout=null;let debounceTimeout=null;function run(){const now=Date.now();const gap=now-(Number(mw.storage.session.get(KEY_LAST_TIME))||0);const count=Number(mw.storage.session.get(KEY_COUNT))||0;if(count===0||gap>reset){mw.storage.session.set(KEY_LAST_TIME,now);sessionReset();sessionTick(1,tickLimit);}else if(gap>tick){mw.storage.session.set(KEY_LAST_TIME,now);sessionTick(1,tickLimit);}tickTimeout=setTimeout(run,tick);}function setInactive(){clearTimeout(idleTimeout);clearTimeout(tickTimeout);clearTimeout(debounceTimeout);tickTimeout=null;debounceTimeout=null;}function setActive(){\\nif(tickTimeout===null){run();}clearTimeout(idleTimeout);idleTimeout=setTimeout(setInactive,IDLE_MS);}function setActiveDebounce(){if(!debounceTimeout){debounceTimeout=setTimeout(()=>{clearTimeout(debounceTimeout);debounceTimeout=null;},DEBOUNCE_MS);mw.requestIdleCallback(setActive);}}function onVisibilitychange(){if(document.hidden){setInactive();}else{setActive();}}document.addEventListener('visibilitychange',onVisibilitychange,false);window.addEventListener('click',setActiveDebounce,false);window.addEventListener('keyup',setActiveDebounce,false);window.addEventListener('scroll',setActiveDebounce,{passive:true});onVisibilitychange();}const SessionLengthInstrumentMixin={state,start(dest,schemaOrData={},data={},reset=RESET_MS,tick=TICK_MS){if(typeof dest==='string'){const streamName=dest;const schemaID=schemaOrData;state.set(streamName,{schemaID,data});}else if(typeof dest==='object'){data=schemaOrData;if(dest.submitInteraction){const instrument=dest;state.set(instrument,{instrument,data});\\n}else{throw new Error('invalid Instrument or Experiment: it should have a submitInteraction() method');}}else{throw new Error('invalid streamName, Instrument, or Experiment');}regulator(reset,tick);},stop(dest){state.delete(dest);}};mw.storage.remove(KEY_COUNT);mw.storage.remove(KEY_LAST_TIME);module.exports={SessionLengthInstrumentMixin};\\n},\\\"webCommon.js\\\":function(require,module,exports){'use strict';function isUserBot(){const userGroups=mw.config.get('wgUserGroups')||[];return userGroups.includes('bot');}function getWikiName(){return mw.config.get('wgDBname','');}function getSkin(){return mw.config.get('skin','');}module.exports=()=>({wiki:getWikiName(),skin:getSkin(),is_bot:isUserBot()});\\n},\\\"webAccessibilitySettings.js\\\":function(require,module,exports){'use strict';function getFont(){const size=mw.user.clientPrefs.get('vector-feature-custom-font-size')||mw.user.clientPrefs.get('mf-font-size')||'0';switch(size){case'large':return'3';case'regular':return'2';case'small':return'1';default:return size;}}function getInterfaceWidth(){return mw.user.clientPrefs.get('vector-feature-limited-width')==='0';}function getPagePreviewSettings(){return mw.popups?mw.popups.isEnabled():false;}function getMediaViewerSettings(){const isUserAnon=mw.user.isAnon();const isMediaViewerEnabled=mw.config.get('wgMediaViewer')===true;const isMediaViewerEnabledByDefault=mw.config.get('wgMediaViewerEnabledByDefault')===true;const isMediaViewerOnClickEnabled=mw.config.get('wgMediaViewerOnClick')===true;const anonDisabledMV=isUserAnon&&mw.storage.get('wgMediaViewerOnClick')!=='0';return(isMediaViewerEnabled&&isMediaViewerEnabledByDefault&&isMediaViewerOnClickEnabled&&(!isUserAnon||anonDisabledMV));}function getPinnedSettings(){if(mw.config.get('skin')==='vector-2022'){\\nconst skinsVector=require('skins.vector.js');const hasPinnedElementsFn=skinsVector.pinnableElement.analyticsPinnedState;return hasPinnedElementsFn();}else{return false;}}function getDarkModeSettings(){const theme=mw.user.clientPrefs.get('skin-theme');if(theme===false){return mw.user.clientPrefs.get('skin-night-mode')||'0';}switch(theme){case'night':return'1';case'os':return'2';case'day':return'0';default:return'0';}}function getDarkModeBrowserMedia(){return window.matchMedia&&window.matchMedia('(prefers-color-scheme: dark)').matches;}module.exports=()=>({font:getFont(),is_full_width:getInterfaceWidth(),is_page_preview_on:getPagePreviewSettings(),is_pinned:getPinnedSettings(),is_media_viewer_enabled:getMediaViewerSettings(),is_dark_mode_prepared_by_os:getDarkModeBrowserMedia(),dark_mode_setting:getDarkModeSettings(),is_dark_mode_on:getDarkModeSettings()==='1'||(getDarkModeBrowserMedia()&&getDarkModeSettings()==='2')});\\n},\\\"webUIScroll.js\\\":function(require,module,exports){'use strict';const sampleRate=require('./data.json').webUIScrollTrackingSamplingRate||0;const sampleRateAnons=require('./data.json').webUIScrollTrackingSamplingRateAnons||0;const timeToWaitBeforeScrollUp=require('./data.json').webUIScrollTrackingTimeToWaitBeforeScrollUp||0;const isMobile=mw.config.get('wgMFMode');let waitBeforeScrollUp=true;let timer;const webCommon=require('./webCommon.js');function log(action){const data=Object.assign({},webCommon(),{$schema:'/analytics/mediawiki/web_ui_scroll/2.0.0',web_session_id:mw.user.sessionId(),page_id:mw.config.get('wgArticleId'),is_anon:mw.user.isAnon(),action:action,access_method:isMobile?'mobile web':'desktop'});mw.eventLog.submit('mediawiki.web_ui_scroll',data);mw.eventLog.submitInteraction('mediawiki.web_ui_scroll_migrated','/analytics/product_metrics/web/base/1.1.0',action);}function hookAction(data){if(data.context.startsWith('scrolled-below-')){waitBeforeScrollUp=true;timer=setTimeout(()=>{waitBeforeScrollUp=false;},timeToWaitBeforeScrollUp);\\n}if(!waitBeforeScrollUp&&data.context.startsWith('scrolled-above-')){log(data.action);clearTimeout(timer);}}mw.requestIdleCallback(()=>{const disabled=sampleRate===0&&sampleRateAnons===0;if(disabled||(!mw.user.isAnon()&&!mw.eventLog.eventInSample(1/sampleRate))||(mw.user.isAnon()&&!mw.eventLog.eventInSample(1/sampleRateAnons))){return;}mw.hook('vector.page_title_scroll').add(hookAction);mw.hook('vector.table_of_contents_scroll').add(hookAction);});\\n},\\\"readingDepth.js\\\":function(require,module,exports){const moduleConfig=require('./config.json');const skin=mw.config.get('skin');const ignoredSkins=['cologneblue','modern','monobook','timeless'];const eventData={};let msPaused=0;const SCHEMA_NAME='ReadingDepth';const DEFAULT_SAMPLE_GROUP='default_sample';let trackingIsEnabled;let pausedAt;let sessionId;let visibilityListenersAdded;let EVENT;function supportsPerformanceAPI(){return!!(window.performance&&window.performance.now&&window.performance.getEntriesByType);}function checkCapability(){return supportsPerformanceAPI();}if(!checkCapability()){return;}function isInSample(samplingRate){const bucket=mw.experiments.getBucket({name:'WME.'+SCHEMA_NAME,enabled:true,buckets:{control:1-samplingRate,A:samplingRate}},sessionId);return bucket==='A';}function getDomInteractive(){const navigationEntries=performance.getEntriesByType('navigation');if(navigationEntries.length){return navigationEntries[0].domInteractive;}return undefined;}function getFirstPaint(){const paintEntries=performance.getEntriesByType('paint');\\nif(paintEntries.length){return paintEntries[0].startTime;}return undefined;}function pause(at){if(!pausedAt){pausedAt=at||performance.now();}}function resume(){if(pausedAt){msPaused+=performance.now()-pausedAt;pausedAt=null;}}function logEvent(action){const domInteractive=getDomInteractive();const firstPaint=getFirstPaint();const pageLength=mw.config.get('wgWMEPageLength',-1);const isMobile=mw.config.get('wgMFMode');const data=Object.assign({},EVENT,{action:action,dom_interactive_time:domInteractive?Math.round(domInteractive):undefined,first_paint_time:firstPaint?Math.round(firstPaint):undefined,visibility_listeners_time:Math.round(visibilityListenersAdded),page_length:pageLength,access_method:isMobile?'mobile web':'desktop'},eventData);if(action==='pageUnloaded'){data.total_length=Math.round(performance.now()-visibilityListenersAdded);data.visible_length=Math.round(data.total_length-msPaused);}mw.eventLog.submit('mediawiki.reading_depth',data);}function onBeforeUnload(){logEvent('pageUnloaded');\\n}function isHidden(){return document.visibilityState==='hidden';}function onLoad(){visibilityListenersAdded=performance.now();if(isHidden()){pause(visibilityListenersAdded);}$(document).on('visibilitychange',()=>{if(isHidden()){pause();}else{resume();}});logEvent('pageLoaded');}function enableTracking(){if(!trackingIsEnabled){trackingIsEnabled=true;EVENT={$schema:'/analytics/mediawiki/web_ui_reading_depth/1.0.0',page_namespace:mw.config.get('wgNamespaceNumber'),skin:mw.config.get('skin'),is_anon:mw.user.isAnon(),session_token:sessionId};window.addEventListener('beforeunload',onBeforeUnload);onLoad();}}mw.requestIdleCallback(()=>{if(!ignoredSkins.includes(skin)){sessionId=mw.user.sessionId();if(isInSample(moduleConfig.WMEReadingDepthSamplingRate)){eventData[DEFAULT_SAMPLE_GROUP]=true;}if(Object.keys(eventData).length){enableTracking();}}});\\n},\\\"phpEngine.js\\\":function(require,module,exports){function phpEngine(){const moduleConfig=require('./config.json');const version=moduleConfig.WMENewPHPVersion;if(!version){return;}const hasCookie=$.cookie('PHP_ENGINE')!==null;const inSample=mw.eventLog.sessionInSample(moduleConfig.WMENewPHPSamplingRate);if(inSample&&!hasCookie){$.cookie('PHP_ENGINE',version,{expires:7,path:'/'});}else if(!inSample&&hasCookie&&!$.cookie('PHP_ENGINE_STICKY')){$.removeCookie('PHP_ENGINE',{path:'/'});}}mw.requestIdleCallback(phpEngine);\\n},\\\"blockedEdit.js\\\":function(require,module,exports){mw.hook('ve.activationComplete').add(()=>{if(!ve.init.target.canEdit){let platform=ve.init.target.constructor.static.platformType||'other';if(platform==='phone'){platform='mobile';}(new mw.Api()).post({formatversion:2,action:'wikimediaeventsblockededit',page:mw.config.get('wgPageName'),interface:'visualeditor',platform});}});mw.trackSubscribe('counter.MediaWiki.BlockNotices.'+mw.config.get('wgDBname')+'.MobileFrontend.shown',()=>{(new mw.Api()).post({formatversion:2,action:'wikimediaeventsblockededit',page:mw.config.get('wgPageName'),interface:'mobilefrontend',platform:'mobile'});});mw.trackSubscribe('dt.commentSetupError',(topic,code)=>{if(code==='permissions-error'){(new mw.Api()).post({formatversion:2,action:'wikimediaeventsblockededit',page:mw.config.get('wgPageName'),interface:'discussiontools',platform:mw.config.get('wgMFMode')!==null?'mobile':'desktop'});}});\\n},\\\"networkProbe.js\\\":function(require,module,exports){function networkProbeInit(){const preventProbe=mw.cookie.get('PreventProbe');if(preventProbe!=='1'){const networkProbeRandom=Math.random();const networkProbeLimitDefault=0.00010;let networkProbeLimit=mw.cookie.get('NetworkProbeLimit','',networkProbeLimitDefault);if(isNaN(networkProbeLimit)){networkProbeLimit=networkProbeLimitDefault;}if(networkProbeRandom<=networkProbeLimit){mw.loader.load('ext.wikimediaEvents.networkprobe');}}}mw.requestIdleCallback(networkProbeInit);\\n},\\\"clickTracking/utils.js\\\":function(require,module,exports){function isVectorFeatureEnabled(name){const className='vector-feature-'+name+'-enabled';return document.documentElement.classList.contains(className);}function getMenuLinkEventName($target){const $closestLink=$target.closest('.vector-menu a');const closestLink=$closestLink[0];if(!closestLink){return null;}const linkListItem=closestLink.parentNode;if(!linkListItem){return;}let id=linkListItem.id;if(id.includes('toc')){id=id.slice(0,id.indexOf('toc-'))+'toc-heading';}const pinnableElement=$closestLink.closest('.vector-pinnable-element')[0];const pinnableElementHeader=pinnableElement?pinnableElement.querySelector('.vector-pinnable-header'):null;if(id&&pinnableElement&&pinnableElementHeader){const featureName=pinnableElementHeader.dataset.name||pinnableElementHeader.dataset.featureName||'unknown';const pinnedState=isVectorFeatureEnabled(featureName)?'-enabled':'-disabled';return id+'.'+featureName+pinnedState;}else{return id;}}const onClickTrack=function(logEvent){return(event)=>{const $target=$(event.target);\\nconst $closest=$target.closest('[data-event-name]');if($closest.length){if(['A','BUTTON','INPUT'].includes($closest[0].tagName)){const destination=$closest.attr('href');logEvent('click',$closest.attr('data-event-name'),destination);}}else{const eventName=getMenuLinkEventName($target);if(eventName){logEvent('click',eventName);}}};};module.exports={onClickTrack};\\n},\\\"searchSatisfaction/index.js\\\":function(require,module,exports){const searchSatisfaction=require('./searchSatisfaction.js');const searchSli=require('./searchSli.js');module.exports=()=>{if(typeof searchSli==='function'){searchSli();}$(searchSatisfaction);};\\n},\\\"searchSatisfaction/searchSatisfaction.js\\\":function(require,module,exports){'use strict';let session;const hasOwn=Object.prototype.hasOwnProperty;const isSearchResultPage=mw.config.get('wgIsSearchResultPage');const uri=(function(){try{return new URL(location.href);}catch(e){return null;}}());const checkinTimes=[10,20,30,40,50,60,90,120,150,180,210,240,300,360,420];let lastScrollTop=0;const articleId=mw.config.get('wgArticleId');const didYouMeanMap={dym1:'dym-suggest',dymr1:'dym-rewritten',dymo1:'dym-original'};const didYouMeanList=['dym1','dymr1','dymo1'];const skin=mw.config.get('skin');if(uri===null){return;}function extractResultPosition(uri,wprovPrefix){const wprov=uri.searchParams.get('wprov');return parseInt(wprov&&wprov.startsWith(wprovPrefix)&&wprov.slice(wprovPrefix.length),10);}function initFromWprov(wprovPrefix){const res={wprovPrefix,resultPosition:extractResultPosition(uri,wprovPrefix)};res.cameFromSearch=!isNaN(res.resultPosition);return res;}function randomToken(){return mw.user.generateRandomSessionId()+Date.now().toString(36);}const search=initFromWprov('srpw1_');\\nconst wprov=uri.searchParams.get('wprov');search.didYouMean=wprov&&wprov.startsWith(search.wprovPrefix)&&didYouMeanList.includes(wprov.slice(search.wprovPrefix.length))&&wprov.slice(search.wprovPrefix.length);const autoComplete=initFromWprov('acrw1_');autoComplete.cameFromAutocomplete=wprov==='acrw1';if(window.history.replaceState&&wprov){uri.searchParams.delete('wprov');window.history.replaceState({},'',uri.toString());}function SessionState(){let state={};const storageNamespace='wmE-sS-';const ttl=10*60*1000;const persist=['sessionId','subTest','__EndTime__'];function key(type){return storageNamespace+'-'+type;}function invalidate(){state={};mw.storage.remove(key('__EndTime__'));persist.forEach((type)=>{mw.storage.remove(key(type));});}function initialize(session){function resolveSubTest(val){return val===''?'inactive':val;}function startSession(){invalidate();return mw.storage.set(key('__EndTime__'),Date.now()+ttl)&&mw.storage.set(key('sessionId'),randomToken());}function set(type,value){\\nif(persist.includes(type)){if(!mw.storage.set(key(type),value)){return false;}}state[type]=value;return true;}if(!session.isActive()&&!startSession()){invalidate();return;}let subTest=session.get('subTest');if(subTest===null||subTest==='pending'){subTest=mw.config.get('wgCirrusSearchActiveUserTest');if(subTest!==null){set('subTest',resolveSubTest(subTest));}else{set('subTest','pending');new mw.Api().get({formatversion:2,action:'cirrus-config-dump',prop:'usertesting'}).then((data)=>{set('subTest',resolveSubTest(data.CirrusSearchActiveUserTest));});}}else if(mw.config.exists('wgCirrusSearchActiveUserTest')){if(subTest!==resolveSubTest(mw.config.get('wgCirrusSearchActiveUserTest'))){set('subTest','mismatch');}}set('pageViewId',randomToken());}this.isActive=function(){const end=+this.get('__EndTime__');return end>Date.now()&&this.get('sessionId')!==null;};this.get=function(type){if(!hasOwn.call(state,type)){if(persist.includes(type)){state[type]=mw.storage.get(key(type));}else{state[type]=null;\\n}}return state[type];};this.refresh=function(){if(this.isActive()){mw.storage.set(key('__EndTime__'),Date.now()+ttl);}else{invalidate();}};initialize(this);return this;}function interval(checkinTimes,fn){const visibleTimeout=require('mediawiki.visibleTimeout');let checkin=checkinTimes.shift();let timeout=checkin;function action(){const current=checkin;fn(current);checkin=checkinTimes.shift();if(checkin){timeout=checkin-current;visibleTimeout.set(action,1000*timeout);}}visibleTimeout.set(action,1000*timeout);}function genLogEventFn(source,session,sourceExtraData){const sessionId=session.get('sessionId'),pageViewId=session.get('pageViewId');return function(action,extraData){const scrollTop=$(window).scrollTop();const evt={action:action,source:source,searchSessionId:sessionId,pageViewId:pageViewId,scroll:scrollTop!==lastScrollTop,mwSessionId:mw.user.sessionId(),uniqueId:randomToken(),sampleMultiplier:1.0};if(action!=='checkin'&&!session.isActive()){return;}lastScrollTop=scrollTop;const subTest=session.get('subTest');\\nif(subTest!=='inactive'&&subTest!==null){evt.subTest=subTest;}if(articleId>0){evt.articleId=articleId;}evt.skin=skin;evt.isAnon=mw.user.isAnon();evt.userEditBucket=mw.config.get('wgUserEditCountBucket')||'0 edits';if(['vector','vector-2022'].includes(String(skin))){evt.skinVersion=document.body.classList.contains('skin-vector-legacy')?'legacy':'latest';}if(sourceExtraData){Object.assign(evt,sourceExtraData);}if(extraData){Object.assign(evt,extraData);}mw.eventLog.logEvent('SearchSatisfaction',evt);};}function genAttachWprov(value){return function(){const uri=new URL(this.href);uri.searchParams.set('wprov',value);this.href=uri.toString();};}function createVisitPageEvent(){const evt={position:search.resultPosition};try{const referrer=document.referrer?new URL(document.referrer):null;const searchQuery=referrer.searchParams.getAll('search');const searchToken=referrer.searchParams.get('searchToken');if(searchToken){evt.searchToken=searchToken;}if(searchQuery.length){evt.query=searchQuery[0];\\n}}catch(e){}return evt;}function createSerpEvent(){const serpExtras={offset:$('.results-info').data('mw-num-results-offset')};if($('#mw-interwiki-results > .iw-results').length){const iwResultSet=[];$('li.iw-resultset').each(function(){iwResultSet.push({source:$(this).data('iw-resultset-source'),position:$(this).data('iw-resultset-pos')});});serpExtras.iw=iwResultSet;}if(mw.config.exists('wgCirrusSearchFallback')){serpExtras.fallback=mw.config.get('wgCirrusSearchFallback');}if(mw.config.exists('wgCirrusSearchTeamDraft')){serpExtras.teamDraft=mw.config.get('wgCirrusSearchTeamDraft');}const params={query:mw.config.get('searchTerm'),hitsReturned:$('.results-info').data('mw-num-results-total'),extraParams:JSON.stringify(serpExtras)};if($('#mw-search-DYM-suggestion').length){params.didYouMeanVisible='yes';}else if($('#mw-search-DYM-rewritten').length){params.didYouMeanVisible='autorewrite';}else{params.didYouMeanVisible='no';}if(window.performance&&window.performance.getEntriesByType){const entry=performance.getEntriesByType('navigation')[0];\\nif(entry&&entry.domInteractive>0){params.msToDisplayResults=Math.floor(entry.domInteractive);}}if(search.didYouMean){params.inputLocation=didYouMeanMap[search.didYouMean];}return params;}function setupSearchTest(session){const logEvent=(function(){const params={};if(mw.config.get('wgCirrusSearchRequestSetToken')){params.searchToken=mw.config.get('wgCirrusSearchRequestSetToken');}return genLogEventFn('fulltext',session,params);}());if(isSearchResultPage){session.refresh();$('#mw-search-DYM-suggestion').each(genAttachWprov(search.wprovPrefix+'dym1'));$('#mw-search-DYM-rewritten').each(genAttachWprov(search.wprovPrefix+'dymr1'));$('#mw-search-DYM-original').each(genAttachWprov(search.wprovPrefix+'dymo1'));$('#mw-content-text').on('click','.mw-search-result a, #mw-search-DYM-suggestion, #mw-search-DYM-original, #mw-search-DYM-rewritten',(evt)=>{let wprov;const $target=$(evt.target).closest('a');const clickType=$target.closest('.mw-search-result').find('a.extiw').length>0?'iwclick':'click';\\nconst params={position:$target.closest('.mw-search-result').find('[data-serp-pos]').data('serp-pos')};if(params.position!==undefined){wprov=params.position;}else if($target.is('#mw-search-DYM-suggestion')){wprov='dym1';}else if($target.is('#mw-search-DYM-original')){wprov='dymo1';}else if($target.is('#mw-search-DYM-rewritten')){wprov='dymr1';}if(wprov!==undefined){genAttachWprov(search.wprovPrefix+wprov).apply($target.get(0));}if(params.position!==undefined){logEvent(clickType,params);}});$('#mw-interwiki-results').on('click','.iw-result__title a, .iw-result__mini-gallery a, .iw-result__footer a',(evt)=>{const $target=$(evt.target).closest('a');const href=$target.attr('href')||'';logEvent('ssclick',{position:$target.closest('.iw-resultset').data('iw-resultset-pos'),extraParams:href});});mw.trackSubscribe('event.VirtualPageView',(_topic,value)=>{const title=mw.Title.newFromText(value.page_title);const position=$('.mw-search-result-heading a[title=\\\"'+title.getNameText()+'\\\"]').data('serp-pos');\\nif(position!==undefined){logEvent('virtualPageView',{position:position,extraParams:JSON.stringify({namespace:value.page_namespace,pageId:value.page_id})});}});logEvent('searchResultPage',createSerpEvent());}if(search.cameFromSearch){logEvent('visitPage',createVisitPageEvent());interval(checkinTimes,(checkin)=>{logEvent('checkin',{checkin:checkin});});}}function setupAutocompleteTest(session){let lastSearchId;let autocompleteStart=null;mw.hook('typeaheadSearch.appendUrlParams').add((append)=>{const subTest=session.get('subTest');if(subTest&&subTest.includes(':')){append('cirrusUserTesting',subTest);}});const logEvent=genLogEventFn('autocomplete',session,{});const track=function(topic,data){let $wprov,params;if(data.action==='session-start'){autocompleteStart=Date.now();}else if(data.action==='impression-results'){session.refresh();params={hitsReturned:data.numberOfResults,query:data.query,inputLocation:data.inputLocation,autocompleteType:data.resultSetType};if(data.searchId){params.searchToken=data.searchId;\\nlastSearchId=data.searchId;}else{lastSearchId=null;}if(autocompleteStart!==null){params.msToDisplayResults=Math.round(Date.now()-autocompleteStart);}logEvent('searchResultPage',params);}else if(data.action==='render-one'){data.formData.linkParams.wprov=autoComplete.wprovPrefix+data.index;}else if(data.action==='submit-form'||data.action==='click-result'){params={position:data.index};if(lastSearchId){params.searchToken=lastSearchId;}logEvent('click',params);if(data.action==='submit-form'){$wprov=data.$form.find('input[name=wprov]');if($wprov.length){$wprov.val(autoComplete.wprovPrefix+data.index);}else{$wprov=$('<input>').attr({type:'hidden',name:'wprov',value:autoComplete.wprovPrefix+data.index}).appendTo(data.$form);}}}};if(autoComplete.cameFromSearch){logEvent('visitPage',{position:autoComplete.resultPosition});interval(checkinTimes,(checkin)=>{logEvent('checkin',{checkin:checkin});});}mw.trackSubscribe('mediawiki.searchSuggest',track);mw.trackSubscribe('mw.widgets.SearchInputWidget',track);\\n}function atMostOnce(fn){let called=false;return function(){if(!called){fn.apply(this,arguments);called=true;}};}function setup(fn){session=session||new SessionState();if(session.isActive()){fn(session);}}if(isSearchResultPage||search.cameFromSearch){$(()=>{setup(setupSearchTest);});}module.exports=(()=>{const initialize=atMostOnce(()=>{setup(setupAutocompleteTest);});if(autoComplete.cameFromSearch){initialize();}else{$('#p-search, .mw-search-form-wrapper').one('input change paste keypress','input[type=\\\"search\\\"]',initialize);}});\\n},\\\"searchSatisfaction/searchSli.js\\\":function(require,module,exports){if(!window.performance||!window.performance.now||!window.performance.getEntriesByType){return;}if(mw.config.get('wgIsSearchResultPage')){$(()=>{const entry=performance.getEntriesByType('navigation')[0];if(entry&&entry.loadEventEnd){mw.track('timing.Search.FullTextResults',entry.loadEventEnd);mw.track('stats.mediawiki_WikimediaEvents_Search_FullTextResults_seconds',entry.loadEventEnd);}});}let autocompleteStart=null;function trackAutocomplete(_topic,data){if(data.action==='session-start'){autocompleteStart=performance.now();}else if(data.action==='impression-results'&&autocompleteStart!==null){const took=performance.now()-autocompleteStart;autocompleteStart=null;mw.track('timing.Search.AutocompleteResults',took);mw.track('stats.mediawiki_WikimediaEvents_Search_AutocompleteResults_seconds',took);}}module.exports=()=>{mw.trackSubscribe('mediawiki.searchSuggest',trackAutocomplete);mw.trackSubscribe('mw.widgets.SearchInputWidget',trackAutocomplete);};\\n},\\\"clickTracking/webUIClick.js\\\":function(require,module,exports){const util=require('./utils.js');const webA11ySettings=require('../webAccessibilitySettings.js');const VIEWPORT_BUCKETS={below320:'<320px',between320and719:'320px-719px',between720and999:'720px-999px',between1000and1199:'1000px-1199px',between1200and2000:'1200px-2000px',over2000:'>2000px'};function getUserViewportBucket(){if(window.innerWidth>2000){return VIEWPORT_BUCKETS.over2000;}if(window.innerWidth>=1200){return VIEWPORT_BUCKETS.between1200and2000;}if(window.innerWidth>=1000){return VIEWPORT_BUCKETS.between1000and1199;}if(window.innerWidth>=720){return VIEWPORT_BUCKETS.between720and999;}if(window.innerWidth>=320){return VIEWPORT_BUCKETS.between320and719;}if(window.innerWidth<320){return VIEWPORT_BUCKETS.below320;}}function getModes(){const mode=mw.config.get('wgMFMode')||'desktop';const modes=[mode];if(mode!=='desktop'&&mw.config.get('wgMFAmc')){modes.push('amc');}return modes;}function logEvent(action,name,destination){if(name||action==='init'){const modes=getModes().join(',');\\nconst data={action,name,destination:destination||null,isAnon:mw.user.isAnon(),isTemp:mw.user.isTemp(),userGroups:mw.config.get('wgUserGroups').join(','),skin:mw.config.get('skin'),editCountBucket:mw.config.get('wgUserEditCountBucket')||'0 edits',viewportSizeBucket:getUserViewportBucket(),pageNamespace:mw.config.get('wgNamespaceNumber'),pageToken:mw.user.getPageviewToken(),token:mw.user.sessionId()};const metricsPlatformData=webA11ySettings();metricsPlatformData.action_context=modes;metricsPlatformData.viewport_size_bucket=data.viewportSizeBucket;metricsPlatformData.action_source=name;metricsPlatformData.is_temp=data.isTemp;mw.eventLog.submitInteraction('mediawiki.web_ui_actions','/analytics/mediawiki/product_metrics/web_ui_actions/1.0.2',action,metricsPlatformData);}}function getSkinDependencies(){const skin=mw.config.get('skin');if(skin==='vector-2022'){return['skins.vector.js'];}else{return[];}}function getInstrumentationDependencies(){const dependencies=getSkinDependencies();const popupsState=mw.loader.getState('ext.popups.main');\\nif(popupsState&&popupsState!=='registered'&&popupsState!=='error'){return dependencies.concat(['ext.popups.main']);}return dependencies;}mw.trackSubscribe('webuiactions_log.',(topic,value)=>{logEvent(topic.slice('webuiactions_log.'.length),value);});$(()=>{mw.loader.using(getInstrumentationDependencies()).then(()=>{logEvent('init','ns='+mw.config.get('wgNamespaceNumber'));const clickTracker=util.onClickTrack(logEvent);document.addEventListener('click',clickTracker,true);mw.hook('ext.wikimediaEvents.webUIClick.event').add(clickTracker);});});\\n},\\\"universalLanguageSelector.js\\\":function(require,module,exports){'use strict';const startedAt=mw.now();let hiddenAt=null;let timeHidden=0;function onHide(){if(!hiddenAt){hiddenAt=mw.now();}}function onShow(){if(hiddenAt){timeHidden+=mw.now()-hiddenAt;hiddenAt=null;}}const skin=mw.config.get('skin');let skinVersion;function getSkinVersion(){if(skinVersion===undefined){if(['vector','vector-2022'].includes(String(skin))){skinVersion=document.body.classList.contains('skin-vector-legacy')?'legacy':'latest';}else{skinVersion=null;}}return skinVersion;}function log(event){event=Object.assign({version:3,token:'',contentLanguage:mw.config.get('wgContentLanguage'),interfaceLanguage:mw.config.get('wgUserLanguage'),web_session_id:mw.user.sessionId(),isAnon:mw.user.isAnon(),skin:skin,skinVersion:getSkinVersion()},event);const userEditBucket=mw.config.get('wgUserEditCountBucket');if(userEditBucket){event.userEditBucket=userEditBucket;}mw.track('event.UniversalLanguageSelector',event);}function ulsSettingsOpen(context){log({action:'settings-open',context:context});\\n}function ulsCompactLanguageLinksOpen($trigger){let context='other';const isVector=['vector','vector-2022'].includes(String(skin));if(isVector&&$trigger.is('#p-lang-btn-checkbox')){context='header';}else if(isVector&&$trigger.is('#p-lang-btn-sticky-header')){context='sticky-header';}log({action:'compact-language-links-open',context:context});}function ulsLanguageRevert(){log({action:'ui-lang-revert'});}function disableIME(context){log({action:'ime-disable',context:context});}function enableIME(context){log({action:'ime-enable',context:context});}function changeIME(inputMethod){log({action:'ime-change',inputMethod:inputMethod});}function loginClick(){log({action:'login-click'});}function imeMoreLanguages(){log({action:'more-languages-access',context:'ime'});}function interfaceLanguageChange(language,source){const logParams={action:'language-change',context:source||'interface',selectedInterfaceLanguage:language,timeToChangeLanguage:mw.now()-startedAt-timeHidden};log(logParams);}function interfaceMoreLanguages(){\\nlog({action:'more-languages-access',context:'interface'});}function fontChange(context,language,font){const logParams={action:'font-change',context:context};if(context==='interface'){logParams.interfaceFont=font;logParams.selectedInterfaceLanguage=language;}else{logParams.contentFont=font;}log(logParams);}function disableWebfonts(context){log({action:'webfonts-disable',context:context});}function enableWebfonts(context){log({action:'webfonts-enable',context:context});}function noSearchResults(event,data){log({action:'no-search-results',context:data.query,ulsPurpose:data.ulsPurpose,title:mw.config.get('wgPageName')});}function listen(){mw.hook('mw.uls.settings.open').add(ulsSettingsOpen);mw.hook('mw.uls.compact_language_links.open').add(ulsCompactLanguageLinksOpen);mw.hook('mw.uls.language.revert').add(ulsLanguageRevert);mw.hook('mw.uls.ime.enable').add(enableIME);mw.hook('mw.uls.ime.disable').add(disableIME);mw.hook('mw.uls.ime.change').add(changeIME);mw.hook('mw.uls.login.click').add(loginClick);\\nmw.hook('mw.uls.ime.morelanguages').add(imeMoreLanguages);mw.hook('mw.uls.interface.morelanguages').add(interfaceMoreLanguages);mw.hook('mw.uls.interface.language.change').add(interfaceLanguageChange);mw.hook('mw.uls.font.change').add(fontChange);mw.hook('mw.uls.webfonts.enable').add(enableWebfonts);mw.hook('mw.uls.webfonts.disable').add(disableWebfonts);$(document.body).on('noresults.uls','.uls-menu .uls-languagefilter',noSearchResults);if(document.hidden){onHide();}document.addEventListener('visibilitychange',()=>{if(document.hidden){onHide();}else{onShow();}});$(()=>{$('.mw-workspace-container #p-lang').on('click','.interlanguage-link-target',function(){mw.hook('mw.uls.interface.language.change').fire(this.attributes.getNamedItem('hreflang').value,'languages-list');});});}listen();\\n},\\\"editAttemptStep.js\\\":function(require,module,exports){'use strict';const config=require('./config.json');const webCommon=require('./webCommon.js');const editingSessionService=require('./editingSessionService.js');let session;let easSampleRate=config.WMESchemaEditAttemptStepSamplingRate;let easOversample=mw.config.get('wgWMESchemaEditAttemptStepOversample');let vefuSampleRate=config.WMESchemaVisualEditorFeatureUseSamplingRate;let vefuOversample=easOversample;function handleFirstEvent(event){session={editing_session_id:editingSessionService.getEditingSessionId(),editor_interface:event.editor_interface||null,integration:event.integration||null,platform:mw.config.get('wgMFMode')!==null?'phone':'desktop'};mw.trackSubscribe('visualEditorFeatureUse',visualEditorFeatureUseHandler);}let firstInitDone=false;function handleInitEvent(event){if(firstInitDone){session.editing_session_id=mw.user.generateRandomSessionId();}firstInitDone=true;if(event.editor_interface){session.editor_interface=event.editor_interface;}if(event.integration){session.integration=event.integration;\\n}if(session.integration==='discussiontools'){easSampleRate=config.DTSchemaEditAttemptStepSamplingRate||config.WMESchemaEditAttemptStepSamplingRate;easOversample=config.DTSchemaEditAttemptStepOversample||mw.config.get('wgWMESchemaEditAttemptStepOversample');vefuSampleRate=config.WMESchemaVisualEditorFeatureUseSamplingRate||easSampleRate;vefuOversample=easOversample;}else if(session.platform==='phone'&&session.integration==='page'){easSampleRate=config.WMESchemaEditAttemptStepSamplingRate;easOversample=mw.config.get('wgWMESchemaEditAttemptStepOversample')||config.MFSchemaEditAttemptStepOversample==='all'||session.editor_interface===config.MFSchemaEditAttemptStepOversample;vefuSampleRate=config.WMESchemaEditAttemptStepSamplingRate;vefuOversample=mw.config.get('wgWMESchemaEditAttemptStepOversample')||config.MFSchemaEditAttemptStepOversample==='visualeditor'||config.MFSchemaEditAttemptStepOversample==='all';}else{easSampleRate=config.WMESchemaEditAttemptStepSamplingRate;easOversample=mw.config.get('wgWMESchemaEditAttemptStepOversample');\\nvefuSampleRate=config.WMESchemaVisualEditorFeatureUseSamplingRate;vefuOversample=easOversample;}}$.ajaxPrefilter((options)=>{if(options.trackEditAttemptStepSessionId&&session&&session.editing_session_id){if(options.data instanceof window.FormData){options.data.append('editingStatsId',session.editing_session_id);}else if(typeof options.data==='string'){options.data+='&editingStatsId='+encodeURIComponent(session.editing_session_id);}else if(options.url.includes('?')){options.url+='&editingStatsId='+encodeURIComponent(session.editing_session_id);}else{mw.errorLogger.logError(new Error('editAttemptStep: Unable to add editingStatsId'),'error.wikimediaevents');}}});const trackdebug=new URL(location.href).searchParams.has('trackdebug');function log(){console.log.apply(console,arguments);}let timing={};function computeDuration(action,event,timeStamp){if(event.timing!==undefined){return event.timing;}switch(action){case'ready':return timeStamp-timing.init;case'loaded':return timeStamp-timing.init;\\ncase'firstChange':return timeStamp-timing.ready;case'saveIntent':return timeStamp-timing.ready;case'saveAttempt':return timeStamp-timing.saveIntent;case'saveSuccess':case'saveFailure':mw.log.warn('editAttemptStep: Do not rely on default timing value for saveSuccess/saveFailure');return-1;case'abort':switch(event.type){case'preinit':return timeStamp-timing.init;case'nochange':case'switchwith':case'switchwithout':case'switchnochange':case'abandon':case'pageupdate':return timeStamp-timing.ready;case'abandonMidsave':return timeStamp-timing.saveAttempt;}mw.log.warn('editAttemptStep: Unrecognized abort type',event.type);return-1;}mw.log.warn('editAttemptStep: Unrecognized action',action);return-1;}function addABTestData(data,addToken){if((mw.config.get('wgVisualEditorConfig')||{}).editCheckABTest){const bucket=mw.config.get('wgVisualEditorEditCheckABTestBucket');if(bucket){data.bucket=bucket;if(mw.user.isAnon()&&addToken){const token=mw.cookie.get('VEECid','');if(token){data.anonymous_user_token=token;\\n}}}}}function inSample(samplingRate){return mw.eventLog.randomTokenMatch(1/samplingRate,session.editing_session_id);}const schemaEditAttemptStep=new mw.eventLog.Schema('EditAttemptStep',0,{page_id:mw.config.get('wgArticleId'),page_title:mw.config.get('wgPageName'),page_ns:mw.config.get('wgNamespaceNumber'),revision_id:mw.config.get('wgRevisionId')||+$('input[name=parentRevId]').val()||0,user_id:mw.user.getId(),user_is_temp:mw.user.isTemp(),user_class:mw.user.isAnon()?'IP':undefined,user_editcount:mw.config.get('wgUserEditCount',0),mw_version:mw.config.get('wgVersion'),page_token:mw.user.getPageviewToken(),session_token:mw.user.sessionId(),version:1});function editAttemptStepHandler(topic,data){if(data&&data.mode){data.editor_interface=data.mode==='source'?'wikitext-2017':'visualeditor';delete data.mode;}if(!session){handleFirstEvent(data);}if(data.action==='init'){handleInitEvent(data);}const actionPrefixMap={firstChange:'first_change',saveIntent:'save_intent',saveAttempt:'save_attempt',\\nsaveSuccess:'save_success',saveFailure:'save_failure'};const actionPrefix=actionPrefixMap[data.action]||data.action;const timeStamp=mw.now();if(data.action==='abort'&&(data.type==='unknown'||data.type==='unknown-edited')){if(timing.saveAttempt&&timing.saveSuccess===undefined&&timing.saveFailure===undefined){data.type='abandonMidsave';}else if(timing.init&&timing.ready===undefined){data.type='preinit';}else if(data.type==='unknown'){data.type='nochange';}else{data.type='abandon';}}if(data.action==='init'||data.action==='abort'||data.action==='saveFailure'){data[actionPrefix+'_type']=data.type;}if(data.action==='init'||data.action==='abort'){data[actionPrefix+'_mechanism']=data.mechanism;}let duration=0;if(data.action!=='init'){duration=Math.round(computeDuration(data.action,data,timeStamp));data[actionPrefix+'_timing']=isNaN(duration)?-1:duration;}if(data.action==='saveFailure'){data[actionPrefix+'_message']=data.message;}delete data.type;delete data.mechanism;delete data.timing;delete data.message;\\ndata.is_oversample=!inSample(easSampleRate);if(data.action==='abort'&&data.abort_type!=='switchnochange'){timing={};}else{timing[data.action]=timeStamp;}if(data.abort_type==='switchnochange'){return;}if(timing.abort){if(data.action==='ready'){return;}if(data.action==='loaded'){delete timing.abort;return;}}addABTestData(data,true);data=Object.assign({},webCommon(),session,data);if(trackdebug){log(topic+'.'+data.action,duration+'ms',data,schemaEditAttemptStep.defaults);}else{schemaEditAttemptStep.log(data,easOversample?1:easSampleRate);}}const schemaVisualEditorFeatureUse=new mw.eventLog.Schema('VisualEditorFeatureUse',0,{user_id:mw.user.getId(),user_is_temp:mw.user.isTemp(),user_editcount:mw.config.get('wgUserEditCount',0)});function visualEditorFeatureUseHandler(topic,data){const event=Object.assign({},webCommon(),{feature:data.feature,action:data.action,editor_interface:data.editor_interface||session.editor_interface,integration:data.integration||session.integration,platform:data.platform||session.platform,\\neditingSessionId:session.editing_session_id,is_oversample:!inSample(vefuSampleRate)});addABTestData(event);if(trackdebug){log(topic,event,schemaVisualEditorFeatureUse.defaults);}else{schemaVisualEditorFeatureUse.log(event,vefuOversample?1:vefuSampleRate);}if(data.feature==='editor-switch'){const editorSwitchMap={'visual-desktop':'visualeditor','source-nwe-desktop':'wikitext-2017','source-desktop':'wikitext','visual-mobile':'visualeditor','source-mobile':'wikitext'};const changedEditorInterface=editorSwitchMap[data.action];if(changedEditorInterface){session.editor_interface=changedEditorInterface;}}}mw.trackSubscribe('editAttemptStep',editAttemptStepHandler);\\n},\\\"mobileSectionSwitch.js\\\":function(require,module,exports){const editingSessionService=require('./editingSessionService.js');const EXPERIMENT_NAME='fy25-26-we-1-1-19-mobile-section-dead-end-phase-2';const SCHEMA_NAME='/analytics/product_metrics/web/base/1.5.0';const STREAM_NAME='mediawiki.product_metrics.contributors.experiments';const experimentPromise=mw.loader.using('ext.testKitchen').then(()=>{const experiment=mw.testKitchen.getExperiment(EXPERIMENT_NAME);experiment.setSchema(SCHEMA_NAME);experiment.setStream(STREAM_NAME);return experiment;}).catch((error)=>{mw.log('Error loading ext.testKitchen module:',error);return null;});experimentPromise.then((experiment)=>{if(!(experiment&&experiment.isAssignedGroup('control','treatment'))){return;}const config=mw.config.get('wgVisualEditorConfig')||{};config.enableSectionEditingFullPageButtons=experiment.isAssignedGroup('treatment');});mw.hook('ve.newTarget').add((target)=>{if(target.constructor.static.trackingName!=='mobile'){return;}experimentPromise.then((exp)=>{if(!(exp&&exp.isAssignedGroup('control','treatment'))){\\nreturn;}const send=(action,data)=>{data.funnel_entry_token=editingSessionService.getEditingSessionId(null,true);data.action_context=data.action_context||{};data.action_context.interface=target.getDefaultMode()==='source'?'wikitext-2017':'visualeditor';data.action_context=JSON.stringify(data.action_context);exp.send(action,data);};const timings={init:mw.now()};send('init',{action_subtype:target.section!==null?'section':'page',page:{namespace_id:mw.config.get('wgNamespaceNumber')}});target.once('surfaceReady',()=>{timings.ready=mw.now();send('ready',{action_subtype:target.section!==null?'section':'page',action_context:{timing_ms:timings.ready-timings.init}});});target.on('surfaceReady',()=>{target.surface.getModel().getDocument().once('transact',()=>{timings.firstChange=mw.now();send('firstChange',{action_context:{timing_ms:timings.firstChange-timings.ready}});});});target.once('save',(data)=>{send('edit_saved',{page:{namespace_id:mw.config.get('wgNamespaceNumber'),revision_id:data.newrevid\\n}});});if(target.section){let sectionLabel=target.section==='new'?'new':'middle';const section=Number(target.section);if(section===0){sectionLabel='lead';}else if(section===target.$editableContent.find('.mw-editsection').length){sectionLabel='last';}target.switchToFullPageButtonTop.on('click',()=>{send('section_switch',{action_subtype:sectionLabel+'-top'});});target.switchToFullPageButtonBottom.on('click',()=>{send('section_switch',{action_subtype:sectionLabel+'-bottom'});});}});});\\n},\\\"hCaptcha.js\\\":function(require,module,exports){const editingSessionService=require('./editingSessionService.js');function setupInstrumentation(){const editingInterfaces={edit:'wikitext',visualeditor:'visualeditor'};mw.trackSubscribe('confirmEdit.hCaptchaRenderCallback',(_,event,interfaceName,error)=>{if(Object.keys(editingInterfaces).includes(interfaceName)){if(event==='open'){mw.track('editAttemptStep',{action:'saveFailure',message:'hcaptcha',type:'captchaExtension',editor_interface:editingInterfaces[interfaceName]});const textArea=document.querySelector('textarea[name=\\\"wpTextbox1\\\"]');let revisionId=mw.config.get('wgRevisionId',0);if(revisionId===0){revisionId=mw.config.get('wgCurRevisionId',0);}(new mw.Api()).post({formatversion:2,action:'wikimediaeventshcaptchaeditattempt',proposed_content:textArea?textArea.value:null,title:mw.config.get('wgPageName'),revision_id:revisionId,editing_session_id:editingSessionService.getEditingSessionId()});}mw.track('visualEditorFeatureUse',{feature:'hcaptcha',action:event});if(error){mw.track('visualEditorFeatureUse',{\\nfeature:'hcaptcha_error',action:error});}}});mw.trackSubscribe('stats.mediawiki_confirmedit_hcaptcha_execute_total',(_,count,data)=>{if(Object.keys(editingInterfaces).includes(data.interfaceName)){mw.track('visualEditorFeatureUse',{feature:'hcaptcha',action:'execute',editor_interface:editingInterfaces[data.interfaceName]});}});mw.trackSubscribe('editAttemptStep',(_,data)=>{if(!['zhwiki','jawiki'].includes(mw.config.get('wgDBname'))){return;}if(!data||data.action!=='loaded'){return;}mw.loader.using(['ext.testKitchen']).then(()=>{const experiment=mw.testKitchen.getExperiment('fy25-26-we-4-2-hcaptcha-editing');mw.track('visualEditorFeatureUse',{feature:'T410354_hcaptcha_edit_ab_test',action:experiment.isAssignedGroup('control','control-2')?'FancyCaptcha':'hCaptcha'});});});}module.exports=setupInstrumentation;\\n},\\\"loggedOutWarning.js\\\":function(require,module,exports){const EXPERIMENT_NAME='growthexperiments-editattempt-anonwarning';const STREAM_NAME='mediawiki.product_metrics.contributors.experiments';const CLOSE_BUTTON_SELECTOR_VISUAL_MODE='.ve-ui-toolbar-group-back > .oo-ui-toolGroup-tools > * > a';const CLOSE_BUTTON_SELECTOR_SOURCE_MODE='.overlay-header.header.initial-header > ul > li > button.cancel';const CTR_TARGET_ELEMENTS=[{selector:'.actions > a.signup',friendlyName:'Sign up'},{selector:'.actions > a.login',friendlyName:'Log in'},{selector:'.actions > a.anonymous',friendlyName:'Anon editing'},{selector:'.anon-msg > * > a, .anon-msg > a',friendlyName:'Temp account info'},{selector:CLOSE_BUTTON_SELECTOR_VISUAL_MODE+', '+CLOSE_BUTTON_SELECTOR_SOURCE_MODE,friendlyName:'Close button'}];function setupLoggedOutWarningInstrumentation(){let exposureLogged=false;let lastEditorUsed=null;const setupCTRs=(experiment)=>{const{ClickThroughRateInstrument}=require('ext.wikimediaEvents.testKitchen');CTR_TARGET_ELEMENTS.forEach((targetElement)=>{const{selector,friendlyName,element}=targetElement;\\nif(exposureLogged){ClickThroughRateInstrument.stop(element);}targetElement.element=ClickThroughRateInstrument.start(selector,friendlyName,experiment);});};const submitExposureInteraction=(exp)=>{if(!exposureLogged){exp.sendExposure();exposureLogged=true;}};if(mw.config.get('wgMFMode')===null){return;}const experimentPromise=mw.loader.using(['ext.testKitchen','ext.wikimediaEvents.testKitchen']).then(()=>{const experiment=mw.testKitchen.getExperiment(EXPERIMENT_NAME);experiment.setStream(STREAM_NAME);return experiment;}).catch((error)=>{mw.log('Error loading ext.testKitchen module:',error);return null;});experimentPromise.then((exp)=>{const setupVisualEditorInstrumentation=(target)=>{if(target.constructor.static.trackingName!=='mobile'){return;}target.overlay.once('editor-loaded',()=>{if(!mw.user.isAnon()){return;}if(!document.querySelector('.anonwarning-soft,.anonwarning')){mw.errorLogger.logError(new Error('Unexpected missing anon warning on visualeditor visual mode load'));return;}\\nsetupCTRs(exp);submitExposureInteraction(exp);});};if(!(exp&&exp.isAssignedGroup('control','treatment'))){return;}mw.hook('mobileFrontend.editorClosed').add((isSwitching)=>{mw.hook('ve.newTarget').remove(setupVisualEditorInstrumentation);if(isSwitching){return;}lastEditorUsed=null;});mw.hook('mobileFrontend.editorOpened').add((editor)=>{if(lastEditorUsed&&lastEditorUsed!==editor){return;}if(editor==='visualeditor'){mw.hook('ve.newTarget').add(setupVisualEditorInstrumentation);}if(editor==='wikitext'){if(!mw.user.isAnon()){return;}if(!document.querySelector('.anonwarning-soft,.anonwarning')){mw.errorLogger.logError(new Error('Unexpected missing anon warning on visualeditor source mode load'));return;}setupCTRs(exp);submitExposureInteraction(exp);}lastEditorUsed=editor;});});}module.exports=exports=setupLoggedOutWarningInstrumentation;\\n},\\\"editSaves.js\\\":function(require,module,exports){const{EXPERIMENTS}=require('./accountCreation/experiments.js');const STREAM_NAME='mediawiki.product_metrics.contributors.experiments';function submitEditInteraction(configuredExperiments,newRevId){configuredExperiments.forEach((experiment)=>{experiment.send('edit_saved',{page:{namespace_id:mw.config.get('wgNamespaceNumber'),revision_id:newRevId}});});}mw.loader.using(['ext.testKitchen','ext.wikimediaEvents.testKitchen']).then(()=>{if(!mw.config.get('wgMFMode')){return;}const configuredExperiments=EXPERIMENTS.map((experimentName)=>{const experiment=mw.testKitchen.getExperiment(experimentName);experiment.setStream(STREAM_NAME);return experiment;});mw.hook('mobileFrontend.sourceEditor.saveComplete').add((newRevId)=>submitEditInteraction(configuredExperiments,newRevId));mw.hook('ve.newTarget').add((target)=>{target.once('save',(data)=>submitEditInteraction(configuredExperiments,data.newrevid));});});\\n},\\\"externalLinks.js\\\":function(require,module,exports){const config=require('./config.json');function getTrackingPrefix(host){host='.'+host;for(const prefix of config.WikimediaEventsExternalLinkTrackedDomains){if(host.endsWith('.'+prefix)){return prefix;}}return null;}function setupInstrumentation(){if(mw.config.get('wgUserId')||!config.WikimediaEventsExternalLinkInstrumentation||!config.WMEStatsBeaconUri){return;}const $links=$('.mw-parser-output a.external');$links.on('mousedown',function(){if(!this.host){return;}const trackingPrefix=getTrackingPrefix(this.host);if(trackingPrefix===null){return;}const domain=trackingPrefix.replace(/\\\\./g,'_');const wiki=mw.config.get('wgDBname');const serializedData=`mediawiki_WikimediaEvents_extLinkClick_total:1|c%7C%23wiki:${wiki},domain:`+domain;mw.eventLog.sendBeacon(config.WMEStatsBeaconUri+'?'+serializedData);});}module.exports=setupInstrumentation;\\n},\\\"config.json\\\":{\\\"WMEClientErrorIntakeURL\\\":false,\\\"WMEStatsdBaseUri\\\":\\\"/beacon/statsv\\\",\\\"WMEStatsBeaconUri\\\":\\\"/beacon/statsv\\\",\\\"WMEWikidataCompletionSearchClicks\\\":[],\\\"WMESessionTick\\\":true,\\\"WMEReadingDepthSamplingRate\\\":0.01,\\\"WMENewPHPSamplingRate\\\":0,\\\"WMENewPHPVersion\\\":\\\"\\\",\\\"WMESchemaEditAttemptStepSamplingRate\\\":1,\\\"WMESchemaVisualEditorFeatureUseSamplingRate\\\":1,\\\"DTSchemaEditAttemptStepSamplingRate\\\":0,\\\"DTSchemaEditAttemptStepOversample\\\":true,\\\"MFSchemaEditAttemptStepOversample\\\":\\\"visualeditor\\\",\\\"WikimediaEventsExternalLinkInstrumentation\\\":false,\\\"WikimediaEventsExternalLinkTrackedDomains\\\":[\\\"archive.org\\\",\\\"toolforge.org\\\",\\\"google.com\\\",\\\"doi.org\\\",\\\"viaf.org\\\",\\\"nih.gov\\\",\\\"loc.gov\\\",\\\"bnf.fr\\\",\\\"d-nb.info\\\",\\\"wmflabs.org\\\",\\\"isni.org\\\",\\\"worldcat.org\\\",\\\"youtube.com\\\",\\\"insee.fr\\\",\\\"minorplanetcenter.net\\\",\\\"nasa.gov\\\",\\\"nli.org.il\\\",\\\"imdb.com\\\",\\\"openstreetmap.org\\\",\\\"jstor.org\\\",\\\"google.co.jp\\\",\\\"idref.fr\\\",\\\"gbif.org\\\",\\\"nytimes.com\\\",\\\"bbc.co.uk\\\",\\\"gouv.fr\\\",\\\"harvard.edu\\\",\\\"ndl.go.jp\\\",\\\"musicbrainz.org\\\",\\\"newspapers.com\\\",\\\"billboard.com\\\",\\\"nii.ac.jp\\\",\\n\\\"semanticscholar.org\\\",\\\"nkp.cz\\\",\\\"oclc.org\\\",\\\"gnd.network\\\",\\\"catalogueoflife.org\\\",\\\"lmu.de\\\",\\\"bsz-bw.de\\\",\\\"lobid.org\\\",\\\"yandex.ru\\\",\\\"census.gov\\\",\\\"bibliotheken.nl\\\",\\\"eol.org\\\",\\\"inaturalist.org\\\",\\\"theguardian.com\\\",\\\"discogs.com\\\",\\\"allmusic.com\\\",\\\"nla.gov.au\\\",\\\"yale.edu\\\",\\\"britannica.com\\\",\\\"webcitation.org\\\",\\\"archive.today\\\",\\\"itis.gov\\\",\\\"deutsche-biographie.de\\\",\\\"bne.es\\\",\\\"irmng.org\\\",\\\"gov.pl\\\",\\\"opentreeoflife.org\\\",\\\"soccerway.com\\\",\\\"issn.org\\\",\\\"iucnredlist.org\\\",\\\"bn.org.pl\\\",\\\"uefa.com\\\",\\\"olympedia.org\\\",\\\"sbn.it\\\",\\\"nps.gov\\\",\\\"geneontology.org\\\",\\\"facebook.com\\\",\\\"x.com\\\",\\\"openlibrary.org\\\",\\\"bbc.com\\\",\\\"twitter.com\\\",\\\"bibsys.no\\\",\\\"nationalmap.gov\\\",\\\"google.de\\\",\\\"treccani.it\\\",\\\"marinespecies.org\\\",\\\"ipni.org\\\",\\\"allmovie.com\\\",\\\"classinform.ru\\\",\\\"iabotmemento.invalid\\\",\\\"nukat.edu.pl\\\",\\\"biolib.cz\\\",\\\"instagram.com\\\",\\\"variety.com\\\",\\\"espncricinfo.com\\\",\\\"deadline.com\\\",\\\"rottentomatoes.com\\\",\\\"europa.eu\\\",\\\"espn.com\\\",\\\"tropicos.org\\\",\\\"sports-reference.com\\\",\\\"jst.go.jp\\\",\\\"olympics.com\\\",\\\"archive.is\\\",\\\"arxiv.org\\\",\\\"jpsearch.go.jp\\\",\\\"dlib.jp\\\",\\\"baseball-reference.com\\\",\\n\\\"animenewsnetwork.com\\\",\\\"globo.com\\\",\\\"natalie.mu\\\",\\\"nba.com\\\",\\\"national-football-teams.com\\\",\\\"wikiwix.com\\\",\\\"snaccooperative.org\\\",\\\"kew.org\\\",\\\"getty.edu\\\",\\\"officialcharts.com\\\",\\\"washingtonpost.com\\\",\\\"deutsche-digitale-bibliothek.de\\\",\\\"reuters.com\\\",\\\"google.fr\\\",\\\"capes.gov.br\\\",\\\"historicengland.org.uk\\\",\\\"latimes.com\\\",\\\"metacritic.com\\\",\\\"pro-football-reference.com\\\",\\\"gks.ru\\\",\\\"worldfootball.net\\\",\\\"ine.es\\\",\\\"boldsystems.org\\\",\\\"hollywoodreporter.com\\\",\\\"biodiversitylibrary.org\\\",\\\"allocine.fr\\\",\\\"boxofficemojo.com\\\",\\\"apple.com\\\",\\\"footballdatabase.eu\\\",\\\"basketball-reference.com\\\",\\\"indiatimes.com\\\",\\\"cnn.com\\\",\\\"dnb.de\\\",\\\"lemonde.fr\\\",\\\"telegraph.co.uk\\\",\\\"handle.net\\\",\\\"nhl.com\\\",\\\"bnc.cat\\\",\\\"oricon.co.jp\\\",\\\"usgs.gov\\\",\\\"pwn.pl\\\",\\\"theplantlist.org\\\",\\\"fifa.com\\\",\\\"zdb-katalog.de\\\",\\\"kopkatalogs.lv\\\",\\\"weltfussball.de\\\",\\\"independent.co.uk\\\",\\\"transfermarkt.com\\\",\\\"scorebar.com\\\",\\\"worldathletics.org\\\",\\\"thegazette.co.uk\\\",\\\"efloras.org\\\",\\\"zap2it.com\\\",\\\"catholic-hierarchy.org\\\",\\\"creativecommons.org\\\",\\\"worldfloraonline.org\\\",\\\"googleusercontent.com\\\",\\\"researchgate.net\\\",\\n\\\"ebi.ac.uk\\\",\\\"enciclopedia.cat\\\",\\\"soccerbase.com\\\",\\\"kbr.be\\\",\\\"rollingstone.com\\\",\\\"kb.se\\\",\\\"animaldiversity.org\\\",\\\"ars-grin.gov\\\",\\\"google.it\\\",\\\"transfermarkt.it\\\",\\\"kicker.de\\\",\\\"spiegel.de\\\",\\\"mlb.com\\\",\\\"biodiversity.org.au\\\",\\\"gamespot.com\\\",\\\"persee.fr\\\",\\\"filmaffinity.com\\\",\\\"findagrave.com\\\",\\\"elpais.com\\\",\\\"nl.go.kr\\\",\\\"nhm.ac.uk\\\",\\\"ultratop.be\\\",\\\"academia.edu\\\",\\\"u-strasbg.fr\\\",\\\"uol.com.br\\\",\\\"usatoday.com\\\",\\\"rkd.nl\\\",\\\"eu-football.info\\\",\\\"ign.com\\\",\\\"snl.no\\\",\\\"hls-dhs-dss.ch\\\",\\\"nfl.com\\\",\\\"legislation.gov.uk\\\",\\\"cbc.ca\\\",\\\"procyclingstats.com\\\",\\\"rsssf.org\\\",\\\"ghostarchive.org\\\",\\\"afi.com\\\",\\\"forbes.com\\\",\\\"naver.com\\\",\\\"lequipe.fr\\\",\\\"fis-ski.com\\\",\\\"wikisky.org\\\",\\\"abc.net.au\\\",\\\"cancer.gov\\\",\\\"citypopulation.de\\\",\\\"fiba.basketball\\\",\\\"sachsen.de\\\",\\\"fbref.com\\\",\\\"proquest.com\\\",\\\"mementoweb.org\\\",\\\"themoviedb.org\\\",\\\"itftennis.com\\\",\\\"cas.org\\\",\\\"unesco.org\\\",\\\"geonames.org\\\",\\\"vatlib.it\\\",\\\"lingvarium.org\\\",\\\"thehindu.com\\\",\\\"worldradiohistory.com\\\",\\\"noaa.gov\\\",\\\"yahoo.com\\\",\\\"google.ru\\\",\\\"icm.edu.pl\\\",\\\"google.es\\\",\\\"ew.com\\\",\\\"nikkansports.com\\\",\\\"filmweb.pl\\\",\\\"apnews.com\\\",\\\"rsssf.com\\\",\\n\\\"iaaf.org\\\",\\\"niedersachsen.de\\\",\\\"cricketarchive.com\\\",\\\"transfermarkt.fr\\\",\\\"sciencedirect.com\\\",\\\"amazon.com\\\",\\\"npr.org\\\",\\\"filmportal.de\\\",\\\"warheroes.ru\\\",\\\"paleobiodb.org\\\",\\\"rcsb.org\\\",\\\"bloomberg.com\\\",\\\"deepl.com\\\",\\\"time.com\\\",\\\"ofdb.de\\\",\\\"europeana.eu\\\",\\\"bdfutbol.com\\\",\\\"wwe.com\\\",\\\"pitchfork.com\\\",\\\"csfd.cz\\\",\\\"worldpostalcodes.org\\\",\\\"nsk.hr\\\",\\\"nme.com\\\",\\\"lefigaro.fr\\\",\\\"hathitrust.org\\\",\\\"universalis.fr\\\",\\\"archive.ph\\\",\\\"fivb.org\\\",\\\"aljazeera.com\\\",\\\"showbuzzdaily.com\\\",\\\"oxforddnb.com\\\",\\\"ehess.fr\\\",\\\"atptour.com\\\",\\\"smh.com.au\\\",\\\"observation.org\\\",\\\"offiziellecharts.de\\\",\\\"eliteprospects.com\\\",\\\"ams.org\\\",\\\"wsj.com\\\",\\\"congress.gov\\\",\\\"gcatholic.org\\\",\\\"bsc-eoc.org\\\",\\\"sina.com.cn\\\",\\\"amar.org.ir\\\",\\\"ibdb.com\\\",\\\"nlg.gr\\\",\\\"bing.com\\\",\\\"eppo.int\\\",\\\"ameblo.jp\\\",\\\"mnhn.fr\\\",\\\"riaa.com\\\",\\\"britishnewspaperarchive.co.uk\\\",\\\"archives.gov\\\",\\\"mtv.com\\\",\\\"go.com\\\",\\\"wiley.com\\\",\\\"boe.es\\\",\\\"ibge.gov.br\\\",\\\"caltech.edu\\\",\\\"rosstat.gov.ru\\\",\\\"xeno-canto.org\\\",\\\"fishbase.org\\\",\\\"sapere.it\\\",\\\"as.com\\\",\\\"rada.gov.ua\\\",\\\"gaonchart.co.kr\\\",\\\"springer.com\\\",\\\"nikkei.com\\\",\\\"nbnatlas.org\\\",\\\"iihf.com\\\",\\n\\\"stolaf.edu\\\",\\\"fcc.gov\\\",\\\"cbsnews.com\\\",\\\"people.com\\\",\\\"fishbase.ca\\\",\\\"asahi.com\\\",\\\"tufts.edu\\\",\\\"digitale-sammlungen.de\\\",\\\"austriancharts.at\\\",\\\"bnportugal.gov.pt\\\",\\\"nature.com\\\",\\\"coe.int\\\",\\\"mymovies.it\\\",\\\"fauna-eu.org\\\",\\\"chemspider.com\\\",\\\"allcinema.net\\\",\\\"aviation-safety.net\\\",\\\"dutchcharts.nl\\\",\\\"scopus.com\\\",\\\"transfermarkt.de\\\",\\\"sponichi.co.jp\\\",\\\"gutenberg.org\\\",\\\"wtatennis.com\\\",\\\"nmbe.ch\\\",\\\"vioe.be\\\",\\\"protectedplanet.net\\\",\\\"github.com\\\",\\\"meteofrance.com\\\",\\\"uniprot.org\\\",\\\"eu-nomen.eu\\\",\\\"kotobank.jp\\\",\\\"nhk.or.jp\\\",\\\"mobygames.com\\\",\\\"seds.org\\\",\\\"orcid.org\\\",\\\"natlib.govt.nz\\\",\\\"ne.se\\\",\\\"historicenvironment.scot\\\",\\\"nbcnews.com\\\",\\\"obis.org\\\",\\\"spotify.com\\\",\\\"irishtimes.com\\\",\\\"eaufrance.fr\\\",\\\"gesetze-im-internet.de\\\",\\\"vatican.va\\\",\\\"hockeydb.com\\\",\\\"usda.gov\\\",\\\"nzor.org.nz\\\",\\\"kinopoisk.ru\\\",\\\"thefutoncritic.com\\\",\\\"oadoi.org\\\",\\\"cntd.ru\\\",\\\"insecta.pro\\\",\\\"munzinger.de\\\",\\\"jreast.co.jp\\\",\\\"genius.com\\\",\\\"racingpost.com\\\",\\\"indianexpress.com\\\",\\\"ouest-france.fr\\\",\\\"chicagotribune.com\\\",\\\"legaseriea.it\\\",\\\"goal.com\\\",\\\"amazon.co.jp\\\",\\\"e-stat.go.jp\\\",\\\"realgm.com\\\",\\n\\\"mlssoccer.com\\\",\\\"rism.online\\\",\\\"natureserve.org\\\",\\\"enciklopedija.hr\\\",\\\"bpi.co.uk\\\",\\\"isfdb.org\\\",\\\"unicode.org\\\",\\\"deadurl.invalid\\\",\\\"stuff.co.nz\\\",\\\"cagematch.net\\\",\\\"flickr.com\\\",\\\"nga.mil\\\",\\\"hitparade.ch\\\",\\\"mathgenealogy.org\\\",\\\"iabotdeadurl.invalid\\\",\\\"muzhp.pl\\\",\\\"dw.com\\\",\\\"rcin.org.pl\\\",\\\"leparisien.fr\\\",\\\"huffingtonpost.com\\\",\\\"tandfonline.com\\\",\\\"90minut.pl\\\",\\\"issuu.com\\\",\\\"billboard-japan.com\\\",\\\"transfermarkt.pl\\\",\\\"kommersant.ru\\\",\\\"ft.com\\\",\\\"ebird.org\\\",\\\"racing-reference.info\\\",\\\"boxrec.com\\\",\\\"google.com.br\\\",\\\"bayern.de\\\",\\\"onb.ac.at\\\",\\\"elmundo.es\\\",\\\"blabbermouth.net\\\",\\\"marca.com\\\",\\\"cyclingnews.com\\\",\\\"uboat.net\\\",\\\"bugguide.net\\\",\\\"skysports.com\\\",\\\"consultant.ru\\\",\\\"synchronkartei.de\\\"]},\\\"data.json\\\":{\\\"webUIScrollTrackingSamplingRate\\\":1,\\\"webUIScrollTrackingSamplingRateAnons\\\":0.1,\\\"webUIScrollTrackingTimeToWaitBeforeScrollUp\\\":5000},\\\"testKitchen/impactTest.js\\\":function(require,module,exports){const EXPERIMENT_NAME='synth-aa-test-traffic-impact-';const EXPERIMENT_NAME_1=EXPERIMENT_NAME+'1';const EXPERIMENT_NAME_2=EXPERIMENT_NAME+'2';const EXPERIMENT_NAME_3=EXPERIMENT_NAME+'3';const INSTRUMENT_NAME='PageVisit';mw.loader.using('ext.testKitchen').then(()=>{[EXPERIMENT_NAME_1,EXPERIMENT_NAME_2,EXPERIMENT_NAME_3].forEach((experimentName)=>{mw.testKitchen.getExperiment(experimentName).send('page-visited',{instrument_name:INSTRUMENT_NAME});});});\\n},\\\"testKitchen/pageVisitBotDetection.js\\\":function(require,module,exports){const INSTRUMENT_NAME='bot-detection-2026-03';const SCHEMA_ID='/analytics/product_metrics/web/base_with_ip/2.0.0';mw.loader.using('ext.testKitchen').then(()=>{const instrument=mw.testKitchen.getInstrument(INSTRUMENT_NAME);instrument.setSchema(SCHEMA_ID);let botScore=0;if(navigator.webdriver===true){botScore|=1;}if(navigator.hardwareConcurrency>70){botScore|=2;}const interactionData={action_context:'bot='+botScore,action_source:cyrb53(location.pathname+location.search,0)};instrument.send('page_load',interactionData);});function cyrb53(str,seed){let h1=0xdeadbeef^seed;let h2=0x41c6ce57^seed;for(let i=0,ch;i<str.length;i++){ch=str.charCodeAt(i);h1=Math.imul(h1^ch,2654435761);h2=Math.imul(h2^ch,1597334677);}h1=Math.imul(h1^(h1>>>16),2246822507);h1^=Math.imul(h2^(h2>>>13),3266489909);h2=Math.imul(h2^(h2>>>16),2246822507);h2^=Math.imul(h1^(h1>>>13),3266489909);return String(4294967296*(2097151&h2)+(h1>>>0));}\\n},\\\"testKitchen/externalPathTest.js\\\":function(require,module,exports){const EXPERIMENT_ID='synth-test-new-external-path';const INSTRUMENT_ID='synth-test-external-path';mw.loader.using('ext.testKitchen').then(()=>{const experiment=mw.testKitchen.getExperiment(EXPERIMENT_ID);const instrument=mw.testKitchen.getInstrument(INSTRUMENT_ID);const timezoneOffset=new Date().getTimezoneOffset();if(experiment.isAssignedGroup('control','treatment')){const actionContextTK={method:'send',tz_offset:timezoneOffset};const sendPageLoadInteraction=()=>{instrument.submitInteraction('page_load',{action_context:JSON.stringify(actionContextTK)});instrument.sendImmediately('page_load',getImmediateInteractionData());};if(document.readyState==='complete'){sendPageLoadInteraction();}else{window.addEventListener('load',sendPageLoadInteraction);}window.addEventListener('pagehide',()=>{instrument.submitInteraction('pagehide',{action_context:JSON.stringify(actionContextTK)});instrument.sendImmediately('pagehide',getImmediateInteractionData());});let count=0;window.addEventListener('visibilitychange',()=>{\\nif(document.hidden&&count<3){count+=1;const actionContext=actionContextTK;actionContext.count=String(count);const interactionData={action_context:JSON.stringify(actionContext)};instrument.submitInteraction('visibilitychange',interactionData);const countContext={action_context:JSON.stringify({count:String(count)})};const immediateInteractionData=getImmediateInteractionData(countContext);instrument.sendImmediately('visibilitychange',immediateInteractionData);}});}});function getImmediateInteractionData(interactionData={}){const timezoneOffset=new Date().getTimezoneOffset();let actionContext={};if(interactionData.action_context){actionContext=JSON.parse(interactionData.action_context);}const mergedActionContext=Object.assign({},actionContext,{method:'sendImmediately',tz_offset:timezoneOffset});return Object.assign({},interactionData,{action_context:JSON.stringify(mergedActionContext)});}\\n},\\\"testKitchen/externalPathTestConfig.json\\\":{\\\"EventLoggingServiceUri\\\":\\\"https://intake-analytics.wikimedia.org/v1/events?hasty=true\\\",\\\"TestKitchenInstrumentEventIntakeServiceUrl\\\":\\\"/ins-502b/v2/events?hasty=true\\\"},\\\"testKitchen/attribution.js\\\":function(require,module,exports){const EXPERIMENT_NAME='attribution-research-short-baseline-run';const DONE='mw-tk-ae-done';const ERASED='mw-tk-ae-erase';const EXPIRE_REMEMBER=604800;const DEPENDENCIES=['mediawiki.storage','ext.testKitchen'];function remember(key){mw.storage.set(key,'1',EXPIRE_REMEMBER);}function was(key){return mw.storage.get(key)==='1';}function main(){if(was(DONE)||was(ERASED)){return;}const exp=mw.testKitchen.getExperiment(EXPERIMENT_NAME);if(!(exp&&exp.isAssignedGroup('control','treatment'))){return;}if(mw.config.get('wgUserId')===null){const interactionData={action_context:document.referrer.slice(0,300)};const contextualAttributes=['mediawiki_database'];exp.send('page_load',interactionData,contextualAttributes);mw.trackSubscribe('editAttemptStep',(_,data)=>{let action=null;if(data&&data.action==='firstChange'){action='edit_first_change_'+data.editor_interface;}if(data&&data.action==='saveAttempt'){action='edit_attempt_'+data.editor_interface;}if(action!==null){exp.send(action,{},contextualAttributes);\\n}});mw.hook('donate.attempt').add((source)=>{exp.send('donate_attempt',{action_source:source},contextualAttributes);});$('a[data-mw-donate-attempt]').on('click',(event)=>{const source=(event&&event.currentTarget&&event.currentTarget.dataset)?event.currentTarget.dataset.mwDonateAttempt:'';exp.send('donate_attempt',{action_source:source},contextualAttributes);});}else{if(mw.config.get('wgTKAccountJustCreated')){const contextualAttributes=['performer_id','performer_is_temp','mediawiki_database'];exp.send('registration',{},contextualAttributes);mw.hook('postEdit').add(()=>{exp.send('edit_successful',{},contextualAttributes);});remember(DONE);}else{exp.send('erase_subject');remember(ERASED);}}}mw.loader.using(DEPENDENCIES).then(()=>main());\\n},\\\"testKitchen/readingListAB.js\\\":function(require,module,exports){const EXPERIMENT_NAME=mw.config.get('wgDBname')==='enwiki'?'we-3-3-4-reading-list-test1-en':'we-3-3-4-reading-list-test1';const STREAM_NAME='mediawiki.product_metrics.reading_list';const ACTION_SAVE='save_article_to_reading_list';const ACTION_REMOVE='remove_article_from_reading_list';const experimentPromise=mw.loader.using('ext.testKitchen').then(()=>{try{const experiment=mw.testKitchen.getExperiment(EXPERIMENT_NAME);experiment.setStream(STREAM_NAME);return experiment;}catch(error){return null;}}).catch((error)=>{mw.log('Error loading ext.testKitchen module:',error);return null;});function trackPageVisit(exp){let actionSource='external_referer';if(document.referrer){const referrerUrl=new URL(document.referrer);const currentUrl=new URL(document.location.href);actionSource=referrerUrl.hostname===currentUrl.hostname?'internal_referer':'external_referer';}exp.send('page_load',{action_source:actionSource});}function trackBookmarkIconButtonClicks($bookmarkButton,exp){$bookmarkButton.on('click',(event)=>{\\nconst isToolbarButton=event.target.closest('#pt-readinglists-2')!==null;exp.send('click',{action_subtype:'view_reading_list',action_source:isToolbarButton?'top_right':'user_menu'});});}function trackNotificationClicks(exp){document.addEventListener('click',(event)=>{const $link=$(event.target).closest('a');if($link.length&&$link.attr('href')&&$link.attr('href').includes('Special:ReadingLists')&&$link.closest('.mw-notification').length){exp.send('click',{action_subtype:'view_reading_list',action_source:'article_saved_popup'});}},true);}function trackReadingListLinkClicks(exp){document.addEventListener('click',(event)=>{const $link=$(event.target).closest('a');const $grid=$link.closest('.reading-lists-grid');if($link.length&&$grid.length){const articleCount=$grid.find('a').length;exp.send('click',{action_subtype:'view_article',action_source:'reading_list',action_context:JSON.stringify({article_count:articleCount})});}});}function recordExperimentEvent(exp,size,subtype,source){exp.send('click',{\\naction_subtype:subtype,action_source:source,action_context:JSON.stringify({article_count:size})});}$(()=>{experimentPromise.then((exp)=>{if(!exp){return;}const experimentGroup=exp.getAssignedGroup();if(experimentGroup!=='control'&&experimentGroup!=='treatment'){return;}const $bookmarkButton=$(document).find('.mw-ui-icon-bookmarkList, .menu__item--readinglists, #pt-readinglists a');trackPageVisit(exp);if(mw.config.get('wgCanonicalSpecialPageName')==='ReadingLists'){trackReadingListLinkClicks(exp);}if($bookmarkButton.length){trackBookmarkIconButtonClicks($bookmarkButton,exp);trackNotificationClicks(exp);}mw.hook('readingLists.bookmark.edit').add((isSaved,entryId,listPageCount,source)=>{const action=isSaved?ACTION_SAVE:ACTION_REMOVE;recordExperimentEvent(exp,listPageCount,action,source);});});});\\n},\\\"testKitchen/loggedOutReaderRetention.js\\\":function(require,module,exports){const EXPERIMENT_NAME_PREFIX='logged-out-retention-';mw.loader.using('ext.testKitchen').then(()=>{mw.testKitchen.getExperimentByPrefix(EXPERIMENT_NAME_PREFIX).send('page-visited',{instrument_name:'LoggedOutReaderRetention'});});\\n},\\\"specialCreateAccount/init.js\\\":function(require,module,exports){const setupInstrumentation=require('./instrumentation.js');if(mw.config.get('wgCanonicalSpecialPageName')==='CreateAccount'){$(setupInstrumentation);}\\n},\\\"specialCreateAccount/instrumentation.js\\\":function(require,module,exports){const instrument=require('./useInstrument.js');function setupInstrumentation(){const submitInteraction=instrument.useInstrument();const contextsByFieldName={wpName:'user_name',wpPassword:'password',retype:'confirm_password',captchaWord:'captcha',email:'email',realname:'real_name',reason:'reason'};const errorPageMessageKey=mw.config.get('wgErrorPageMessageKey');if(errorPageMessageKey){submitInteraction('form_error',{source:'form',context:errorPageMessageKey});}const formReady=Date.now();let interactionStart=null;const $form=$('#userlogin2');const $inputs=$form.find('input');$form.find('a[href=\\\"https://www.hcaptcha.com/privacy\\\"]').on('click',()=>{submitInteraction('click',{source:'form',context:'hcaptcha-privacy-policy'});});$form.find('a[href=\\\"https://www.hcaptcha.com/terms\\\"]').on('click',()=>{submitInteraction('click',{source:'form',context:'hcaptcha-terms-of-use'});});$inputs.on('focus',function(){if(!interactionStart){interactionStart=Date.now();const query=new URLSearchParams(window.location.search);\\nconst timeToInteractionStart=interactionStart-formReady;submitInteraction('view',{source:'form',context:timeToInteractionStart/1000});submitInteraction('click',{source:'form',context:JSON.stringify({return_to:query.get('returnto')||''})});submitInteraction('captcha_class_clientside',{source:'form',context:mw.config.get('wgWikimediaEventsCaptchaClassType')});}const $field=$(this);const fieldName=$field.attr('name');if(contextsByFieldName[fieldName]){const inputInteractionStart=Date.now();$field.one('blur',()=>{const elapsed=Date.now()-inputInteractionStart;submitInteraction('blur',{source:'form',elementId:contextsByFieldName[fieldName],context:elapsed/1000});});}});$inputs.on('change',function(){const fieldName=$(this).attr('name');if(contextsByFieldName[fieldName]){submitInteraction('type',{source:'form',elementId:contextsByFieldName[fieldName]});}});$form.on('submit',()=>{if(interactionStart){submitInteraction('click',{source:'form',subType:'presubmit',context:$form.find('input[name=wpName]').val().trim()\\n});const elapsed=Date.now()-interactionStart;submitInteraction('click',{source:'form',subType:'submit',context:elapsed/1000});}});mw.trackSubscribe('specialCreateAccount.validationErrors',(topic,errorCodes)=>{for(const code of errorCodes){submitInteraction('view',{source:'form',subType:'validation_error',context:code.replace(/-/g,'_')});}});mw.trackSubscribe('specialCreateAccount.performanceTiming',(_,measurementName,durationSeconds)=>{submitInteraction(measurementName,{source:'form',context:durationSeconds});});mw.trackSubscribe('confirmEdit.hCaptchaRenderCallback',(_,event,interfaceName,error)=>{if(interfaceName!=='createaccount'){return;}submitInteraction('hcaptcha_render',{context:event});if(error){submitInteraction('hcaptcha_error',{context:error});}});}module.exports=setupInstrumentation;\\n},\\\"specialCreateAccount/useInstrument.js\\\":function(require,module,exports){'use strict';let instrument;let funnelEntryToken;const useInstrument=()=>{if(!instrument){instrument=mw.eventLog.newInstrument('mediawiki.product_metrics.special_create_account','/analytics/product_metrics/web/base/1.3.0');}return(action,data={})=>{if(!funnelEntryToken){const funnelEntryTokenSessionStorageKey='SpecialCreateAccountFunnelToken-'+mw.user.getId();funnelEntryToken=mw.storage.session.get(funnelEntryTokenSessionStorageKey)||mw.user.generateRandomSessionId();mw.storage.session.set(funnelEntryTokenSessionStorageKey,funnelEntryToken);}const interactionData={funnel_entry_token:funnelEntryToken};if(data.subType){interactionData.action_subtype=data.subType;}if(data.source){interactionData.action_source=data.source;}if(data.elementId){interactionData.element_id=data.elementId;}if(data.context){interactionData.action_context=String(data.context).slice(0,64);}interactionData.funnel_name='create_account';instrument.submitInteraction(action,interactionData);};};module.exports={useInstrument};\\n},\\\"accountCreation.js\\\":function(require,module,exports){const useAccountCreationInstrument=require('./accountCreation/useAccountCreationInstrument.js');const{EXPERIMENTS}=require('./accountCreation/experiments.js');const STREAM_NAME='mediawiki.product_metrics.contributors.experiments';module.exports=function init(){if(!mw.config.get('wgTKAccountJustCreated')){return;}EXPERIMENTS.forEach((expName)=>useAccountCreationInstrument(expName,STREAM_NAME));};\\n},\\\"accountCreation/useAccountCreationInstrument.js\\\":function(require,module,exports){const removeQueryParam=require('./removeQueryParam.js');const useAccountCreationInstrument=(experimentName,streamName=null,schemaId=null)=>{if(!experimentName){throw new Error('Experiment name is required');}return mw.loader.using(['ext.testKitchen']).then(()=>{const experiment=mw.testKitchen.getExperiment(experimentName);if(schemaId){experiment.setSchema(schemaId);}if(streamName){experiment.setStream(streamName);}experiment.send('account_created');removeQueryParam(new URL(window.location.href),'accountJustCreated');return experiment;}).catch((error)=>{mw.log('Error loading ext.testKitchen module:',error);return null;});};module.exports=useAccountCreationInstrument;\\n},\\\"accountCreation/removeQueryParam.js\\\":function(require,module,exports){function removeQueryParam(url,queryParam){let queryParams;if(Array.isArray(queryParam)){queryParams=queryParam;}else{queryParams=[queryParam];}if(!queryParams.length){return;}queryParams.forEach((param)=>{url.searchParams.delete(param);});let newUrl;if(url.searchParams.size===1&&url.searchParams.has('title')){const hash=url.hash;newUrl=mw.util.getUrl((url.searchParams.get('title')+hash));}else{newUrl=url;}history.replaceState(history.state,document.title,newUrl.toString());}module.exports=removeQueryParam;\\n},\\\"accountCreation/experiments.js\\\":function(require,module,exports){const ANON_WARNING_EXPERIMENT_NAME='growthexperiments-editattempt-anonwarning';const CREATE_ACCOUNT_FORM_V1_EXPERIMENT_NAME='we-1-8-account-creation-form-v1';const EXPERIMENTS=[ANON_WARNING_EXPERIMENT_NAME,CREATE_ACCOUNT_FORM_V1_EXPERIMENT_NAME];module.exports={EXPERIMENTS};\\n}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.wikimediaEvents&skin=vector-2022&version=15nyd\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.wikimediaEvents&skin=vector-2022&sourcemap=1&version=15nyd\",\"mediawiki.editfont.styles@l9cd2\":\"mw.loader.impl(function(){return[\\\"mediawiki.editfont.styles@l9cd2\\\",null,{\\\"css\\\":[\\\".mw-editfont-monospace{font-family:monospace,monospace}.mw-editfont-sans-serif{font-family:sans-serif}.mw-editfont-serif{font-family:serif} .mw-editfont-monospace,.mw-editfont-sans-serif,.mw-editfont-serif{font-size:0.8125rem; -moz-tab-size:4;tab-size:4; }.mw-editfont-monospace.oo-ui-textInputWidget,.mw-editfont-sans-serif.oo-ui-textInputWidget,.mw-editfont-serif.oo-ui-textInputWidget{font-size:inherit}.mw-editfont-monospace.oo-ui-textInputWidget \\\\u003E .oo-ui-inputWidget-input,.mw-editfont-sans-serif.oo-ui-textInputWidget \\\\u003E .oo-ui-inputWidget-input,.mw-editfont-serif.oo-ui-textInputWidget \\\\u003E .oo-ui-inputWidget-input{font-size:0.8125rem}.mw-editfont-monospace.oo-ui-textInputWidget \\\\u003E input.oo-ui-inputWidget-input,.mw-editfont-sans-serif.oo-ui-textInputWidget \\\\u003E input.oo-ui-inputWidget-input,.mw-editfont-serif.oo-ui-textInputWidget \\\\u003E input.oo-ui-inputWidget-input{min-height:32px}\\\"]}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.editfont.styles&skin=vector-2022&version=3irfo\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.editfont.styles&skin=vector-2022&sourcemap=1&version=3irfo\",\"oojs-ui-windows.icons@2x4gq\":\"mw.loader.impl(function(){return[\\\"oojs-ui-windows.icons@2x4gq\\\",null,{\\\"css\\\":[\\\".oo-ui-icon-previous,.mw-ui-icon-previous:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E previous %3C/title%3E%3Cpath d=%22m4 10 9 9 1.4-1.5L7 10l7.4-7.5L13 1z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-previous,.mw-ui-icon-previous-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E previous %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22m4 10 9 9 1.4-1.5L7 10l7.4-7.5L13 1z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-previous,.mw-ui-icon-previous-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E previous %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22m4 10 9 9 1.4-1.5L7 10l7.4-7.5L13 1z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}\\\"]}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs-ui-windows.icons&skin=vector-2022&version=11zs7\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs-ui-windows.icons&skin=vector-2022&sourcemap=1&version=11zs7\",\"skins.vector.icons.js@lh003\":\"mw.loader.impl(function(){return[\\\"skins.vector.icons.js@lh003\\\",null,{\\\"css\\\":[\\\".vector-icon.mw-ui-icon-wikimedia-appearance{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=appearance\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=appearance\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-appearance-invert{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=appearance\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=appearance\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-appearance-progressive{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=appearance\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=appearance\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-speechBubbleAdd{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=speechBubbleAdd\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=speechBubbleAdd\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-speechBubbleAdd-invert{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=speechBubbleAdd\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=speechBubbleAdd\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-speechBubbleAdd-progressive{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=speechBubbleAdd\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=speechBubbleAdd\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-speechBubbles{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=speechBubbles\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=speechBubbles\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-speechBubbles-invert{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=speechBubbles\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=speechBubbles\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-speechBubbles-progressive{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=speechBubbles\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=speechBubbles\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-article{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=article\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=article\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-article-invert{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=article\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=article\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-article-progressive{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=article\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=article\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-history{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=history\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=history\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-history-invert{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=history\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=history\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-history-progressive{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=history\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=history\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-wikiText{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=wikiText\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=wikiText\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-wikiText-invert{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=wikiText\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=wikiText\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-wikiText-progressive{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=wikiText\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=wikiText\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-edit{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=edit\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=edit\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-edit-invert{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=edit\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=edit\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-edit-progressive{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=edit\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=edit\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-editLock{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=editLock\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=editLock\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-editLock-invert{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=editLock\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=editLock\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-editLock-progressive{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=editLock\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=editLock\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-exitFullscreen{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=exitFullscreen\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=exitFullscreen\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-exitFullscreen-invert{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=exitFullscreen\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=exitFullscreen\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-exitFullscreen-progressive{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=exitFullscreen\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=exitFullscreen\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-fullScreen{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=fullScreen\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=fullScreen\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-fullScreen-invert{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=fullScreen\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=fullScreen\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}.vector-icon.mw-ui-icon-wikimedia-fullScreen-progressive{-webkit-mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=fullScreen\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h);mask-image:url(https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons.js\\\\u0026image=fullScreen\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1co8h)}\\\"]}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=skins.vector.icons.js&skin=vector-2022&version=1co8h\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=skins.vector.icons.js&skin=vector-2022&sourcemap=1&version=1co8h\",\"ext.urlShortener.toolbar@vqtrj\":\"mw.loader.impl(function(){return[\\\"ext.urlShortener.toolbar@vqtrj\\\",function($,jQuery,require,module){(function(){let panelPromise;const $shortenUrlLink=$('#t-urlshortener a, .menu__item--page-actions-overflow-urlshortener');const $qrCodeLink=$('#t-urlshortener-qrcode a, .menu__item--page-actions-overflow-qrcode');$shortenUrlLink.attr('aria-haspopup','dialog');$shortenUrlLink.on('click',(e)=>{e.preventDefault();if(!panelPromise){const linkText=$shortenUrlLink.html();$shortenUrlLink.text(mw.msg('urlshortener-url-input-submitting'));panelPromise=mw.loader.using(['oojs-ui-windows','mediawiki.api','mediawiki.widgets']).then(()=>{const api=new mw.Api();return api.post({action:'shortenurl',url:window.location.href,qrcode:true}).then((response)=>{const data=response.shortenurl;const panel=new OO.ui.PanelLayout({expanded:false});if(data.shorturl){const widget=new mw.widgets.CopyTextLayout({align:'top',label:mw.msg('urlshortener-shortened-url-label'),classes:['ext-urlshortener-result','ext-urlshortener-result-dialog'],copyText:data.shorturl,help:mw.msg('urlshortener-shortened-url-alt'),\\nhelpInline:true,successMessage:mw.msg('urlshortener-copy-success'),failMessage:mw.msg('urlshortener-copy-fail')});const $alt=$('<a>');widget.$help.append(' ',$alt);$alt.attr('href',data.shorturlalt).text(data.shorturlalt);$alt.off('click').on('click',(event)=>{event.preventDefault();widget.textInput.setValue(data.shorturlalt);widget.onButtonClick();widget.textInput.setValue(data.shorturl);$alt[0].focus();});panel.$element.append(widget.$element);panel.copyTextWidget=widget;}if(data.qrcode){$shortenUrlLink.html(linkText);const qrCodeUri=`data:image/svg+xml;charset=utf-8,${encodeURIComponent(data.qrcode)}`;const download=new OO.ui.ButtonWidget({icon:'download',label:mw.msg('urlshortener-toolbox-qrcode'),href:'.'});download.$button.attr({download:'qrcode.svg',href:qrCodeUri});panel.$element.append($('<div>').addClass('ext-urlshortener-qrcode').append($('<img>').attr('src',qrCodeUri),download.$element));}return panel;});});}panelPromise.then((panel)=>{OO.ui.alert(panel.$element,{size:'medium'});\\nif(panel.copyTextWidget){setTimeout(()=>{panel.copyTextWidget.button.focus();},500);}},()=>{$shortenUrlLink.text(mw.msg('urlshortener-failed-try-again'));$shortenUrlLink.off('click').removeAttr('aria-haspopup');});return false;});$qrCodeLink.on('click',(e)=>{e.preventDefault();const updateLabel=(msg)=>{let $link=$qrCodeLink.find('.toggle-list-item__label');$link=$link.length?$link:$qrCodeLink;$link.text(msg);};mw.loader.using('mediawiki.api').then(()=>{updateLabel(mw.msg('urlshortener-url-input-submitting'));const api=new mw.Api();api.post({action:'shortenurl',url:window.location.href,qrcode:true}).then((data)=>{const downloadLink=document.createElement('a');downloadLink.download='qrcode.svg';downloadLink.href='data:image/svg+xml,'+encodeURIComponent(data.shortenurl.qrcode);document.body.appendChild(downloadLink);downloadLink.click();document.body.removeChild(downloadLink);updateLabel(mw.msg('urlshortener-toolbox-qrcode'));mw.notify(mw.msg('urlshortener-qrcode-downloaded'),{type:'success'});\\n},()=>{updateLabel(mw.msg('urlshortener-failed-try-again'));$qrCodeLink.off('click');});});return false;});}());\\n},{\\\"css\\\":[\\\".ext-urlshortener-result-dialog{font-size:0.90909em}.ext-urlshortener-result-dialog a{word-wrap:break-word}.ext-urlshortener-qrcode{text-align:center}.ext-urlshortener-qrcode img{width:320px}\\\"]},{\\\"urlshortener-copy-fail\\\":\\\"Failed to copy URL to clipboard.\\\",\\\"urlshortener-copy-success\\\":\\\"URL copied to clipboard.\\\",\\\"urlshortener-failed-try-again\\\":\\\"Failed. Try again?\\\",\\\"urlshortener-qrcode-downloaded\\\":\\\"QR code downloaded as SVG file\\\",\\\"urlshortener-shortened-url-alt\\\":\\\"You can also use this alternative URL:\\\",\\\"urlshortener-shortened-url-label\\\":\\\"Shortened URL\\\",\\\"urlshortener-toolbox-qrcode\\\":\\\"Download QR code\\\",\\\"urlshortener-url-input-submitting\\\":\\\"Shortening\\\\u2026\\\"}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.urlShortener.toolbar&skin=vector-2022&version=21c0f\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.urlShortener.toolbar&skin=vector-2022&sourcemap=1&version=21c0f\",\"mmv.codex@xyrqh\":\"mw.loader.impl(function(){return[\\\"mmv.codex@xyrqh\\\",null,{\\\"css\\\":[\\\".cdx-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;box-sizing:border-box;min-height:32px;max-width:28rem;margin:0;border-width:1px;border-style:solid;border-radius:2px;padding-right:11px;padding-left:11px;font-family:inherit;font-size:var(--font-size-medium,1rem);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:none;transition-property:background-color,color,border-color,box-shadow;transition-duration:.1s}.cdx-button--size-small{gap:4px;min-height:1.5rem;padding-right:5px;padding-left:5px}.cdx-button--size-large{min-height:44px;padding-right:15px;padding-left:15px}.cdx-button--icon-only{min-width:32px;padding-right:0;padding-left:0}.cdx-button--icon-only.cdx-button--size-small{min-width:1.5rem}.cdx-button--icon-only.cdx-button--size-large{min-width:44px}.cdx-button::-moz-focus-inner{border:0;padding:0}.cdx-button .cdx-button__icon,.cdx-button .cdx-icon{vertical-align:middle}.cdx-button .cdx-icon{color:inherit}.cdx-button--fake-button,.cdx-button--fake-button:hover,.cdx-button--fake-button:focus{text-decoration:none}.cdx-button:enabled,.cdx-button.cdx-button--fake-button--enabled{background-color:var(--background-color-interactive-subtle,#f8f9fa);color:var(--color-neutral,#404244);border-color:var(--border-color-interactive,#72777d)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled .cdx-button__icon{background-color:var(--color-neutral,#404244)}}.cdx-button:enabled:hover,.cdx-button.cdx-button--fake-button--enabled:hover{background-color:var(--background-color-interactive-subtle--hover,#eaecf0);border-color:var(--border-color-interactive--hover,#27292d);cursor:pointer}.cdx-button:enabled:active,.cdx-button.cdx-button--fake-button--enabled:active,.cdx-button:enabled.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--is-active{background-color:var(--background-color-interactive-subtle--active,#dadde3);border-color:var(--border-color-interactive--active,#202122)}.cdx-button:enabled:focus,.cdx-button.cdx-button--fake-button--enabled:focus{outline:1px solid transparent}.cdx-button:enabled:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-progressive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-progressive--focus,#36c)}.cdx-button:enabled.cdx-button--action-progressive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive{background-color:var(--background-color-progressive-subtle,#e8eeff);color:var(--color-progressive,#36c);border-color:var(--border-color-progressive,#6485d1)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-progressive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive .cdx-button__icon{background-color:var(--color-progressive,#36c)}}.cdx-button:enabled.cdx-button--action-progressive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive:hover{background-color:var(--background-color-progressive-subtle--hover,#d9e2ff);color:var(--color-progressive--hover,#3056a9);border-color:var(--border-color-progressive--hover,#3056a9)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-progressive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive:hover .cdx-button__icon{background-color:var(--color-progressive--hover,#3056a9)}}.cdx-button:enabled.cdx-button--action-progressive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive:active,.cdx-button:enabled.cdx-button--action-progressive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive.cdx-button--is-active{background-color:var(--background-color-progressive-subtle--active,#b6d4fb);color:var(--color-progressive--active,#233566);border-color:var(--border-color-progressive--active,#233566)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon{background-color:var(--color-progressive--active,#233566)}}.cdx-button:enabled.cdx-button--action-destructive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive{background-color:var(--background-color-destructive-subtle,#ffe9e5);color:var(--color-destructive,#bf3c2c);border-color:var(--border-color-destructive,#f54739)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-destructive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive .cdx-button__icon{background-color:var(--color-destructive,#bf3c2c)}}.cdx-button:enabled.cdx-button--action-destructive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:hover{background-color:var(--background-color-destructive-subtle--hover,#ffdad3);color:var(--color-destructive--hover,#9f3526);border-color:var(--border-color-destructive--hover,#9f3526)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-destructive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:hover .cdx-button__icon{background-color:var(--color-destructive--hover,#9f3526)}}.cdx-button:enabled.cdx-button--action-destructive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:active,.cdx-button:enabled.cdx-button--action-destructive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive.cdx-button--is-active{background-color:var(--background-color-destructive-subtle--active,#ffc8bd);color:var(--color-destructive--active,#612419);border-color:var(--border-color-destructive--active,#612419)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon{background-color:var(--color-destructive--active,#612419)}}.cdx-button:enabled.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-destructive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-destructive--focus,#36c)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive{background-color:var(--background-color-progressive,#36c);color:var(--color-inverted-fixed,#fff);border-color:var(--border-color-transparent,transparent)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive:hover{background-color:var(--background-color-progressive--hover,#3056a9)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive:active,.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive.cdx-button--is-active{background-color:var(--background-color-progressive--active,#233566)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-progressive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-progressive--focus,#36c),inset 0 0 0 2px var(--box-shadow-color-inverted,#fff)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive .cdx-button__icon{background-color:var(--color-inverted-fixed,#fff)}}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive{background-color:var(--background-color-destructive,#bf3c2c);color:var(--color-inverted-fixed,#fff);border-color:var(--border-color-transparent,transparent)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive:hover{background-color:var(--background-color-destructive--hover,#9f3526)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive:active,.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive.cdx-button--is-active{background-color:var(--background-color-destructive--active,#612419)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-destructive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-destructive--focus,#36c),inset 0 0 0 2px var(--box-shadow-color-inverted,#fff)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive .cdx-button__icon{background-color:var(--color-inverted-fixed,#fff)}}.cdx-button:enabled.cdx-button--weight-quiet,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet{background-color:var(--background-color-transparent,transparent);border-color:var(--border-color-transparent,transparent)}.cdx-button:enabled.cdx-button--weight-quiet:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet:hover{background-color:var(--background-color-interactive-subtle--hover,#eaecf0);mix-blend-mode:var(--mix-blend-mode-blend,multiply)}.cdx-button:enabled.cdx-button--weight-quiet:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet:active,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--is-active{background-color:var(--background-color-interactive-subtle--active,#dadde3)}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive{color:var(--color-progressive,#36c)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive .cdx-button__icon{background-color:var(--color-progressive,#36c)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:hover{background-color:var(--background-color-progressive-subtle--hover,#d9e2ff);color:var(--color-progressive--hover,#3056a9);border-color:var(--border-color-transparent,transparent)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:hover .cdx-button__icon{background-color:var(--color-progressive--hover,#3056a9)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:active,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive.cdx-button--is-active{background-color:var(--background-color-progressive-subtle--active,#b6d4fb);color:var(--color-progressive--active,#233566);border-color:var(--border-color-transparent,transparent)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon{background-color:var(--color-progressive--active,#233566)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-progressive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-progressive--focus,#36c)}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive{color:var(--color-destructive,#bf3c2c)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive .cdx-button__icon{background-color:var(--color-destructive,#bf3c2c)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:hover{background-color:var(--background-color-destructive-subtle--hover,#ffdad3);color:var(--color-destructive--hover,#9f3526);border-color:var(--border-color-transparent,transparent)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:hover .cdx-button__icon{background-color:var(--color-destructive--hover,#9f3526)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:active,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive.cdx-button--is-active{background-color:var(--background-color-destructive-subtle--active,#ffc8bd);color:var(--color-destructive--active,#612419);border-color:var(--border-color-transparent,transparent)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon{background-color:var(--color-destructive--active,#612419)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-destructive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-destructive--focus,#36c)}.cdx-button:disabled,.cdx-button.cdx-button--fake-button--disabled{background-color:var(--background-color-disabled,#dadde3);color:var(--color-disabled-emphasized,#a2a9b1);border-color:var(--border-color-transparent,transparent)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:disabled .cdx-button__icon,.cdx-button.cdx-button--fake-button--disabled .cdx-button__icon{background-color:var(--color-inverted,#fff)}}.cdx-button:disabled.cdx-button--weight-quiet,.cdx-button.cdx-button--fake-button--disabled.cdx-button--weight-quiet{background-color:var(--background-color-transparent,transparent);color:var(--color-disabled,#a2a9b1)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:disabled.cdx-button--weight-quiet .cdx-button__icon,.cdx-button.cdx-button--fake-button--disabled.cdx-button--weight-quiet .cdx-button__icon{background-color:var(--color-disabled,#a2a9b1)}}.cdx-icon{color:var(--color-base,#202122);display:inline-flex;align-items:center;justify-content:center;vertical-align:text-bottom}.cdx-icon svg{fill:currentcolor;width:100%;height:100%}.cdx-icon--x-small{min-width:10px;min-height:10px;width:calc(var(--font-size-medium,1rem) - 4px);height:calc(var(--font-size-medium,1rem) - 4px)}.cdx-icon--small{min-width:14px;min-height:14px;width:var(--font-size-medium,1rem);height:var(--font-size-medium,1rem)}.cdx-icon--medium{min-width:18px;min-height:18px;width:calc(var(--font-size-medium,1rem) + 4px);height:calc(var(--font-size-medium,1rem) + 4px)}.cdx-icon--flipped svg{transform:scaleX(-1)}.cdx-dialog-backdrop{background-color:var(--background-color-backdrop-light,rgba(255,255,255,.65));display:flex;align-items:center;justify-content:center;position:fixed;top:0;left:0;z-index:400;min-height:100%;width:100vw;height:100vh;height:-webkit-fill-available}.cdx-dialog{background-color:var(--background-color-base,#fff);display:flex;flex-direction:column;box-sizing:border-box;width:100%;height:100%}@media (min-width:640px){.cdx-dialog{width:calc(100% - 2rem);height:unset;max-width:32rem;max-height:calc(100vh - 2.5rem);border:1px solid var(--border-color-base,#a2a9b1);border-radius:2px;box-shadow:0 4px 8px 0 var(--box-shadow-color-alpha-base,rgba(0,0,0,.06)),0 0 16px 0 var(--box-shadow-color-alpha-base,rgba(0,0,0,.06))}}.cdx-dialog__header{padding:16px 24px 8px}.cdx-dialog__header--default{display:flex;align-items:baseline;justify-content:flex-end;box-sizing:border-box;width:100%}.cdx-dialog__header__title-group{display:flex;flex-grow:1;flex-direction:column}.cdx-dialog__header .cdx-dialog__header__title{margin:0;border:0;padding:0;font-family:inherit;font-size:var(--font-size-x-large,1.25rem);font-weight:700;line-height:var(--line-height-x-large,1.875rem)}.cdx-dialog__header .cdx-dialog__header__subtitle{color:var(--color-subtle,#54595d);margin:0;padding:0;font-size:var(--font-size-medium,1rem);line-height:var(--line-height-small,1.375rem)}.cdx-dialog__header__close-button.cdx-button{margin-right:-8px}@media (min-width:640px){.cdx-dialog__header--no-close-button .cdx-dialog__header__close-button{display:none}}.cdx-dialog--dividers .cdx-dialog__header{border-bottom:1px solid var(--border-color-subtle,#c8ccd1)}.cdx-dialog__body{padding:8px 24px;overflow-y:auto;font-family:sans-serif;font-size:var(--font-size-medium,1rem);font-weight:400;line-height:var(--line-height-medium,1.625rem)}.cdx-dialog__body--no-footer{padding-bottom:24px}.cdx-dialog__body\\\\u003E*:first-child{margin-top:0;padding-top:0}.cdx-dialog__body\\\\u003E*:last-child{margin-bottom:0;padding-bottom:0}.cdx-dialog__footer{margin-top:auto;padding:16px 24px 24px}.cdx-dialog--dividers .cdx-dialog__footer{border-top:1px solid var(--border-color-subtle,#c8ccd1)}.cdx-dialog__footer--default{display:flex;align-items:baseline;flex-wrap:wrap;justify-content:space-between;gap:12px}.cdx-dialog__footer .cdx-dialog__footer__text{color:var(--color-subtle,#54595d);flex:1 0 auto;width:100%;margin:0;font-size:var(--font-size-small,.875rem);line-height:var(--line-height-small,1.375rem)}.cdx-dialog__footer__actions{display:flex;flex-grow:1;flex-direction:row-reverse;gap:12px}@media (max-width:639px){.cdx-dialog__footer__actions{flex-direction:column;width:100%}.cdx-dialog__footer__actions .cdx-button{max-width:none}}.cdx-dialog--vertical-actions .cdx-dialog__footer__actions{flex-direction:column;width:100%}.cdx-dialog--vertical-actions .cdx-dialog__footer__actions .cdx-button{max-width:none}.cdx-dialog-focus-trap{position:absolute}.cdx-dialog-focus-trap:focus{outline:0}.cdx-dialog-fade-enter-active,.cdx-dialog-fade-leave-active{transition-property:opacity;transition-duration:.25s;transition-timing-function:ease}.cdx-dialog-fade-enter-from,.cdx-dialog-fade-leave-to{opacity:0}body.cdx-dialog-open{overflow:hidden}.cdx-progress-bar{box-sizing:border-box;overflow-x:hidden}.cdx-progress-bar__bar{width:33.33%;height:100%}.cdx-progress-bar:not(.cdx-progress-bar--inline){position:relative;z-index:1;height:1rem;max-width:none;border-radius:9999px;box-shadow:0 0 0 1px var(--box-shadow-color-base,#a2a9b1)}.cdx-progress-bar--inline{width:100%;height:.25rem}.cdx-progress-bar:not(.cdx-progress-bar--disabled) .cdx-progress-bar__bar{background-color:var(--background-color-progressive,#36c);animation-name:cdx-animation-progress-bar__bar;animation-duration:1.6s;animation-timing-function:linear;animation-iteration-count:infinite}.cdx-progress-bar:not(.cdx-progress-bar--disabled).cdx-progress-bar--block{background-color:var(--background-color-base,#fff)}.cdx-progress-bar--disabled .cdx-progress-bar__bar{background-color:var(--background-color-disabled,#dadde3)}.cdx-progress-bar--disabled:not(.cdx-progress-bar--inline){background-color:var(--background-color-disabled-subtle,#eaecf0)}@keyframes cdx-animation-progress-bar__bar{0%{transform:translate(-100%)}to{transform:translate(300%)}}.cdx-thumbnail{display:inline-flex}.cdx-thumbnail__placeholder,.cdx-thumbnail__image{background-position:center;background-repeat:no-repeat;background-size:cover;flex-shrink:0;box-sizing:border-box;min-width:40px;min-height:40px;width:2.5rem;height:2.5rem;border:1px solid var(--border-color-subtle,#c8ccd1);border-radius:2px}.cdx-thumbnail__image{background-color:var(--background-color-base-fixed,#fff);display:inline-block}.cdx-thumbnail__image-enter-active{transition-property:opacity;transition-duration:.1s}.cdx-thumbnail__image-enter-from{opacity:0}.cdx-thumbnail__placeholder{background-color:var(--background-color-interactive-subtle,#f8f9fa);display:inline-flex;align-items:center;justify-content:center}.cdx-thumbnail__placeholder__icon{min-width:10px;min-height:10px;width:calc(var(--font-size-medium,1rem) + 4px);height:calc(var(--font-size-medium,1rem) + 4px);display:inline-block;vertical-align:text-bottom}@supports not (((-webkit-mask-image:none) or (mask-image:none))){.cdx-thumbnail__placeholder__icon{background-position:center;background-repeat:no-repeat;background-size:max(calc(var(--font-size-medium,1rem) + 4px),10px)}}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-thumbnail__placeholder__icon{-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:max(calc(var(--font-size-medium,1rem) + 4px),10px);mask-size:max(calc(var(--font-size-medium,1rem) + 4px),10px)}}@supports not (((-webkit-mask-image:none) or (mask-image:none))){.cdx-thumbnail__placeholder__icon{background-image:url('data:image/svg+xml;utf8,\\\\u003Csvg xmlns=\\\\\\\"http://www.w3.org/2000/svg\\\\\\\" width=\\\\\\\"20\\\\\\\" height=\\\\\\\"20\\\\\\\" viewBox=\\\\\\\"0 0 20 20\\\\\\\" fill=\\\\\\\"%23000\\\\\\\"\\\\u003E\\\\u003Cpath d=\\\\\\\"M19 3H1v14h18zM3 14l3.5-4.5 2.5 3L12.5 8l4.5 6z\\\\\\\"/\\\\u003E\\\\u003Cpath d=\\\\\\\"M19 5H1V3h18zm0 12H1v-2h18z\\\\\\\"/\\\\u003E\\\\u003C/svg\\\\u003E');filter:invert(var(--filter-invert-icon,0));opacity:var(--opacity-icon-base,.87)}}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-thumbnail__placeholder__icon{-webkit-mask-image:url('data:image/svg+xml;utf8,\\\\u003Csvg xmlns=\\\\\\\"http://www.w3.org/2000/svg\\\\\\\" width=\\\\\\\"20\\\\\\\" height=\\\\\\\"20\\\\\\\" viewBox=\\\\\\\"0 0 20 20\\\\\\\" fill=\\\\\\\"%23000\\\\\\\"\\\\u003E\\\\u003Cpath d=\\\\\\\"M19 3H1v14h18zM3 14l3.5-4.5 2.5 3L12.5 8l4.5 6z\\\\\\\"/\\\\u003E\\\\u003Cpath d=\\\\\\\"M19 5H1V3h18zm0 12H1v-2h18z\\\\\\\"/\\\\u003E\\\\u003C/svg\\\\u003E');mask-image:url('data:image/svg+xml;utf8,\\\\u003Csvg xmlns=\\\\\\\"http://www.w3.org/2000/svg\\\\\\\" width=\\\\\\\"20\\\\\\\" height=\\\\\\\"20\\\\\\\" viewBox=\\\\\\\"0 0 20 20\\\\\\\" fill=\\\\\\\"%23000\\\\\\\"\\\\u003E\\\\u003Cpath d=\\\\\\\"M19 3H1v14h18zM3 14l3.5-4.5 2.5 3L12.5 8l4.5 6z\\\\\\\"/\\\\u003E\\\\u003Cpath d=\\\\\\\"M19 5H1V3h18zm0 12H1v-2h18z\\\\\\\"/\\\\u003E\\\\u003C/svg\\\\u003E');background-color:var(--color-placeholder,#72777d)}}.cdx-thumbnail__placeholder__icon--vue.cdx-icon{color:var(--color-placeholder,#72777d)}.cdx-search-result-title{display:inline-block;max-width:100%;font-weight:700}.cdx-search-result-title__match{font-weight:400}.cdx-menu-item{list-style:none;position:relative;padding:8px 12px;font-size:var(--font-size-medium,1rem);line-height:var(--line-height-small,1.375rem);transition-property:background-color,color,border-color,box-shadow;transition-duration:.1s}.cdx-menu-item__content{display:flex;align-items:center;word-wrap:break-word}@supports (word-break:break-word){.cdx-menu-item__content{word-wrap:unset;word-break:break-word}}@supports (overflow-wrap:anywhere){.cdx-menu-item__content{word-break:normal;overflow-wrap:anywhere}}.cdx-menu-item__content:lang(de),.cdx-menu-item__content:lang(de-AT),.cdx-menu-item__content:lang(de-CH),.cdx-menu-item__content:lang(de-DE),.cdx-menu-item__content:lang(de-LI),.cdx-menu-item__content:lang(de-LU),.cdx-menu-item__content:lang(de-x-formal){-webkit-hyphens:auto;hyphens:auto}.cdx-menu-item__content,.cdx-menu-item__content:hover{text-decoration:none}.cdx-menu-item--has-description .cdx-menu-item__content{align-items:flex-start}.cdx-menu-item__text{max-width:100%}.cdx-menu-item__text__description{display:block}.cdx-menu-item__thumbnail.cdx-thumbnail{margin-right:8px}.cdx-menu-item__icon{height:var(--line-height-small,1.375rem);margin-right:8px}.cdx-menu-item__icon.cdx-icon{color:var(--color-subtle,#54595d)}.cdx-menu-item__selected-icon{height:var(--line-height-small,1.375rem);margin-left:auto}.cdx-menu-item__selected-icon.cdx-icon{color:inherit}.cdx-menu-item--bold-label .cdx-menu-item__text__label{font-weight:700}.cdx-menu-item--hide-description-overflow .cdx-menu-item__text{overflow:hidden}.cdx-menu-item--hide-description-overflow .cdx-menu-item__text__description{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cdx-menu-item--enabled,.cdx-menu-item--enabled .cdx-menu-item__content{color:var(--color-base,#202122)}.cdx-menu-item--enabled .cdx-menu-item__text__supporting-text,.cdx-menu-item--enabled .cdx-menu-item__text__description{color:var(--color-subtle,#54595d)}.cdx-menu-item--enabled.cdx-menu-item--highlighted{background-color:var(--background-color-interactive-subtle--hover,#eaecf0);cursor:pointer}.cdx-menu-item--enabled.cdx-menu-item--active{background-color:var(--background-color-interactive-subtle--active,#dadde3)}.cdx-menu-item--enabled.cdx-menu-item--selected{background-color:var(--background-color-progressive-subtle,#e8eeff);color:var(--color-progressive,#36c)}.cdx-menu-item--enabled.cdx-menu-item--selected .cdx-menu-item__content,.cdx-menu-item--enabled.cdx-menu-item--selected .cdx-menu-item__text__supporting-text,.cdx-menu-item--enabled.cdx-menu-item--selected .cdx-menu-item__text__description,.cdx-menu-item--enabled.cdx-menu-item--selected .cdx-menu-item__icon{color:var(--color-progressive,#36c)}.cdx-menu-item--enabled.cdx-menu-item--selected.cdx-menu-item--highlighted{background-color:var(--background-color-progressive-subtle--hover,#d9e2ff)}.cdx-menu-item--enabled.cdx-menu-item--selected.cdx-menu-item--highlighted .cdx-menu-item__content,.cdx-menu-item--enabled.cdx-menu-item--selected.cdx-menu-item--highlighted .cdx-menu-item__text__supporting-text,.cdx-menu-item--enabled.cdx-menu-item--selected.cdx-menu-item--highlighted .cdx-menu-item__text__description,.cdx-menu-item--enabled.cdx-menu-item--selected.cdx-menu-item--highlighted .cdx-menu-item__icon{color:var(--color-progressive--hover,#3056a9)}.cdx-menu-item--enabled.cdx-menu-item--selected.cdx-menu-item--active{background-color:var(--background-color-progressive-subtle--active,#b6d4fb)}.cdx-menu-item--enabled.cdx-menu-item--selected.cdx-menu-item--active .cdx-menu-item__content,.cdx-menu-item--enabled.cdx-menu-item--selected.cdx-menu-item--active .cdx-menu-item__text__supporting-text,.cdx-menu-item--enabled.cdx-menu-item--selected.cdx-menu-item--active .cdx-menu-item__text__description,.cdx-menu-item--enabled.cdx-menu-item--selected.cdx-menu-item--active .cdx-menu-item__icon{color:var(--color-progressive--active,#233566)}.cdx-menu-item--disabled{color:var(--color-disabled,#a2a9b1);cursor:default}.cdx-menu-item--disabled .cdx-menu-item__text__description,.cdx-menu-item--disabled .cdx-menu-item__icon{color:inherit}.cdx-menu-item--destructive .cdx-menu-item__content,.cdx-menu-item--destructive .cdx-menu-item__text__supporting-text,.cdx-menu-item--destructive .cdx-menu-item__text__description,.cdx-menu-item--destructive .cdx-menu-item__icon{color:var(--color-destructive,#bf3c2c)}.cdx-menu-item--destructive.cdx-menu-item--highlighted{background-color:var(--background-color-destructive-subtle--hover,#ffdad3)}.cdx-menu-item--destructive.cdx-menu-item--highlighted .cdx-menu-item__content,.cdx-menu-item--destructive.cdx-menu-item--highlighted .cdx-menu-item__text__supporting-text,.cdx-menu-item--destructive.cdx-menu-item--highlighted .cdx-menu-item__text__description,.cdx-menu-item--destructive.cdx-menu-item--highlighted .cdx-menu-item__icon{color:var(--color-destructive--hover,#9f3526)}.cdx-menu-item--destructive.cdx-menu-item--active{background-color:var(--background-color-destructive-subtle--active,#ffc8bd)}.cdx-menu-item--destructive.cdx-menu-item--active .cdx-menu-item__content,.cdx-menu-item--destructive.cdx-menu-item--active .cdx-menu-item__text__supporting-text,.cdx-menu-item--destructive.cdx-menu-item--active .cdx-menu-item__text__description,.cdx-menu-item--destructive.cdx-menu-item--active .cdx-menu-item__icon{color:var(--color-destructive--active,#612419)}.cdx-menu-item--destructive.cdx-menu-item--selected{background-color:var(--background-color-destructive-subtle,#ffe9e5);color:var(--color-destructive,#bf3c2c)}.cdx-menu-item--destructive.cdx-menu-item--selected .cdx-menu-item__content,.cdx-menu-item--destructive.cdx-menu-item--selected .cdx-menu-item__text__supporting-text,.cdx-menu-item--destructive.cdx-menu-item--selected .cdx-menu-item__text__description,.cdx-menu-item--destructive.cdx-menu-item--selected .cdx-menu-item__icon{color:var(--color-destructive,#bf3c2c)}.cdx-menu-item--destructive.cdx-menu-item--selected.cdx-menu-item--highlighted{background-color:var(--background-color-destructive-subtle--hover,#ffdad3)}.cdx-menu-item--destructive.cdx-menu-item--selected.cdx-menu-item--highlighted .cdx-menu-item__content,.cdx-menu-item--destructive.cdx-menu-item--selected.cdx-menu-item--highlighted .cdx-menu-item__text__supporting-text,.cdx-menu-item--destructive.cdx-menu-item--selected.cdx-menu-item--highlighted .cdx-menu-item__text__description,.cdx-menu-item--destructive.cdx-menu-item--selected.cdx-menu-item--highlighted .cdx-menu-item__icon{color:var(--color-destructive--hover,#9f3526)}.cdx-menu-item--destructive.cdx-menu-item--selected.cdx-menu-item--active{background-color:var(--background-color-destructive-subtle--active,#ffc8bd)}.cdx-menu-item--destructive.cdx-menu-item--selected.cdx-menu-item--active .cdx-menu-item__content,.cdx-menu-item--destructive.cdx-menu-item--selected.cdx-menu-item--active .cdx-menu-item__text__supporting-text,.cdx-menu-item--destructive.cdx-menu-item--selected.cdx-menu-item--active .cdx-menu-item__text__description,.cdx-menu-item--destructive.cdx-menu-item--selected.cdx-menu-item--active .cdx-menu-item__icon{color:var(--color-destructive--active,#612419)}.cdx-menu{background-color:var(--background-color-base,#fff);display:flex;flex-direction:column;position:absolute;left:0;z-index:50;box-sizing:border-box;width:100%;border:1px solid var(--border-color-base,#a2a9b1);border-radius:2px;box-shadow:0 4px 4px 0 var(--box-shadow-color-alpha-base,rgba(0,0,0,.06)),0 0 8px 0 var(--box-shadow-color-alpha-base,rgba(0,0,0,.06));font-size:var(--font-size-medium,1rem);line-height:var(--line-height-small,1.375rem)}.cdx-menu__progress-bar.cdx-progress-bar{position:absolute;top:0}.cdx-menu__listbox,.cdx-menu__group{margin:0;padding:0}.cdx-menu__listbox{overflow-y:auto}.cdx-menu__group{display:flex;flex-direction:column}.cdx-menu__group__meta{display:flex;gap:8px;padding:8px 12px 6px}.cdx-menu__group__meta__text{display:flex;flex-direction:column;font-size:var(--font-size-medium,1rem);line-height:var(--line-height-small,1.375rem)}.cdx-menu__group__icon{height:var(--line-height-small,1.375rem)}.cdx-menu__group__label{font-weight:700}.cdx-menu__group__description{color:var(--color-subtle,#54595d);font-size:var(--font-size-small,.875rem);line-height:var(--line-height-small,1.375rem)}.cdx-menu__group-wrapper--hide-label .cdx-menu__group__meta{display:block;clip:rect(1px,1px,1px,1px);position:absolute!important;width:1px;height:1px;margin:-1px;border:0;padding:0;overflow:hidden}.cdx-menu__group-wrapper+.cdx-menu-item,.cdx-menu-item+.cdx-menu__group-wrapper,.cdx-menu__group-wrapper--hide-label,.cdx-menu__group-wrapper--hide-label+.cdx-menu__group-wrapper{border-top:1px solid var(--border-color-muted,#dadde3)}.cdx-menu--has-footer .cdx-menu__listbox\\\\u003E.cdx-menu-item:last-of-type{position:absolute;bottom:0;box-sizing:border-box;width:100%}.cdx-menu--has-footer .cdx-menu__listbox\\\\u003E.cdx-menu-item:last-of-type:not(:first-of-type){border-top:1px solid var(--border-color-subtle,#c8ccd1)}.cdx-select{align-content:center;box-sizing:border-box;min-width:256px;min-height:32px;border-width:1px;border-style:solid;border-radius:2px;padding-top:4px;padding-bottom:4px;padding-left:8px;padding-right:calc(8px + 8px + calc(var(--font-size-medium,1rem) + 4px));font-size:var(--font-size-medium,1rem);line-height:1;-webkit-appearance:none;appearance:none;background-position:center right 12px;background-repeat:no-repeat;background-size:max(calc(var(--font-size-medium,1rem) - 4px),10px)}.cdx-select:disabled{background-color:var(--background-color-disabled-subtle,#eaecf0);color:var(--color-disabled,#a2a9b1);border-color:var(--border-color-disabled,#c8ccd1);background-image:url('data:image/svg+xml;utf8,\\\\u003Csvg xmlns=\\\\\\\"http://www.w3.org/2000/svg\\\\\\\" width=\\\\\\\"20\\\\\\\" height=\\\\\\\"20\\\\\\\" viewBox=\\\\\\\"0 0 20 20\\\\\\\" fill=\\\\\\\"%23a2a9b1\\\\\\\"\\\\u003E\\\\u003Cpath d=\\\\\\\"m17.5 4.75-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z\\\\\\\"/\\\\u003E\\\\u003C/svg\\\\u003E');opacity:1}.cdx-select:enabled{background-color:var(--background-color-interactive-subtle,#f8f9fa);color:var(--color-subtle,#54595d);border-color:var(--border-color-interactive,#72777d);transition-property:background-color,color,border-color,box-shadow;transition-duration:.1s;background-image:url('data:image/svg+xml;utf8,\\\\u003Csvg xmlns=\\\\\\\"http://www.w3.org/2000/svg\\\\\\\" width=\\\\\\\"20\\\\\\\" height=\\\\\\\"20\\\\\\\" viewBox=\\\\\\\"0 0 20 20\\\\\\\" fill=\\\\\\\"%23202122\\\\\\\"\\\\u003E\\\\u003Cpath d=\\\\\\\"m17.5 4.75-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z\\\\\\\"/\\\\u003E\\\\u003C/svg\\\\u003E')}.cdx-select:enabled:hover{background-color:var(--background-color-interactive-subtle--hover,#eaecf0);border-color:var(--border-color-interactive--hover,#27292d);cursor:pointer}.cdx-select:enabled:active{background-color:var(--background-color-interactive-subtle--active,#dadde3);border-color:var(--border-color-interactive--active,#202122)}.cdx-select:enabled:focus:not(:active){background-color:var(--background-color-base,#fff);border-color:var(--border-color-progressive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-progressive--focus,#36c);outline:1px solid transparent}.cdx-select-vue{display:inline-block;position:relative}.cdx-select-vue__handle{align-content:center;box-sizing:border-box;min-width:256px;min-height:32px;border-width:1px;border-style:solid;border-radius:2px;padding-top:4px;padding-bottom:4px;padding-left:8px;padding-right:calc(8px + 8px + calc(var(--font-size-medium,1rem) + 4px));font-size:var(--font-size-medium,1rem);line-height:1;position:relative;width:100%}.cdx-select-vue--has-start-icon .cdx-select-vue__handle{padding-left:calc(8px + 12px + calc(var(--font-size-medium,1rem) + 4px))}.cdx-select-vue__start-icon.cdx-icon{color:var(--color-subtle,#54595d);position:absolute;top:50%;min-width:18px;min-height:18px;width:calc(var(--font-size-medium,1rem) + 4px);height:calc(var(--font-size-medium,1rem) + 4px);transition-property:color;transition-duration:.1s;left:12px;transform:translateY(-50%)}.cdx-select-vue__indicator.cdx-icon{color:var(--color-base,#202122);position:absolute;top:50%;min-width:10px;min-height:10px;width:calc(var(--font-size-medium,1rem) - 4px);height:calc(var(--font-size-medium,1rem) - 4px);transition-property:color;transition-duration:.1s;right:12px;transform:translateY(-50%)}.cdx-select-vue--enabled .cdx-select-vue__handle{background-color:var(--background-color-interactive-subtle,#f8f9fa);color:var(--color-subtle,#54595d);border-color:var(--border-color-interactive,#72777d);transition-property:background-color,color,border-color,box-shadow;transition-duration:.1s}.cdx-select-vue--enabled .cdx-select-vue__handle:hover{background-color:var(--background-color-interactive-subtle--hover,#eaecf0);border-color:var(--border-color-interactive--hover,#27292d);cursor:pointer}.cdx-select-vue--enabled .cdx-select-vue__handle:active{background-color:var(--background-color-interactive-subtle--active,#dadde3);border-color:var(--border-color-interactive--active,#202122)}.cdx-select-vue--enabled .cdx-select-vue__handle:focus:not(:active){background-color:var(--background-color-base,#fff);border-color:var(--border-color-progressive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-progressive--focus,#36c);outline:1px solid transparent}.cdx-select-vue--enabled.cdx-select-vue--value-selected .cdx-select-vue__handle{color:var(--color-base,#202122)}.cdx-select-vue--enabled.cdx-select-vue--expanded .cdx-select-vue__handle{background-color:var(--background-color-base,#fff)}.cdx-select-vue--disabled .cdx-select-vue__handle{background-color:var(--background-color-disabled-subtle,#eaecf0);color:var(--color-disabled,#a2a9b1);border-color:var(--border-color-disabled,#c8ccd1);cursor:default}.cdx-select-vue--disabled .cdx-select-vue__indicator,.cdx-select-vue--disabled .cdx-select-vue__start-icon{color:var(--color-disabled,#a2a9b1)}.cdx-select-vue--status-error.cdx-select-vue--enabled .cdx-select-vue__handle{background-color:var(--background-color-error-subtle,#ffe9e5);color:var(--color-error,#bf3c2c);border-color:var(--border-color-error,#f54739)}.cdx-select-vue--status-error.cdx-select-vue--enabled .cdx-select-vue__handle .cdx-select-vue__start-icon{color:var(--color-error,#bf3c2c)}.cdx-select-vue--status-error.cdx-select-vue--enabled .cdx-select-vue__handle:hover:not(:focus){background-color:var(--background-color-error-subtle--hover,#ffdad3);color:var(--color-error--hover,#9f3526);border-color:var(--border-color-error--hover,#9f3526)}.cdx-select-vue--status-error.cdx-select-vue--enabled .cdx-select-vue__handle:hover:not(:focus) .cdx-select-vue__start-icon{color:var(--color-error--hover,#9f3526)}.cdx-select-vue--status-error.cdx-select-vue--enabled .cdx-select-vue__handle:active{background-color:var(--background-color-error-subtle--active,#ffc8bd);color:var(--color-error--active,#612419);border-color:var(--border-color-error--active,#612419)}.cdx-select-vue--status-error.cdx-select-vue--enabled .cdx-select-vue__handle:active .cdx-select-vue__start-icon{color:var(--color-error--active,#612419)}.cdx-select-vue--status-error.cdx-select-vue--enabled .cdx-select-vue__handle:focus:not(:active){color:var(--color-subtle,#54595d)}.cdx-select-vue--status-error.cdx-select-vue--enabled.cdx-select-vue--value-selected .cdx-select-vue__handle:focus:not(:active){color:var(--color-base,#202122)}.cdx-select-vue--status-error.cdx-select-vue--enabled.cdx-select-vue--value-selected .cdx-select-vue__handle:focus:not(:active) .cdx-select-vue__start-icon{color:var(--color-base,#202122)}.cdx-scrollable-container .cdx-select-vue{position:static}.cdx-tab[aria-hidden=true]{display:none}.cdx-tab:focus{outline:1px solid transparent}.cdx-tabs__header{display:flex;align-items:flex-end;position:relative}.cdx-tabs__prev-scroller,.cdx-tabs__next-scroller{background-color:inherit;position:absolute;top:0;bottom:0}.cdx-tabs__prev-scroller{left:0}.cdx-tabs__next-scroller{right:0}.cdx-tabs__prev-scroller:after,.cdx-tabs__next-scroller:before{content:\\\\\\\"\\\\\\\";position:absolute;top:0;z-index:1;width:1.5rem;height:100%;pointer-events:none}.cdx-tabs__prev-scroller:after{left:100%}.cdx-tabs__next-scroller:before{right:100%}.cdx-tabs__scroll-button.cdx-button{height:100%}.cdx-tabs__list{display:flex;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.cdx-tabs__list::-webkit-scrollbar{-webkit-appearance:none;display:none}.cdx-tabs__list__item{background-color:var(--background-color-transparent,transparent);display:block;flex:0 0 auto;max-width:16rem;border-width:0;border-top-left-radius:2px;border-top-right-radius:2px;padding:4px 12px;font-size:var(--font-size-medium,1rem);font-weight:700;line-height:var(--line-height-small,1.375rem);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition-property:background-color,color,border-color,box-shadow;transition-duration:.1s}.cdx-tabs__list__item:hover{cursor:pointer}.cdx-tabs__list__item[aria-selected=true]{cursor:default}.cdx-tabs\\\\u003E.cdx-tabs__header .cdx-tabs__list__item+.cdx-tabs__list__item{margin-left:0}.cdx-tabs--framed\\\\u003E.cdx-tabs__header{background-color:var(--background-color-interactive,#eaecf0)}.cdx-tabs--framed\\\\u003E.cdx-tabs__header .cdx-tabs__prev-scroller:after{background-image:linear-gradient(to right,var(--background-color-interactive,#eaecf0) 0,var(--background-color-transparent,transparent) 100%)}.cdx-tabs--framed\\\\u003E.cdx-tabs__header .cdx-tabs__next-scroller:before{background-image:linear-gradient(to left,var(--background-color-interactive,#eaecf0) 0,var(--background-color-transparent,transparent) 100%)}.cdx-tabs--framed\\\\u003E.cdx-tabs__header .cdx-tabs__list__item{color:var(--color-base,#202122);margin:8px 4px 0 8px}.cdx-tabs--framed\\\\u003E.cdx-tabs__header .cdx-tabs__list__item:enabled{overflow:hidden}.cdx-tabs--framed\\\\u003E.cdx-tabs__header .cdx-tabs__list__item:enabled:hover{background-color:var(--background-color-interactive-subtle--hover,#eaecf0);color:var(--color-base,#202122);mix-blend-mode:var(--mix-blend-mode-blend,multiply)}.cdx-tabs--framed\\\\u003E.cdx-tabs__header .cdx-tabs__list__item:enabled:active{background-color:var(--background-color-interactive-subtle--active,#dadde3);color:var(--color-base,#202122)}.cdx-tabs--framed\\\\u003E.cdx-tabs__header .cdx-tabs__list__item[aria-selected=true],.cdx-tabs--framed\\\\u003E.cdx-tabs__header .cdx-tabs__list__item[aria-selected=true]:hover{background-color:var(--background-color-base,#fff);color:var(--color-base,#202122);mix-blend-mode:var(--mix-blend-mode-base,normal)}.cdx-tabs--framed\\\\u003E.cdx-tabs__header .cdx-tabs__list__item:disabled{background-color:var(--background-color-interactive,#eaecf0);color:var(--color-disabled,#a2a9b1);cursor:default}.cdx-tabs--framed\\\\u003E.cdx-tabs__header .cdx-tabs__list__item:last-child{margin-right:8px}.cdx-tabs:not(.cdx-tabs--framed)\\\\u003E.cdx-tabs__header{background-color:var(--background-color-base,#fff);margin:0 4px;border-bottom:1px solid var(--border-color-base,#a2a9b1)}.cdx-tabs:not(.cdx-tabs--framed)\\\\u003E.cdx-tabs__header .cdx-tabs__prev-scroller:after{background-image:linear-gradient(to right,var(--background-color-base,#fff) 0,var(--background-color-transparent,transparent) 100%)}.cdx-tabs:not(.cdx-tabs--framed)\\\\u003E.cdx-tabs__header .cdx-tabs__next-scroller:before{background-image:linear-gradient(to left,var(--background-color-base,#fff) 0,var(--background-color-transparent,transparent) 100%)}.cdx-tabs:not(.cdx-tabs--framed)\\\\u003E.cdx-tabs__header .cdx-tabs__list__item{margin:0 2px}.cdx-tabs:not(.cdx-tabs--framed)\\\\u003E.cdx-tabs__header .cdx-tabs__list__item:enabled{color:var(--color-base,#202122)}.cdx-tabs:not(.cdx-tabs--framed)\\\\u003E.cdx-tabs__header .cdx-tabs__list__item:enabled:hover:not([aria-selected=\\\\\\\"true\\\\\\\"]){color:var(--color-progressive--hover,#3056a9);box-shadow:inset 0 -2px 0 0 var(--box-shadow-color-progressive-selected--hover,#3056a9)}.cdx-tabs:not(.cdx-tabs--framed)\\\\u003E.cdx-tabs__header .cdx-tabs__list__item:enabled:active:not([aria-selected=\\\\\\\"true\\\\\\\"]){color:var(--color-progressive--active,#233566);box-shadow:inset 0 -2px 0 0 var(--box-shadow-color-progressive-selected--active,#233566)}.cdx-tabs:not(.cdx-tabs--framed)\\\\u003E.cdx-tabs__header .cdx-tabs__list__item[aria-selected=true]{color:var(--color-progressive,#36c);box-shadow:inset 0 -2px 0 0 var(--box-shadow-color-progressive-selected,#36c)}.cdx-tabs:not(.cdx-tabs--framed)\\\\u003E.cdx-tabs__header .cdx-tabs__list__item[aria-selected=true]:hover{color:var(--color-progressive,#36c)}.cdx-tabs:not(.cdx-tabs--framed)\\\\u003E.cdx-tabs__header .cdx-tabs__list__item:disabled{color:var(--color-disabled,#a2a9b1);cursor:default}.cdx-tabs:not(.cdx-tabs--framed)\\\\u003E.cdx-tabs__header .cdx-tabs__list__item:first-child{margin-left:0}.cdx-tabs:not(.cdx-tabs--framed)\\\\u003E.cdx-tabs__header .cdx-tabs__list__item:last-child{margin-right:0}.cdx-tabs--framed\\\\u003E.cdx-tabs__header .cdx-tabs__list__item:focus-visible,.cdx-tabs:not(.cdx-tabs--framed)\\\\u003E.cdx-tabs__header .cdx-tabs__list__item:focus-visible{box-shadow:inset 0 0 0 2px var(--border-color-progressive,#6485d1);outline:1px solid transparent;overflow:hidden}.cdx-text-input{position:relative;box-sizing:border-box;min-width:256px;border-radius:2px;overflow:hidden}.cdx-text-input .cdx-text-input__start-icon{position:absolute;top:50%;min-width:18px;min-height:18px;width:calc(var(--font-size-medium,1rem) + 4px);height:calc(var(--font-size-medium,1rem) + 4px);transition-property:color;transition-duration:.1s;left:9px;transform:translateY(-50%)}.cdx-text-input__icon.cdx-text-input__end-icon{min-width:10px;min-height:10px;width:var(--font-size-medium,1rem);height:var(--font-size-medium,1rem)}@supports not (((-webkit-mask-image:none) or (mask-image:none))){.cdx-text-input__icon.cdx-text-input__end-icon{background-position:center;background-repeat:no-repeat;background-size:max(var(--font-size-medium,1rem),10px)}}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-text-input__icon.cdx-text-input__end-icon{-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:max(var(--font-size-medium,1rem),10px);mask-size:max(var(--font-size-medium,1rem),10px)}}.cdx-text-input__clear-icon.cdx-icon,.cdx-text-input .cdx-text-input__end-icon{position:absolute;top:50%;min-width:14px;min-height:14px;width:var(--font-size-medium,1rem);height:var(--font-size-medium,1rem);transition-property:color;transition-duration:.1s;right:9px;transform:translateY(-50%)}.cdx-text-input__clear-icon.cdx-icon:hover{cursor:pointer}.cdx-text-input__end-icon.cdx-icon+.cdx-text-input__clear-icon.cdx-icon{right:calc(calc(8px * 2 + var(--font-size-medium,1rem)) + 1px)}.cdx-text-input__input{display:block;box-sizing:border-box;min-height:32px;width:100%;max-height:2rem;margin:0;border-width:1px;border-style:solid;border-radius:0;padding:4px 8px;font-family:inherit;font-size:var(--font-size-medium,1rem);line-height:var(--line-height-small,1.375rem)}.cdx-text-input__input:enabled{background-color:var(--background-color-base,#fff);color:var(--color-base,#202122);border-color:var(--border-color-interactive,#72777d);box-shadow:inset 0 0 0 1px var(--box-shadow-color-transparent,transparent);transition-property:background-color,color,border-color,box-shadow;transition-duration:.25s}.cdx-text-input__input:enabled~.cdx-text-input__icon-vue{color:var(--color-placeholder,#72777d)}.cdx-text-input__input:enabled~.cdx-text-input__icon{opacity:var(--opacity-icon-placeholder,.51)}.cdx-text-input__input:enabled:hover{border-color:var(--border-color-interactive--hover,#27292d)}.cdx-text-input__input:enabled:focus~.cdx-text-input__icon-vue,.cdx-text-input__input:enabled.cdx-text-input__input--has-value~.cdx-text-input__icon-vue{color:var(--color-subtle,#54595d)}.cdx-text-input__input:enabled:focus~.cdx-text-input__clear-icon,.cdx-text-input__input:enabled.cdx-text-input__input--has-value~.cdx-text-input__clear-icon{color:var(--color-base,#202122)}.cdx-text-input__input:enabled:focus~.cdx-text-input__icon,.cdx-text-input__input:enabled.cdx-text-input__input--has-value~.cdx-text-input__icon{opacity:1}.cdx-text-input__input:enabled:focus{border-color:var(--border-color-progressive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-progressive--focus,#36c);outline:1px solid transparent}.cdx-text-input__input:enabled:read-only{background-color:var(--background-color-neutral-subtle,#f8f9fa);border-color:var(--border-color-base,#a2a9b1)}.cdx-text-input__input:disabled{background-color:var(--background-color-disabled-subtle,#eaecf0);color:var(--color-disabled,#a2a9b1);-webkit-text-fill-color:var(--color-disabled,#a2a9b1);border-color:var(--border-color-disabled,#c8ccd1)}.cdx-text-input__input:disabled~.cdx-text-input__icon-vue{color:var(--color-disabled,#a2a9b1);pointer-events:none}.cdx-text-input__input:disabled~.cdx-text-input__icon{opacity:var(--opacity-icon-base--disabled,.51)}.cdx-text-input__input::placeholder{color:var(--color-placeholder,#72777d);opacity:1}.cdx-text-input__input[type=search]{-webkit-appearance:none;-moz-appearance:textfield}.cdx-text-input__input[type=search]::-webkit-search-decoration,.cdx-text-input__input[type=search]::-webkit-search-cancel-button{display:none}.cdx-text-input--has-start-icon .cdx-text-input__input{padding-left:calc(8px + 8px + calc(var(--font-size-medium,1rem) + 4px))}.cdx-text-input--has-end-icon .cdx-text-input__input,.cdx-text-input--clearable .cdx-text-input__input{padding-right:calc(8px + 8px + var(--font-size-medium,1rem))}.cdx-text-input--has-end-icon.cdx-text-input--clearable .cdx-text-input__input{padding-right:calc(8px + calc(8px * 2 + var(--font-size-medium,1rem)) + var(--font-size-medium,1rem))}.cdx-text-input--status-error .cdx-text-input__input:enabled:not(:read-only):not(:focus){background-color:var(--background-color-error-subtle,#ffe9e5);color:var(--color-error,#bf3c2c);border-color:var(--border-color-error,#f54739)}.cdx-text-input--status-error .cdx-text-input__input:enabled:not(:read-only):not(:focus)::placeholder,.cdx-text-input--status-error .cdx-text-input__input:enabled:not(:read-only):not(:focus)~.cdx-text-input__start-icon,.cdx-text-input--status-error .cdx-text-input__input:enabled:not(:read-only):not(:focus)~.cdx-text-input__end-icon{color:var(--color-error,#bf3c2c)}.cdx-text-input--status-error .cdx-text-input__input:enabled:not(:read-only):not(:focus):hover{background-color:var(--background-color-error-subtle--hover,#ffdad3);color:var(--color-error--hover,#9f3526);border-color:var(--border-color-error--hover,#9f3526)}.cdx-text-input--status-error .cdx-text-input__input:enabled:not(:read-only):not(:focus):hover::placeholder,.cdx-text-input--status-error .cdx-text-input__input:enabled:not(:read-only):not(:focus):hover~.cdx-text-input__start-icon,.cdx-text-input--status-error .cdx-text-input__input:enabled:not(:read-only):not(:focus):hover~.cdx-text-input__end-icon{color:var(--color-error--hover,#9f3526)}\\\"]}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mmv.codex&skin=vector-2022&version=8hxo4\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mmv.codex&skin=vector-2022&sourcemap=1&version=8hxo4\",\"ext.visualEditor.progressBarWidget@kxifz\":\"mw.loader.impl(function(){return[\\\"ext.visualEditor.progressBarWidget@kxifz\\\",function($,jQuery,require,module){mw.libs.ve=mw.libs.ve||{};mw.libs.ve.ProgressBarWidget=function VeUiMwProgressBarWidget(){this.progressStep=0;this.progressSteps=[[30,3000],[70,2000],[100,1000]];this.$bar=$('<div>').addClass('ve-init-mw-progressBarWidget-bar').css('width',0);this.$element=$('<div>').addClass('ve-init-mw-progressBarWidget').append(this.$bar);};mw.libs.ve.ProgressBarWidget.prototype.setLoadingProgress=function(target,duration){const $bar=this.$bar.stop();$bar.css('transition','width '+duration+'ms ease-in');setTimeout(()=>{$bar.css('width',target+'%');});};mw.libs.ve.ProgressBarWidget.prototype.incrementLoadingProgress=function(){const step=this.progressSteps[this.progressStep];if(step){this.setLoadingProgress(step[0],step[1]);this.progressStep++;}};mw.libs.ve.ProgressBarWidget.prototype.clearLoading=function(){this.progressStep=0;this.setLoadingProgress(0,0);};\\n},{\\\"css\\\":[\\\".ve-init-mw-progressBarWidget{height:1em;overflow:hidden;margin:0 25%}.ve-init-mw-progressBarWidget-bar{height:1em;width:0} .ve-init-mw-progressBarWidget{background-color:#fff;box-sizing:border-box;height:0.875em;border:1px solid #36c;border-radius:0.875em;box-shadow:0 1px 1px rgba(0,0,0,0.15)}.ve-init-mw-progressBarWidget-bar{background-color:#36c;height:0.875em}\\\"]}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.progressBarWidget&skin=vector-2022&version=1urpw\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.progressBarWidget&skin=vector-2022&sourcemap=1&version=1urpw\",\"ext.discussionTools.minervaicons@11tn6\":\"mw.loader.impl(function(){return[\\\"ext.discussionTools.minervaicons@11tn6\\\",null,{\\\"css\\\":[\\\".minerva-icon--bell{background-image:url(https://wikitech.wikimedia.org/w/load.php?modules=ext.discussionTools.minervaicons\\\\u0026image=bell\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1pvpa)}.oo-ui-image-invert.oo-ui-icon-bell,.mw-ui-icon-bell-invert:before{background-image:url(https://wikitech.wikimedia.org/w/load.php?modules=ext.discussionTools.minervaicons\\\\u0026image=bell\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1pvpa)}.oo-ui-image-progressive.oo-ui-icon-bell,.mw-ui-icon-bell-progressive:before{background-image:url(https://wikitech.wikimedia.org/w/load.php?modules=ext.discussionTools.minervaicons\\\\u0026image=bell\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1pvpa)}.minerva-icon--bellOutline{background-image:url(https://wikitech.wikimedia.org/w/load.php?modules=ext.discussionTools.minervaicons\\\\u0026image=bellOutline\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1pvpa)}.oo-ui-image-invert.oo-ui-icon-bellOutline,.mw-ui-icon-bellOutline-invert:before{background-image:url(https://wikitech.wikimedia.org/w/load.php?modules=ext.discussionTools.minervaicons\\\\u0026image=bellOutline\\\\u0026variant=invert\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1pvpa)}.oo-ui-image-progressive.oo-ui-icon-bellOutline,.mw-ui-icon-bellOutline-progressive:before{background-image:url(https://wikitech.wikimedia.org/w/load.php?modules=ext.discussionTools.minervaicons\\\\u0026image=bellOutline\\\\u0026variant=progressive\\\\u0026format=original\\\\u0026lang=en\\\\u0026skin=vector-2022\\\\u0026version=1pvpa)}\\\"]}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.minervaicons&skin=vector-2022&version=1pvpa\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.minervaicons&skin=vector-2022&sourcemap=1&version=1pvpa\",\"ext.gadget.site@1x0je\":\"mw.loader.impl(function(){return[\\\"ext.gadget.site@1x0je\\\",function($,jQuery,require,module){(function(){var jumpEl,$jumpBtn,hashTarget='#!/deploycal/current',futureItems=[];function formatTime(time){var hours='0'+time.getHours();var mins='0'+time.getMinutes();return hours.slice(-2)+':'+mins.slice(-2);}function scrollToCurrent(){var current=$('.deploycal-event-now')[0]||$('.deploycal-event-past').last()[0]||$('.deploycal-eventcard-row')[0];if(current&&current.scrollIntoView){if(current.id&&history.pushState){history.pushState(null,'','#'+current.id);}current.scrollIntoView({block:'start',behavior:'smooth'});}}function updateRelativeMarker(){$.each(futureItems.slice(),function(i,el){var $children=$(el).children('time'),startTime=new Date($children.eq(0).attr('datetime')).getTime(),endTime=new Date($children.eq(1).attr('datetime')).getTime(),$row=$(el).parent().parent(),now=Date.now(),startDiff=(startTime-now)/1000,relText,diffHours,nowNotif=now+(5*60*1000);if(!$.contains(document.body,el)){futureItems.splice(i,1);}else if(endTime<now){$row.removeClass('deploycal-event-now').addClass('deploycal-event-past');\\nfutureItems.splice(i,1);}else if(startTime<nowNotif){$row.addClass('deploycal-event-now');}if(startDiff>0&&startDiff<(23*3600)){if(startDiff<1800){relText='starting soon!';}else{diffHours=Math.max(1,Math.round(startDiff/3600));if(diffHours===1){relText='1 hour from now';}else{relText=diffHours+' hours from now';}}$row.find('.deploycal-time-rel').text(relText)}else if(startDiff<0&&endTime>now){$row.find('.deploycal-time-rel').text('happening now');}else{$row.find('.deploycal-time-rel').remove();}});if(futureItems.length){setTimeout(function(){if(window.requestAnimationFrame){requestAnimationFrame(updateRelativeMarker);}else{updateRelativeMarker();}},60*1000);}}function handleCalendarPage($content){var previousItemCount=futureItems.length;$content.find('.deploycal-time-utc').each(function(idx,el){var localTz,$children,startTime,endTime,sfTz,tzStr,$cell,$row,now,startDiff;$children=$(el).children('time');startTime=new Date($children.eq(0).attr('datetime'));localTz=startTime.getTimezoneOffset()/-60;\\nendTime=new Date($children.eq(1).attr('datetime'));$cell=$(el).parent();$row=$cell.parent();now=Date.now();startDiff=(startTime-now)/1000;if(endTime<now){$row.addClass('deploycal-event-past');}else{futureItems.push(el);}sfTz=/([\\\\+|-][0-9]+):([0-9]{2})/.exec($(el).siblings('.deploycal-time-sf').children('time').eq(1).attr('datetime'));sfTz=(sfTz[1]*60+sfTz[2]*1)/60;if(localTz!==sfTz&&localTz!==0){tzStr='UTC'+((localTz>0)?'+'+localTz:localTz);$cell.append($('<br>'),$('<span>').addClass('deploycal-time-local').append($('<time>').addClass('deploycal-starttime').attr('datetime',startTime).text(formatTime(startTime)),'&ndash;',$('<time>').addClass('deploycal-endtime').attr('datetime',endTime).text(formatTime(endTime)),'&nbsp;',tzStr));}if((startDiff<0&&endTime>now)||(startDiff>0&&startDiff<(23*3600))){$cell.append($('<br>'),$('<span>').addClass('deploycal-time-rel'));}});if(!previousItemCount&&futureItems.length){updateRelativeMarker();}jumpEl=document.querySelector('.mw-parser-output .deploycal-jump');\\nif(jumpEl){$jumpBtn=$('<button class=\\\"mw-ui-button\\\">').append($('<a>').attr('href',hashTarget).text(jumpEl.textContent)).on('click',function(e){e.preventDefault();scrollToCurrent();});$(jumpEl).empty().append($jumpBtn).addClass('deploycal-jump-bound');}if(location.hash===hashTarget){mw.requestIdleCallback(scrollToCurrent);}}function addSidebarLink(){var link=document.querySelector('#n-Deployments a');if(!link){return;}var link2=link.cloneNode();link2.href+=hashTarget;link2.textContent='[curr]';link.parentNode.appendChild(document.createTextNode(' \\\\u00a0 '));link.parentNode.appendChild(link2);}function handleInterface(){mw.requestIdleCallback(addSidebarLink);}$(handleInterface);if(mw.config.get('wgPageName')==='Deployments'){mw.hook('wikipage.content').add(handleCalendarPage);window.addEventListener('hashchange',function(){if(location.hash===hashTarget){mw.requestIdleCallback(scrollToCurrent);}});}}());mw.loader.using(['mediawiki.util'],function(){var extraCSS=mw.util.getParamValue('withCSS'),\\nextraJS=mw.util.getParamValue('withJS'),extraModule=mw.util.getParamValue('withModule');if(extraCSS){if(/^MediaWiki:[^&<>=%#]*\\\\.css$/.test(extraCSS)){mw.loader.load('/w/index.php?title='+encodeURIComponent(extraCSS)+'&action=raw&ctype=text/css','text/css');}else{mw.notify('Only pages from the MediaWiki namespace are allowed.',{title:'Invalid withCSS value'});}}if(extraJS){if(/^MediaWiki:[^&<>=%#]*\\\\.js$/.test(extraJS)){mw.loader.load('/w/index.php?title='+encodeURIComponent(extraJS)+'&action=raw&ctype=text/javascript');}else{mw.notify('Only pages from the MediaWiki namespace are allowed.',{title:'Invalid withJS value'});}}if(extraModule){if(/^ext\\\\.gadget\\\\.[^,\\\\|]+$/.test(extraModule)){mw.loader.load(extraModule);}else{mw.notify('Only gadget modules are allowed.',{title:'Invalid withModule value'});}}});$(function(){var prefix=$('#mw-cat-hideprefix').text().trim();if(prefix){$('#mw-pages a').text(function(i,val){return val.slice(0,prefix.length)===prefix?val.slice(prefix.length):val;});}});\\n},{\\\"css\\\":[\\\".skin-vector-2022 #n-Deployments a:first-child{display:inline-block} .skin-vector-2022 #n-Deployments a:last-child{display:inline}\\\"]}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.gadget.site&skin=vector-2022&version=1tcgt\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.gadget.site&skin=vector-2022&sourcemap=1&version=1tcgt\",\"ext.centralauth.centralautologin@cdwqd\":\"mw.loader.impl(function(){return[\\\"ext.centralauth.centralautologin@cdwqd\\\",{\\\"main\\\":\\\"ext.centralauth.centralautologin.js\\\",\\\"files\\\":{\\\"ext.centralauth.centralautologin.js\\\":function(require,module,exports){(function(){if(mw.config.get('wgUserName')!==null){return;}if(mw.config.get('wgCanonicalSpecialPageName')==='Userlogin'){return;}try{if(+localStorage.getItem('CentralAuthAnon')>Date.now()){return;}}catch(e){}try{if(/(^|; )CentralAuthAnon=1/.test(document.cookie)){return;}}catch(e){return;}let url=require('./data.json').startURL;if(url){if(mw.config.get('wgCanonicalSpecialPageName')==='Userlogin'){url+='&return=1';const params=location.search.slice(1).split('&');for(let i=0,len=params.length;i<len;i++){const paramParts=params[i].split('=');const param=decodeURIComponent(paramParts[0]);if(param==='returnto'||param==='returntoquery'){url+='&'+params[i];}}}mw.loader.load(url);}}());\\n},\\\"data.json\\\":{\\\"startURL\\\":\\\"//wikitech.wikimedia.org/wiki/Special:CentralAutoLogin/start?useformat=desktop\\\\u0026type=script\\\\u0026usesul3=1\\\"}}},{\\\"css\\\":[\\\"@keyframes centralAuthPPersonalAnimation{0%{opacity:0;transform:translateY(-20px)}100%{opacity:1;transform:translateY(0)}}.centralAuthPPersonalAnimation{animation-duration:1s;animation-fill-mode:both;animation-name:centralAuthPPersonalAnimation}\\\"]}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralauth.centralautologin&skin=vector-2022&version=1taxj\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralauth.centralautologin&skin=vector-2022&sourcemap=1&version=1taxj\",\"mediawiki.page.ready@184qr\":\"mw.loader.impl(function(){return[\\\"mediawiki.page.ready@184qr\\\",{\\\"main\\\":\\\"ready.js\\\",\\\"files\\\":{\\\"ready.js\\\":function(require,module,exports){const checkboxShift=require('./checkboxShift.js');const config=require('./config.json');const teleportTarget=require('./teleportTarget.js');const enableSearchDialog=require('./enableSearchDialog.js');const clearAddressBar=require('./clearAddressBar.js');const{updateThumbnailsToPreferredSize}=require('./updateThumbnailsToPreferredSize.js');if(mw.config.get('wgBreakFrames')){if(window.top!==window.self){window.top.location.href=location.href;}}mw.hook('wikipage.content').add(($content)=>{const modules=[];let $collapsible;if(config.collapsible){$collapsible=$content.find('.mw-collapsible');if($collapsible.length){modules.push('jquery.makeCollapsible');}}let $sortable;if(config.sortable){$sortable=$content.find('table.sortable');if($sortable.length){modules.push('jquery.tablesorter');}}if(modules.length){mw.loader.using(modules).then(()=>{if($sortable&&$sortable.length){$sortable.tablesorter();}if($collapsible&&$collapsible.length){$collapsible.makeCollapsible();}});}if($content[0]&&$content[0].isConnected===false){\\nmw.log.warn('wikipage.content hook should not be fired on unattached content');}checkboxShift($content.find('input[type=\\\"checkbox\\\"]:not(.noshiftselect)'));});require('./toggleAllCollapsibles.js');$(()=>{function fixViewportForTabletDevices(){const $viewport=$('meta[name=viewport]');const content=$viewport.attr('content');const scale=window.outerWidth/window.innerWidth;if(window.innerWidth>=640&&window.innerWidth<1120&&content&&!content.includes('initial-scale')){$viewport.attr('content','width=1120,initial-scale='+scale);}}$('[accesskey]').updateTooltipAccessKeys();const node=document.querySelector('.mw-indicators');if(node&&node.children.length){mw.hook('wikipage.indicators').fire($(node.children));}const $content=$('#mw-content-text');if($content.length){mw.hook('wikipage.content').fire($content);}let $nodes=$('.catlinks[data-mw-interface]');if($nodes.length){mw.hook('wikipage.categories').fire($nodes);}$nodes=$('table.diff[data-mw-interface]');if($nodes.length){mw.hook('wikipage.diff').fire($nodes.eq(0));\\n}$('#t-print a').on('click',(e)=>{window.print();e.preventDefault();});const $permanentLink=$('#t-permalink a');function updatePermanentLinkHash(){if(mw.util.getTargetFromFragment()){$permanentLink[0].hash=location.hash;}else{$permanentLink[0].hash='';}}if($permanentLink.length){$(window).on('hashchange',updatePermanentLinkHash);updatePermanentLinkHash();}const LOGOUT_EVENT='skin.logout';function logoutViaPost(href){let confirmedPromise;if(mw.user.isTemp()){confirmedPromise=mw.loader.using(['oojs-ui-windows','mediawiki.jqueryMsg']).then(()=>{const $confirmDialogContent=$('<div>').append($('<p>').append(mw.message('userlogout-temp').parseDom()),$('<p>').append(mw.message('userlogout-temp-moreinfo').parseDom()),new OO.ui.MessageWidget({type:'notice',label:$('<div>').append($('<strong>').text(mw.msg('userlogout-temp-messagebox-title')),$('<br>'),mw.message('userlogout-temp-messagebox-body').parseDom())}).$element);return OO.ui.confirm($confirmDialogContent,{size:'medium',title:mw.msg('temp-user-logout-confirm-title'),\\nactions:[{action:'accept',label:mw.msg('userlogout-submit'),flags:['primary','progressive']},{action:'reject',label:mw.msg('ooui-dialog-message-reject'),flags:'safe'}]});});}else{confirmedPromise=$.Deferred().resolve(true).promise();}confirmedPromise.then((confirmed)=>{if(!confirmed){return;}mw.notify(mw.message('logging-out-notify'),{tag:'logout',autoHide:false});const api=new mw.Api();if(mw.user.isTemp()){const url=new URL(href);url.searchParams.append('wasTempUser',1);href=url;}api.prepareExtensibleApiRequest('extendLogout').then((params)=>{const logoutParams=Object.assign({},params,{action:'logout'});api.postWithToken('csrf',logoutParams).then(()=>{location.href=href;},(err,data)=>{mw.notify(api.getErrorMessage(data),{type:'error',tag:'logout',autoHide:false});});});});}mw.hook(LOGOUT_EVENT).add(logoutViaPost);$(config.selectorLogoutLink).on('click',function(e){mw.hook(LOGOUT_EVENT).fire(this.href);e.preventDefault();});fixViewportForTabletDevices();teleportTarget.attach();});\\nfunction isSearchInput(element){return element.id==='searchInput'||element.classList.contains('mw-searchInput');}function loadSearchModule(moduleName){function requestSearchModule(){mw.loader.using(moduleName).then(()=>{const{init}=require(moduleName);if(init){init();}});}function eventListener(e){if(e.target&&e.target.nodeType===1&&isSearchInput(e.target)){requestSearchModule();document.removeEventListener('focusin',eventListener);}}if(document.activeElement&&isSearchInput(document.activeElement)){requestSearchModule();return;}document.addEventListener('focusin',eventListener);}if(config.search){loadSearchModule(config.searchModule);}try{if(sessionStorage.getItem('mw-PostEdit'+mw.config.get('wgPageName'))){mw.loader.load('mediawiki.action.view.postEdit');}}catch(err){}updateThumbnailsToPreferredSize($('#mw-content-text .mw-parser-output'));mw.hook('wikipage.content').add(updateThumbnailsToPreferredSize);module.exports={clearAddressBar,enableSearchDialog,loadSearchModule,checkboxHack:require('./checkboxHack.js'),\\nteleportTarget:teleportTarget.target};\\n},\\\"updateThumbnailsToPreferredSize.js\\\":function(require,module,exports){const makeSrcSetMap=(srcset)=>{const srcsetMap={};srcset.split(',').map((a)=>a.trim().split(' ')).forEach((combo)=>{if(combo.length===2&&combo[1].endsWith('x')){srcsetMap[combo[1].replace('x','')]=combo[0];}});return srcsetMap;};const shuffleSrcSet=(srcsetMap)=>{const newSrcset=Object.keys(srcsetMap).filter((key)=>parseInt(key,10)-1>0.5).map((key)=>`${srcsetMap[key]} ${parseInt(key,10)-1}x`).join(', ');return newSrcset;};const updateThumbnailToPreferredSize=(img)=>{const srcsetMap=makeSrcSetMap(img.srcset);if(Object.keys(srcsetMap).length>0){const newSrcset=shuffleSrcSet(srcsetMap);if(newSrcset){img.srcset=newSrcset;const upgradedSrc=srcsetMap['1x'];if(upgradedSrc&&img.currentSrc!==upgradedSrc){img.src=upgradedSrc;}}}};function updateThumbnailsToPreferredSize($element){if(!$element.closest('[data-mw-parsoid-version]').length){return;}if(document.documentElement.classList.contains('skin-theme-clientpref-thumb-large')){const observer=new IntersectionObserver((entries)=>{entries.forEach((entry)=>{\\nif(entry.isIntersecting){updateThumbnailToPreferredSize(entry.target);observer.unobserve(entry.target);}});});$element.find('img[srcset]').each((_,img)=>{observer.observe(img);});}}module.exports={test:{shuffleSrcSet,makeSrcSetMap,updateThumbnailToPreferredSize},updateThumbnailsToPreferredSize};\\n},\\\"enableSearchDialog.js\\\":function(require,module,exports){const config=require('./config.json');const clearAddressBar=require('./clearAddressBar.js');const searchRoute=new RegExp(/\\\\/search/);let tempInput=null;function addRoutes(router,trigger){let searchOpen=false;clearAddressBar(router,searchRoute);router.addRoute(searchRoute,()=>{searchOpen=true;const searchModuleName=config.searchModule;mw.loader.using(searchModuleName).then(()=>{const{init}=require(searchModuleName);if(init){init();if(tempInput){transferFocusToRealInput();}}});});router.on('route',(ev)=>{if(searchOpen&&!ev.path.match(searchRoute)){searchOpen=false;requestAnimationFrame(()=>{trigger.focus();});}});}function createTempInput(){if(tempInput){tempInput.remove();}tempInput=document.createElement('input');tempInput.type='text';tempInput.style.position='absolute';tempInput.style.left='0';tempInput.style.top='0';tempInput.style.fontSize='16px';tempInput.style.opacity='0';tempInput.style.pointerEvents='none';tempInput.setAttribute('readonly',true);document.body.appendChild(tempInput);\\ntempInput.focus();}function transferFocusToRealInput(){const realInput=document.querySelector('.cdx-typeahead-search .cdx-text-input__input');if(realInput&&tempInput){requestAnimationFrame(()=>{realInput.focus();tempInput.remove();tempInput=null;});}}module.exports=function(trigger){mw.loader.using('mediawiki.router').then(()=>{const router=require('mediawiki.router');addRoutes(router,trigger);});trigger.addEventListener('click',(ev)=>{ev.preventDefault();window.location.hash='/search';createTempInput();});};\\n},\\\"checkboxShift.js\\\":function(require,module,exports){let prev;function clickHandler(e){if(prev&&e.shiftKey){const $checkboxes=e.data.$checkboxes;$checkboxes.slice(Math.min($checkboxes.index(prev),$checkboxes.index(e.target)),Math.max($checkboxes.index(prev),$checkboxes.index(e.target))+1).filter(function(){return!this.disabled&&this.checked!==e.target.checked;}).prop('checked',e.target.checked).trigger('change');}prev=e.target;}module.exports=function($checkboxes){$checkboxes.off('click',clickHandler).on('click',{$checkboxes:$checkboxes},clickHandler);};\\n},\\\"checkboxHack.js\\\":function(require,module,exports){function updateAriaExpanded(checkbox,button){if(button){mw.log.warn('[1.38] The button parameter in updateAriaExpanded is deprecated, aria-expanded will be applied to the checkbox going forward. View the updated checkbox hack documentation for more details.');button.setAttribute('aria-expanded',checkbox.checked.toString());return;}checkbox.setAttribute('aria-expanded',checkbox.checked.toString());}function setCheckedState(checkbox,checked){checkbox.checked=checked;const e=new Event('input',{bubbles:true,composed:true});checkbox.dispatchEvent(e);}function containsEventTarget(checkbox,button,target,event){return event.target instanceof Node&&(checkbox.contains(event.target)||button.contains(event.target)||target.contains(event.target));}function dismissIfExternalEventTarget(checkbox,button,target,event){if(checkbox.checked&&!containsEventTarget(checkbox,button,target,event)){setCheckedState(checkbox,false);}}function bindUpdateAriaExpandedOnInput(checkbox,button){if(button){mw.log.warn('[1.38] The button parameter in bindUpdateAriaExpandedOnInput is deprecated, aria-expanded will be applied to the checkbox going forward. View the updated checkbox hack documentation for more details.');\\n}const listener=updateAriaExpanded.bind(undefined,checkbox,button);checkbox.addEventListener('input',listener);return function(){checkbox.removeEventListener('input',listener);};}function bindToggleOnClick(checkbox,button){function listener(event){event.preventDefault();setCheckedState(checkbox,!checkbox.checked);}button.addEventListener('click',listener,true);return function(){button.removeEventListener('click',listener,true);};}function bindToggleOnSpaceEnter(checkbox,button){mw.log.warn('[1.38] bindToggleOnSpaceEnter is deprecated. Use `bindToggleOnEnter` instead.');function isEnterOrSpace(event){return event.key===' '||event.key==='Enter';}function onKeydown(event){if(!isEnterOrSpace(event)){return;}event.preventDefault();}function onKeyup(event){if(!isEnterOrSpace(event)){return;}button.click();}button.addEventListener('keydown',onKeydown);button.addEventListener('keyup',onKeyup);return function(){button.removeEventListener('keydown',onKeydown);button.removeEventListener('keyup',onKeyup);\\n};}function bindToggleOnEnter(checkbox){function onKeyup(event){if(event.key!=='Enter'){return;}setCheckedState(checkbox,!checkbox.checked);}checkbox.addEventListener('keyup',onKeyup);return function(){checkbox.removeEventListener('keyup',onKeyup);};}function bindDismissOnClickOutside(window,checkbox,button,target){const listener=dismissIfExternalEventTarget.bind(undefined,checkbox,button,target);window.addEventListener('click',listener,true);return function(){window.removeEventListener('click',listener,true);};}function bindDismissOnFocusLoss(window,checkbox,button,target){const listener=dismissIfExternalEventTarget.bind(undefined,checkbox,button,target);window.addEventListener('focusin',listener,true);return function(){window.removeEventListener('focusin',listener,true);};}function bindDismissOnClickLink(checkbox,target){function dismissIfClickLinkEvent(event){if(event.target&&event.target.parentNode&&(event.target.nodeName==='A'||event.target.parentNode.nodeName==='A')){\\nsetCheckedState(checkbox,false);}}target.addEventListener('click',dismissIfClickLinkEvent);return function(){target.removeEventListener('click',dismissIfClickLinkEvent);};}function bind(window,checkbox,button,target){const cleanups=[bindUpdateAriaExpandedOnInput(checkbox),bindToggleOnClick(checkbox,button),bindToggleOnEnter(checkbox),bindDismissOnClickOutside(window,checkbox,button,target),bindDismissOnFocusLoss(window,checkbox,button,target),bindDismissOnClickLink(checkbox,target)];return function(){cleanups.forEach((cleanup)=>{cleanup();});};}module.exports={updateAriaExpanded,bindUpdateAriaExpandedOnInput,bindToggleOnClick,bindToggleOnSpaceEnter,bindToggleOnEnter,bindDismissOnClickOutside,bindDismissOnFocusLoss,bindDismissOnClickLink,bind};\\n},\\\"clearAddressBar.js\\\":function(require,module,exports){function clearAddressBar(router,route){if(!route||route.test(router.getPath())){router.navigateTo(document.title,{path:'#',useReplaceState:true});}}module.exports=clearAddressBar;\\n},\\\"teleportTarget.js\\\":function(require,module,exports){const ID='mw-teleport-target';const target=document.createElement('div');target.id=ID;module.exports={target,attach(){document.body.appendChild(target);}};\\n},\\\"toggleAllCollapsibles.js\\\":function(require,module,exports){let toggleAll;mw.hook('wikipage.content').add(()=>{if(toggleAll){return;}if(!document.querySelector('#mw-content-text .mw-parser-output .mw-collapsible')){return;}const portletLink=mw.util.addPortletLink('p-tb','#',mw.msg('collapsible-expand-all-text'),'t-collapsible-toggle-all',mw.msg('collapsible-expand-all-tooltip'));if(!portletLink){return;}toggleAll=portletLink.querySelector('a');toggleAll.setAttribute('role','button');toggleAll.setAttribute('aria-expanded','false');let allExpanded=false;toggleAll.addEventListener('click',(e)=>{e.preventDefault();if(!allExpanded){const collapsed=document.querySelectorAll('#mw-content-text .mw-parser-output .mw-made-collapsible.mw-collapsed');Array.prototype.forEach.call(collapsed,(collapsible)=>{$(collapsible).data('mw-collapsible').expand();});toggleAll.textContent=mw.msg('collapsible-collapse-all-text');toggleAll.title=mw.msg('collapsible-collapse-all-tooltip');toggleAll.setAttribute('aria-expanded','true');allExpanded=true;}else{const expanded=document.querySelectorAll('#mw-content-text .mw-parser-output .mw-made-collapsible:not( .mw-collapsed )');\\nArray.prototype.forEach.call(expanded,(collapsible)=>{$(collapsible).data('mw-collapsible').collapse();});toggleAll.textContent=mw.msg('collapsible-expand-all-text');toggleAll.title=mw.msg('collapsible-expand-all-tooltip');toggleAll.setAttribute('aria-expanded','false');allExpanded=false;}});});\\n},\\\"config.json\\\":{\\\"search\\\":true,\\\"searchModule\\\":\\\"skins.vector.search\\\",\\\"collapsible\\\":true,\\\"sortable\\\":true,\\\"selectorLogoutLink\\\":\\\"#pt-logout a[data-mw-interface]\\\"}}},{\\\"css\\\":[\\\"#mw-teleport-target{position:absolute;z-index:450}   #mw-teleport-target{font-size:var(--font-size-small,0.875rem)}\\\"]},{\\\"collapsible-collapse-all-text\\\":\\\"Collapse all\\\",\\\"collapsible-collapse-all-tooltip\\\":\\\"Collapse all collapsible elements on the current page\\\",\\\"collapsible-expand-all-text\\\":\\\"Expand all\\\",\\\"collapsible-expand-all-tooltip\\\":\\\"Expand all collapsible elements on the current page\\\",\\\"logging-out-notify\\\":\\\"You are being logged out. Please wait.\\\",\\\"temp-user-logout-confirm-title\\\":\\\"Exit session\\\",\\\"userlogout-submit\\\":\\\"Log out\\\",\\\"userlogout-temp\\\":\\\"If you are editing on a shared device like a library or school computer, you can exit this session to prevent other people from using this temporary account.\\\",\\\"userlogout-temp-messagebox-body\\\":\\\"Once you log out, you will no longer be able to access this temporary account.\\\",\\\"userlogout-temp-messagebox-title\\\":\\\"Are you sure you want to exit session and log out?\\\",\\\"userlogout-temp-moreinfo\\\":\\\"Please be aware that editing with multiple temporary accounts may be against the rules of this wiki and you could be blocked if this happens frequently.\\\"}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.page.ready&skin=vector-2022&version=6p7te\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.page.ready&skin=vector-2022&sourcemap=1&version=6p7te\",\"skins.vector.clientPreferences@169az\":\"mw.loader.impl(function(){return[\\\"skins.vector.clientPreferences@169az\\\",{\\\"main\\\":\\\"resources/skins.vector.clientPreferences/clientPreferences.js\\\",\\\"files\\\":{\\\"resources/skins.vector.clientPreferences/clientPreferences.js\\\":function(require,module,exports){function getClientPreferences(){return Array.from(document.documentElement.classList).filter((className)=>className.match(/-clientpref-/)).map((className)=>className.split('-clientpref-')[0]);}function isFeatureExcluded(featureName){return document.documentElement.classList.contains(featureName+'-clientpref--excluded');}function getVisibleClientPreferences(config){const active=getClientPreferences();return Object.keys(config).filter((key)=>active.includes(key));}function toggleDocClassAndSave(featureName,value,config,userPreferences){const pref=config[featureName];const callback=pref.callback||(()=>{});const hook=mw.hook('skin-client-preference.change');if(mw.user.isNamed()){config[featureName].options.forEach((possibleValue)=>{document.documentElement.classList.remove(`${featureName}-clientpref-${possibleValue}`);});document.documentElement.classList.add(`${featureName}-clientpref-${value}`);window.dispatchEvent(new Event('resize'));mw.util.debounce(()=>{userPreferences=userPreferences||new mw.Api();\\nuserPreferences.saveOptions({[pref.preferenceKey]:value}).then(()=>{callback();});},100)();}else{mw.user.clientPrefs.set(featureName,value);callback();}hook.fire(featureName,value);}const getInputId=(featureName,value)=>`skin-client-pref-${featureName}-value-${value}`;function makeInputElement(type,featureName,value){const input=document.createElement('input');const name=`skin-client-pref-${featureName}-group`;const id=getInputId(featureName,value);input.name=name;input.id=id;input.type=type;if(type==='checkbox'){input.checked=value==='1';}else{input.value=value;}input.setAttribute('data-event-name',id);return input;}function makeLabelElement(featureName,value){const label=document.createElement('label');label.classList.add('cdx-label');label.setAttribute('for',getInputId(featureName,value));const labelText=document.createElement('span');labelText.classList.add('cdx-label__label__text');labelText.textContent=mw.msg(`${featureName}-${value}-label`);label.appendChild(labelText);return label;\\n}function makeExclusionNotice(featureName){const p=document.createElement('p');const noticeMessage=mw.message(`${featureName}-exclusion-notice`);p.classList.add('exclusion-notice',`${featureName}-exclusion-notice`);p.textContent=noticeMessage.text();return p;}function makeBetaInfoTag(messageKey){const infoTag=document.createElement('span');const infoTagText=document.createElement('span');infoTagText.textContent=mw.message(messageKey).text();infoTag.appendChild(infoTagText);return infoTag;}function appendRadioToggle(parent,featureName,value,currentValue,config,userPreferences){const input=makeInputElement('radio',featureName,value);input.classList.add('cdx-radio__input');if(currentValue===value){input.checked=true;}if(isFeatureExcluded(featureName)){input.disabled=true;}const icon=document.createElement('span');icon.classList.add('cdx-radio__icon');const label=makeLabelElement(featureName,value);label.classList.add('cdx-radio__label');const container=document.createElement('div');\\ncontainer.classList.add('cdx-radio');container.appendChild(input);container.appendChild(icon);container.appendChild(label);parent.appendChild(container);input.addEventListener('change',()=>{toggleDocClassAndSave(featureName,value,config,userPreferences);});input.addEventListener('keydown',(event)=>{if(event.key.startsWith('Arrow')&&event.repeat){event.preventDefault();}});}function makeLink(linkContainer,feature){const urlKey=feature.linkLabelUrl;const labelKey=feature.linkLabelMessage;const linkLabelTooltip=feature.linkLabelTooltip;const urlParamMsgKey=feature.linkLabelUrlParameter;const isDisplayed=feature.linkLabelLoggedInOnly?!mw.user.isAnon():true;if(!labelKey||!urlKey||!mw.msg(urlKey)||!isDisplayed){return;}let urlParam='';if(urlParamMsgKey){const pageWikiLink=`[https://${window.location.hostname+mw.util.getUrl(mw.config.get('wgPageName'))} ${mw.config.get('wgTitle')}]`;urlParam=mw.message(urlParamMsgKey,pageWikiLink).text();}const link=mw.msg(urlKey,window.location.host,urlParam);\\nconst linkLabel=mw.message(labelKey).text();const anchor=document.createElement('a');anchor.setAttribute('href',link);anchor.setAttribute('target','_blank');if(linkLabelTooltip){anchor.setAttribute('title',mw.msg(linkLabelTooltip));}anchor.textContent=linkLabel;const showSuccessFeedback=function(event){event.stopPropagation();const icon=document.createElement('span');icon.classList.add('vector-icon','vector-icon--heart');anchor.textContent=mw.msg('vector-night-mode-issue-reporting-link-notification');anchor.classList.add('skin-theme-beta-notice-success');anchor.prepend(icon);anchor.removeEventListener('click',showSuccessFeedback);};if(feature.linkLabelUrlParameter){anchor.addEventListener('click',(event)=>showSuccessFeedback(event));}linkContainer.appendChild(anchor);}function appendToggleSwitch(form,featureName,labelElement,currentValue,config,userPreferences){const input=makeInputElement('checkbox',featureName,currentValue);input.classList.add('cdx-toggle-switch__input');const switcher=document.createElement('span');\\nswitcher.classList.add('cdx-toggle-switch__switch');const grip=document.createElement('span');grip.classList.add('cdx-toggle-switch__switch__grip');switcher.appendChild(grip);const label=labelElement||makeLabelElement(featureName,currentValue);label.classList.add('cdx-toggle-switch__label');const toggleSwitch=document.createElement('span');toggleSwitch.classList.add('cdx-toggle-switch');toggleSwitch.appendChild(input);toggleSwitch.appendChild(switcher);toggleSwitch.appendChild(label);input.addEventListener('change',()=>{toggleDocClassAndSave(featureName,input.checked?'1':'0',config,userPreferences);});form.appendChild(toggleSwitch);}function createRow(className){const row=document.createElement('div');row.setAttribute('class',className);return row;}const getFeatureLabelMsg=(featureName)=>mw.message(`${featureName}-name`);function makeControl(featureName,config,userPreferences){const pref=config[featureName];const isExcluded=isFeatureExcluded(featureName);if(!pref){return null;}const currentValue=mw.user.clientPrefs.get(featureName);\\nif(typeof currentValue==='boolean'&&!isExcluded){return null;}const row=createRow('');const form=document.createElement('form');const type=pref.type||'radio';switch(type){case'radio':pref.options.forEach((value)=>{appendRadioToggle(form,featureName,value,String(currentValue),config,userPreferences);});break;case'switch':{const labelElement=document.createElement('label');labelElement.textContent=getFeatureLabelMsg(featureName).text();appendToggleSwitch(form,featureName,labelElement,String(currentValue),config,userPreferences);break;}default:throw new Error('Unknown client preference! Only switch or radio are supported.');}row.appendChild(form);if(isExcluded){const exclusionNotice=makeExclusionNotice(featureName);row.appendChild(exclusionNotice);}return row;}function makeClientPreference(parent,featureName,config,userPreferences){const labelMsg=getFeatureLabelMsg(featureName);const feature=config[featureName];if(!labelMsg.exists()&&mw.config.get('wgUserLanguage')!=='qqx'){return;}else{\\nconst id=`skin-client-prefs-${featureName}`;const portlet=mw.util.addPortlet(id,labelMsg.text());if(feature.betaMessage){const betaInfoTag=makeBetaInfoTag(feature.betaMessage);if(!portlet.querySelector('.vector-menu-heading span')){portlet.querySelector('.vector-menu-heading').textContent+=' ';portlet.querySelector('.vector-menu-heading').appendChild(betaInfoTag);}}const labelElement=portlet.querySelector('label');const descriptionMsg=mw.message(`${featureName}-description`);if(descriptionMsg.exists()){const desc=document.createElement('span');desc.classList.add('skin-client-pref-description');desc.innerHTML=descriptionMsg.parse();if(labelElement&&labelElement.parentNode){labelElement.appendChild(desc);}}const exclusionNoticeMsg=mw.message(`${featureName}-exclusion-notice`);if(exclusionNoticeMsg.exists()){const content=portlet.querySelector('.vector-menu-content');const notice=document.createElement('span');notice.classList.add('skin-client-pref-exclusion-notice');notice.textContent=exclusionNoticeMsg.text();\\nif(content){content.appendChild(notice);}}parent.appendChild(portlet);const row=makeControl(featureName,config,userPreferences);if(row){const tmp=mw.util.addPortletLink(id,'','');if(tmp){const link=tmp.querySelector('a');if(link){link.replaceWith(row);}}if(config[featureName].linkLabelUrl&&!isFeatureExcluded(featureName)){const linkContainer=document.createElement('span');linkContainer.id=`${featureName}-beta-notice`;makeLink(linkContainer,feature);row.appendChild(linkContainer);}}}}function render(selector,config,userPreferences){const el=document.querySelector(selector);if(!el){return Promise.reject();}return new Promise((resolve)=>{getVisibleClientPreferences(config).forEach((pref)=>{userPreferences=userPreferences||new mw.Api();makeClientPreference(el,pref,config,userPreferences);});mw.requestIdleCallback(()=>{resolve(el);});});}function bind(clickSelector,renderSelector,config,userPreferences){let enhanced=false;const chk=(document.querySelector(clickSelector));if(!chk){return;}if(!userPreferences){\\nuserPreferences=new mw.Api();}if(chk.checked){render(renderSelector,config,userPreferences);enhanced=true;}else{chk.addEventListener('input',()=>{if(enhanced){return;}render(renderSelector,config,userPreferences);enhanced=true;});}}module.exports={bind,toggleDocClassAndSave,render};\\n}}},{\\\"css\\\":[\\\"#vector-appearance form{font-size:0.875rem;padding:6px 0}#vector-appearance a.skin-theme-beta-notice-success{color:var(--color-success,#177860);pointer-events:none}#vector-appearance .vector-icon.vector-icon--heart{ min-width:10px;min-height:10px;width:var(--font-size-medium,1rem);height:var(--font-size-medium,1rem);display:inline-block;vertical-align:text-bottom}@supports not ((-webkit-mask-image:none) or (mask-image:none)){#vector-appearance .vector-icon.vector-icon--heart{background-position:center;background-repeat:no-repeat; background-size:calc(max(var(--font-size-medium,1rem),10px))}}@supports (-webkit-mask-image:none) or (mask-image:none){#vector-appearance .vector-icon.vector-icon--heart{ -webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:calc(max(var(--font-size-medium,1rem),10px));mask-size:calc(max(var(--font-size-medium,1rem),10px)); }}@supports not ((-webkit-mask-image:none) or (mask-image:none)){#vector-appearance .vector-icon.vector-icon--heart{background-image:url(\\\\\\\"data:image/svg+xml;utf8,\\\\u003Csvg xmlns=\\\\\\\\\\\\\\\"http://www.w3.org/2000/svg\\\\\\\\\\\\\\\" width=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" height=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" viewBox=\\\\\\\\\\\\\\\"0 0 20 20\\\\\\\\\\\\\\\" fill=\\\\\\\\\\\\\\\"%23000\\\\\\\\\\\\\\\"\\\\u003E\\\\u003Cpath d=\\\\\\\\\\\\\\\"M14.75 1A5.24 5.24 0 0010 4 5.24 5.24 0 000 6.25C0 11.75 10 19 10 19s10-7.25 10-12.75A5.25 5.25 0 0014.75 1\\\\\\\\\\\\\\\"/\\\\u003E\\\\u003C/svg\\\\u003E\\\\\\\");filter:invert(var(--filter-invert-icon,0));opacity:var(--opacity-icon-base,0.87)}}@supports (-webkit-mask-image:none) or (mask-image:none){#vector-appearance .vector-icon.vector-icon--heart{ -webkit-mask-image:url(\\\\\\\"data:image/svg+xml;utf8,\\\\u003Csvg xmlns=\\\\\\\\\\\\\\\"http://www.w3.org/2000/svg\\\\\\\\\\\\\\\" width=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" height=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" viewBox=\\\\\\\\\\\\\\\"0 0 20 20\\\\\\\\\\\\\\\" fill=\\\\\\\\\\\\\\\"%23000\\\\\\\\\\\\\\\"\\\\u003E\\\\u003Cpath d=\\\\\\\\\\\\\\\"M14.75 1A5.24 5.24 0 0010 4 5.24 5.24 0 000 6.25C0 11.75 10 19 10 19s10-7.25 10-12.75A5.25 5.25 0 0014.75 1\\\\\\\\\\\\\\\"/\\\\u003E\\\\u003C/svg\\\\u003E\\\\\\\"); mask-image:url(\\\\\\\"data:image/svg+xml;utf8,\\\\u003Csvg xmlns=\\\\\\\\\\\\\\\"http://www.w3.org/2000/svg\\\\\\\\\\\\\\\" width=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" height=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" viewBox=\\\\\\\\\\\\\\\"0 0 20 20\\\\\\\\\\\\\\\" fill=\\\\\\\\\\\\\\\"%23000\\\\\\\\\\\\\\\"\\\\u003E\\\\u003Cpath d=\\\\\\\\\\\\\\\"M14.75 1A5.24 5.24 0 0010 4 5.24 5.24 0 000 6.25C0 11.75 10 19 10 19s10-7.25 10-12.75A5.25 5.25 0 0014.75 1\\\\\\\\\\\\\\\"/\\\\u003E\\\\u003C/svg\\\\u003E\\\\\\\");background-color:var(--color-success,#177860)}}#skin-theme-beta-notice{display:none}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os #skin-theme-beta-notice{display:block}}html.skin-theme-clientpref-night #skin-theme-beta-notice{display:block}\\\"]},{\\\"skin-theme-day-label\\\":\\\"Light\\\",\\\"skin-theme-description\\\":\\\"[Experimental version, high likelihood of experiencing issues] Reduces the light emitted by device screens.\\\",\\\"skin-theme-exclusion-notice\\\":\\\"This page is always in light mode.\\\",\\\"skin-theme-name\\\":\\\"Color\\\",\\\"skin-theme-night-label\\\":\\\"Dark\\\",\\\"skin-theme-os-label\\\":\\\"Automatic\\\",\\\"vector-feature-custom-font-size-0-label\\\":\\\"Small\\\",\\\"vector-feature-custom-font-size-1-label\\\":\\\"Standard\\\",\\\"vector-feature-custom-font-size-2-label\\\":\\\"Large\\\",\\\"vector-feature-custom-font-size-exclusion-notice\\\":\\\"This page always uses small font size\\\",\\\"vector-feature-custom-font-size-name\\\":\\\"Text\\\",\\\"vector-feature-limited-width-0-label\\\":\\\"Wide\\\",\\\"vector-feature-limited-width-1-label\\\":\\\"Standard\\\",\\\"vector-feature-limited-width-exclusion-notice\\\":\\\"The content is as wide as possible for your browser window.\\\",\\\"vector-feature-limited-width-name\\\":\\\"Width\\\",\\\"vector-night-mode-beta-tag\\\":\\\"(beta)\\\",\\\"vector-night-mode-issue-reporting-link-label\\\":\\\"Report an issue with dark mode\\\",\\\"vector-night-mode-issue-reporting-link-notification\\\":\\\"Report received!\\\",\\\"vector-night-mode-issue-reporting-notice-tooltip\\\":\\\"Report when dark mode colors make things difficult to read.\\\",\\\"vector-night-mode-issue-reporting-notice-url\\\":\\\"https:\\\\/\\\\/www.mediawiki.org\\\\/wiki\\\\/Reading\\\\/Web\\\\/Accessibility_for_reading\\\\/Reporting\\\\/$1?section=new&action=submit&preloadtitle=$2&preload=MediaWiki:vector-night-mode-issue-reporting-preload-content\\\",\\\"vector-night-mode-issue-reporting-preload-title\\\":\\\"$1 dark mode error\\\"}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=skins.vector.clientPreferences&skin=vector-2022&version=t7o8u\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=skins.vector.clientPreferences&skin=vector-2022&sourcemap=1&version=t7o8u\",\"ext.uls.common@134kr\":\"mw.loader.impl(function(){return[\\\"ext.uls.common@134kr\\\",function($,jQuery,require,module){(function(){'use strict';$.uls.data.addLanguage('als',{target:'gsw'});mw.uls=mw.uls||{};mw.uls.previousLanguagesStorageKey='uls-previous-languages';mw.uls.changeLanguage=function(language){mw.uls.setLanguage(language).then(()=>{location.reload();});};mw.uls.setLanguage=function(language){const api=new mw.Api();function changeLanguageAnon(){if(mw.config.get('wgULSAnonCanChangeLanguage')){mw.cookie.set('language',language);}return $.Deferred().resolve();}mw.hook('mw.uls.interface.language.change').fire(language);if(!mw.user.isNamed()){return changeLanguageAnon();}return api.get({action:'query',meta:'globalpreferences',gprprop:'preferences'}).then((res)=>{try{return!!res.query.globalpreferences.preferences.language;}catch(e){return false;}}).then((hasGlobalPreference)=>{let apiModule;if(hasGlobalPreference){apiModule='globalpreferenceoverrides';mw.storage.set('uls-gp','1');}else{apiModule='options';mw.storage.remove('uls-gp');}return api.postWithToken('csrf',{action:apiModule,optionname:'language',\\noptionvalue:language});}).catch(()=>changeLanguageAnon());};mw.uls.setPreviousLanguages=function(previousLanguages){mw.storage.setObject(mw.uls.previousLanguagesStorageKey,previousLanguages.slice(0,9));};mw.uls.convertMediaWikiLanguageCodeToULS=function(code){code=code.toLowerCase();return $.uls.data.isRedirect(code)||code;};mw.uls.getInterlanguageListFromNodes=function(nodes){const interlanguageList={};Array.prototype.forEach.call(nodes,(el)=>{const langCode=mw.uls.convertMediaWikiLanguageCodeToULS(el.lang);interlanguageList[langCode]=el;});return interlanguageList;};mw.uls.getPreviousLanguages=function(){return mw.storage.getObject(mw.uls.previousLanguagesStorageKey)||[];};mw.uls.addPreviousLanguage=function(language){const languages=mw.uls.getPreviousLanguages(),index=languages.indexOf(language);if(index!==-1){languages.splice(index,1);}languages.unshift(language);mw.uls.setPreviousLanguages(languages);};mw.uls.getBrowserLanguage=function(){return(window.navigator.language||'').split('-')[0];\\n};mw.uls.getCountryCode=function(){return window.Geo&&(window.Geo.country||window.Geo.country_code);};mw.uls.getAcceptLanguageList=function(){return mw.config.get('wgULSAcceptLanguageList')||window.navigator.languages||[];};mw.uls.getFrequentLanguageList=function(countryCode){const ret=[],lists=[[mw.config.get('wgUserLanguage'),mw.config.get('wgContentLanguage'),mw.uls.getBrowserLanguage()],mw.uls.getPreviousLanguages(),mw.uls.getAcceptLanguageList()];countryCode=countryCode||mw.uls.getCountryCode();if(countryCode){lists.push($.uls.data.getLanguagesInTerritory(countryCode));}for(let i=0;i<lists.length;i++){for(let j=0;j<lists[i].length;j++){const lang=lists[i][j];if(!ret.includes(lang)&&$.uls.data.getAutonym(lang)!==lang){ret.push(lang);}}}return ret;};mw.uls.shouldLoadUlsRewrite=function(){return!!mw.config.get('wgULSisRewriteEnabled')&&mw.config.get('skin')==='vector-2022';};}());\\n},{\\\"css\\\":[\\\".uls-menu{border-radius:2px; font-size:medium}.uls-search,.uls-language-settings-close-block{border-top-right-radius:2px;border-top-left-radius:2px}.uls-language-list{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.uls-menu.callout::before,.uls-menu.callout::after{border-top:10px solid var(--border-color-transparent,transparent);border-bottom:10px solid var(--border-color-transparent,transparent);display:inline-block; top:17px;position:absolute;content:''}.uls-menu.callout.selector-right::before{ border-left:10px solid var(--border-color-subtle,#c8ccd1); right:-11px}.uls-menu.callout.selector-right::after{ border-left:10px solid var(--border-color-inverted,#fff); right:-10px}.uls-menu.callout.selector-left::before{ border-right:10px solid var(--border-color-subtle,#c8ccd1); left:-11px}.uls-menu.callout.selector-left::after{ border-right:10px solid var(--border-color-inverted,#fff); left:-10px}.uls-ui-languages button{margin:5px 15px 5px 0;white-space:nowrap;overflow:hidden}.uls-search-wrapper-wrapper{position:relative;padding-left:40px;margin-top:5px;margin-bottom:5px}.uls-icon-back{background:transparent url(/w/extensions/UniversalLanguageSelector/resources/images/back-grey-ltr.svg?c9c25) no-repeat scroll center center;background-size:28px;height:32px;width:40px;display:block;position:absolute;left:0;border-right:1px solid var(--border-color-subtle,#c8ccd1);opacity:var(--opacity-icon-base,0.87)}.uls-icon-back:hover{opacity:1;cursor:pointer}.uls-menu .uls-no-results-view .uls-no-found-more{background-color:var(--background-color-base,#fff)}.uls-menu .uls-no-results-view h3{padding:0 28px;margin:0;color:var(--color-subtle,#54595d);font-size:1em;font-weight:normal}       .skin-vector .uls-menu{border-color:var(--border-color-subtle,#c8ccd1);box-shadow:0 4px 4px 0 var(--box-shadow-color-alpha-base,rgba(0,0,0,0.06)),0 0 8px 0 var(--box-shadow-color-alpha-base,rgba(0,0,0,0.06));font-size:0.875em;z-index:50}.skin-vector .uls-search{border-bottom-color:var(--border-color-subtle,#c8ccd1)}.skin-vector .uls-search-label{opacity:var(--opacity-icon-placeholder,0.51);transition:opacity 250ms}.skin-vector .uls-search-wrapper:hover .uls-search-label{opacity:var(--opacity-icon-base,0.87)}.skin-vector .uls-languagefilter,.skin-vector .uls-lcd-region-title{color:var(--color-subtle,#54595d)}.skin-vector .uls-filtersuggestion{color:var(--color-placeholder,#72777d)}\\\"]}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.uls.common&skin=vector-2022&version=b8u4w\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.uls.common&skin=vector-2022&sourcemap=1&version=b8u4w\",\"ext.centralNotice.display@1bibn\":\"mw.loader.impl(function(){return[\\\"ext.centralNotice.display@1bibn\\\",{\\\"main\\\":\\\"index.js\\\",\\\"files\\\":{\\\"index.js\\\":function(require,module,exports){(function(){let cn,bannerLoadedDeferredObj,requestedBannerName=null;const campaignMixins={},MAX_RECORD_IMPRESSION_DELAY=250,IMPRESSION_EVENT_LOGGING_SCHEMA='CentralNoticeImpression',PREVIEW_STORAGE_KEY_PREFIX='cn-banner-preview-';const Mixin=function(name){this.name=name;};Mixin.prototype.setPreBannerHandler=function(handlerFunc){this.preBannerHandler=handlerFunc;};Mixin.prototype.setPostBannerOrFailHandler=function(handlerFunc){this.postBannerOrFailHandler=handlerFunc;};Mixin.prototype.setFinalizeChooseAndMaybeDisplayHandler=function(handlerFunc){this.finalizeChooseAndMaybeDisplayHandler=handlerFunc;};function runMixinHooks(hookPropertyName,campaign){$.each(campaign.mixins,(mixinName,mixinParams)=>{if(!(mixinName in campaignMixins)){mw.log.warn('Mixin '+mixinName+' not registered.');return;}if(!(hookPropertyName in campaignMixins[mixinName])){return;}const handler=campaignMixins[mixinName][hookPropertyName];if(typeof handler!=='function'){mw.log.warn(hookPropertyName+' for '+mixinName+' not a function.');\\nreturn;}handler(mixinParams,campaign);});}function runPreBannerHooks(){runMixinHooks('preBannerHandler',cn.internal.state.getAttemptingCampaign());}function runPostBannerOrFailHooks(){runMixinHooks('postBannerOrFailHandler',cn.internal.state.getAttemptingCampaign());}function runFinalizeChooseAndMaybeDisplayHooks(){cn.internal.state.getAttemptedCampaigns().forEach((campaign)=>{runMixinHooks('finalizeChooseAndMaybeDisplayHandler',campaign);});}function setUpDataProperty(){try{Object.defineProperty(cn,'data',{get:function(){return cn.internal.state.getData();}});return;}catch(e){}cn.data=cn.internal.state.getData();}function setUpBannerLoadedPromise(){bannerLoadedDeferredObj=$.Deferred();cn.bannerLoadedPromise=bannerLoadedDeferredObj.promise();cn.events={};cn.events.bannerLoaded=cn.bannerLoadedPromise;}function encode(s){return encodeURIComponent(s).replace(/!/g,'%21').replace(/'/g,'%27').replace(/\\\\(/g,'%28').replace(/\\\\)/g,'%29').replace(/\\\\*/g,'%2A').replace(/%20/g,'+');}function fetchOrRetrieveBanner(){\\nconst data=cn.internal.state.getData();if(data.preview){$(()=>{const previewBannerContent=cn.kvStore.getItem(PREVIEW_STORAGE_KEY_PREFIX+data.banner,cn.kvStore.contexts.GLOBAL);if(previewBannerContent===null){mw.log.warn('Could not retrieve preview banner '+data.banner);}else{injectBannerHTML(previewBannerContent);}});}else{fetchBanner();}}function getBannerUrl(dispatcherUrl,data){const urlBase=new URL(dispatcherUrl,location);const urlQuery=['banner='+encode(data.banner),'uselang='+encode(data.uselang),'debug='+(!!data.debug).toString()];if(data.campaign){urlQuery.unshift('campaign='+encode(data.campaign));}const searchTitle=urlBase.searchParams.get('title');if(searchTitle){urlQuery.unshift('title='+mw.util.wikiUrlencode(searchTitle));}urlBase.search=urlQuery.join('&');urlBase.hash='';return urlBase;}function fetchBanner(){const url=getBannerUrl(mw.config.get('wgCentralNoticeActiveBannerDispatcher'),cn.internal.state.getData());$.ajax({url:url.toString(),dataType:'script',cache:true}).fail((jqXHR,status,error)=>{\\ncn.handleBannerLoaderError(status+': '+error);});}function injectBannerHTML(bannerHtml){$('div#centralNotice').attr('class',mw.html.escape('cn-'+cn.internal.state.getData().bannerCategory)).prepend(bannerHtml);if(window.performance&&performance.mark){performance.mark('mwCentralNoticeBanner');}}function resolveRecordImpressionDeferred(){cn.recordImpressionDeferredObj.done(reallyRecordImpression);cn.recordImpressionDeferredObj.resolve();}function recordImpression(){let timeoutHasRun=false;if(cn.recordImpressionDelayPromises.length===0){reallyRecordImpression();return;}const timeout=setTimeout(()=>{timeoutHasRun=true;resolveRecordImpressionDeferred();},MAX_RECORD_IMPRESSION_DELAY);$.when.apply($,cn.recordImpressionDelayPromises).always(()=>{if(!timeoutHasRun){clearTimeout(timeout);resolveRecordImpressionDeferred();}});}function reallyRecordImpression(){const state=cn.internal.state,random=Math.random();let dataCopy;if(random<=state.getData().recordImpressionSampleRate){const url=new URL(mw.config.get('wgCentralBannerRecorder'),location);\\ndataCopy=state.getDataCopy(true);Object.keys(dataCopy).forEach((key)=>url.searchParams.append(key,dataCopy[key]));sendBeacon(url.toString());}if(random<=state.getData().impressionEventSampleRate){dataCopy=dataCopy||state.getDataCopy(true);mw.eventLog.logEvent(IMPRESSION_EVENT_LOGGING_SCHEMA,dataCopy);}}function sendBeacon(urlStr){if(navigator.sendBeacon){try{navigator.sendBeacon(urlStr);}catch(e){}}else{setTimeout(()=>{document.createElement('img').src=urlStr;},0);}}function reallyChooseAndMaybeDisplay(){const chooser=cn.internal.chooser,bucketer=cn.internal.bucketer,state=cn.internal.state,hide=cn.internal.hide;state.setUp();setUpDataProperty();if(!chooser.choiceDataSeemsFresh(cn.choiceData)){state.setChoiceDataStale();return;}state.setAvailableCampaigns(chooser.makeAvailableCampaigns(cn.choiceData,state.getData().country,state.getData().region,state.getData().anonymous,state.getData().device));const maxCampaignFallbackConfig=mw.config.get('wgCentralNoticeMaxCampaignFallback');const maxCampaignFallback=Math.min(\\nstate.getData().availableCampaigns.length,maxCampaignFallbackConfig);let campaign;for(let i=0;i<maxCampaignFallback;i++){campaign=chooser.chooseCampaign(state.getData().availableCampaigns,state.getData().randomcampaign);if(campaign===null){break;}state.setAttemptingCampaign(campaign);bucketer.setCampaign(campaign);hide.setCategory(state.getData().campaignCategory);if(cn.kvStore){cn.kvStore.setCampaignName(state.getData().campaign);cn.kvStore.setCategory(state.getData().campaignCategory);}bucketer.process();state.setBucket(bucketer.getBucket());state.setReducedBucket(bucketer.getReducedBucket());if(!state.getData().anonymous){if(campaign.type===0||state.getData().optedOutCampaigns.includes(campaign.type)){state.failCampaign('userOptOut');runPreBannerHooks();runPostBannerOrFailHooks();fallbackLoopUpdateAvailableCampaigns(i);continue;}}hide.processCookie();if(hide.shouldHide()){state.failCampaign(hide.getReason());runPreBannerHooks();runPostBannerOrFailHooks();\\nfallbackLoopUpdateAvailableCampaigns(i);continue;}runPreBannerHooks();if(state.isCampaignFailed()){runPostBannerOrFailHooks();fallbackLoopUpdateAvailableCampaigns(i);continue;}break;}if(state.getAttemptingCampaign()===null){return;}if(state.isCampaignFailed()){runFinalizeChooseAndMaybeDisplayHooks();recordImpression();return;}let banner;if(requestedBannerName){banner=chooser.requestBanner(campaign,state.getData().reducedBucket,state.getData().anonymous,state.getData().device,requestedBannerName);if(!banner){state.setRequestedBannerNotAvailable(requestedBannerName);}}else{banner=chooser.chooseBanner(campaign,state.getData().reducedBucket,state.getData().anonymous,state.getData().device,state.getData().randombanner);if(!banner){state.setNoBannerAvailable();}}if(!banner){runPostBannerOrFailHooks();runFinalizeChooseAndMaybeDisplayHooks();recordImpression();return;}state.setBanner(banner);if(cn.kvStore){cn.kvStore.setBannerName(banner.name);}cn.bannerData.bannerName=banner.name;\\nsetUpBannerLoadedPromise();fetchBanner();}function fallbackLoopUpdateAvailableCampaigns(iteration){const state=cn.internal.state;state.setAvailableCampaigns(cn.internal.chooser.updateAvailableCampaigns(state.getData().availableCampaigns,state.getAttemptingCampaign(),iteration));}function processAfterBannerFetch(){if(!cn.internal.state.getData().testingBanner){runPostBannerOrFailHooks();runFinalizeChooseAndMaybeDisplayHooks();recordImpression();}}cn={reallyInsertBanner:function(bannerJson){const state=cn.internal.state;let shownAfterLoadingBanner=true;injectBannerHTML(bannerJson.bannerHtml);bannerLoadedDeferredObj.resolve(cn.internal.state.getData());if(state.getData().bannersNotGuaranteedToDisplay){if(typeof cn.bannerData.alterImpressionData==='function'){const tmpData=state.getDataCopy();shownAfterLoadingBanner=cn.bannerData.alterImpressionData(tmpData);if(!shownAfterLoadingBanner){const bannerLoadedButHiddenReason=tmpData.reason||'';state.setBannerLoadedButHidden(\\nbannerLoadedButHiddenReason);}if(tmpData.banner_count){state.setBannerCount(tmpData.banner_count);}}else{state.setAlterFunctionMissing();}}if(shownAfterLoadingBanner){state.setBannerShown();}processAfterBannerFetch();},recordImpressionDelayPromises:[],recordImpressionDeferredObj:null,internal:{},setBannersNotGuaranteedToDisplay:function(){cn.internal.state.setBannersNotGuaranteedToDisplay();},failCampaign:function(reason){cn.internal.state.failCampaign(reason);},cancelBanner:function(reason){cn.failCampaign(reason);},isCampaignFailed:function(){return cn.internal.state.isCampaignFailed();},isBannerCanceled:function(){return cn.isCampaignFailed();},isBannerShown:function(){return cn.internal.state.isBannerShown();},setBannerLoadedButHidden:function(reason){cn.internal.state.setBannerLoadedButHidden(reason);},setMinRecordImpressionSampleRate:function(rate){cn.internal.state.setMinRecordImpressionSampleRate(rate);},setMinImpressionEventSampleRate:function(rate){cn.internal.state.setMinImpressionEventSampleRate(rate);\\n},bannerData:{},Mixin:Mixin,registerCampaignMixin:function(mixin){campaignMixins[mixin.name]=mixin;},chooseAndMaybeDisplay:function(){mw.geoIP.getPromise().fail(cn.internal.state.setInvalidGeoData).done(cn.internal.state.setGeoData).always(reallyChooseAndMaybeDisplay);},displayTestingBanner:function(){mw.geoIP.getPromise().fail(cn.internal.state.setInvalidGeoData).done(cn.internal.state.setGeoData).always(()=>{cn.internal.state.setUpForTestingBanner();setUpDataProperty();setUpBannerLoadedPromise();fetchOrRetrieveBanner();});},insertBanner:function(bannerJson){$(()=>{cn.reallyInsertBanner(bannerJson);});},handleBannerLoaderError:function(msg){cn.internal.state.setBannerLoaderError(msg);bannerLoadedDeferredObj.reject(cn.internal.state.getData());processAfterBannerFetch();},hideBannerWithCloseButton:function(){$('#centralNotice').hide();cn.internal.hide.setHideWithCloseButtonCookies();},customHideBanner:function(reason,duration){$('#centralNotice').hide();cn.internal.hide.setHideCookies(reason,duration);\\n},hideBanner:function(){cn.hideBannerWithCloseButton();},setBucket:function(bucket){cn.internal.bucketer.setBucket(bucket);cn.internal.state.setBucket(bucket);cn.internal.state.setReducedBucket(cn.internal.bucketer.getReducedBucket());},requestBanner:function(banner){requestedBannerName=banner;},registerTest:function(identifier){cn.internal.state.registerTest(identifier);},setDebugInfo:function(str){cn.internal.state.setDebugInfo(str);},requestRecordImpressionDelay:function(promise){cn.recordImpressionDelayPromises.push(promise);cn.recordImpressionDeferredObj=cn.recordImpressionDeferredObj||$.Deferred();return cn.recordImpressionDeferredObj.promise();},getDataProperty:function(prop){return cn.internal.state.getData()[prop];}};if(window.QUnit){cn.test={getBannerUrl};}if(mw.centralNotice===undefined){mw.centralNotice=cn;}else{Object.assign(mw.centralNotice,cn);cn=mw.centralNotice;}mw.log.deprecate(window,'insertBanner',cn.insertBanner,'Use mw.centralNotice method instead');mw.log.deprecate(\\nwindow,'hideBanner',cn.hideBanner,'Use mw.centralNotice method instead');mw.log.deprecate(window,'cancelBanner',cn.cancelBanner,'Use mw.centralNotice.failCampaign() instead');mw.log.deprecate(window,'isBannerCanceled',cn.isBannerCanceled,'Use mw.centralNotice.isCampaignFailed() instead');mw.log.deprecate(window,'toggleNotice',cn.hideBanner,'Use mw.centralNotice method instead');require('./state.js');require('./chooser.js');require('./bucketer.js');require('./hide.js');}());\\n},\\\"state.js\\\":function(require,module,exports){(function(){let state=null,status,impressionEventSampleRateOverridden=false;const config=require('./config.json'),UNKNOWN_GEO_CODE='XX',CAMPAIGN_CATEGORY_FOR_MIXED_BANNER_CATEGORIES='mixed_banner_categories',DEVICES={DESKTOP:'desktop',IPHONE:'iphone',IPAD:'ipad',ANDROID:'android',UNKNOWN:'unknown'},STATUSES={CAMPAIGN_NOT_CHOSEN:new Status('campaign_not_chosen',0),CAMPAIGN_CHOSEN:new Status('campaign_chosen',1),BANNER_CANCELED:new Status('banner_canceled',2),NO_BANNER_AVAILABLE:new Status('no_banner_available',3),BANNER_CHOSEN:new Status('banner_chosen',4),BANNER_LOADED_BUT_HIDDEN:new Status('banner_loaded_but_hidden',5),BANNER_SHOWN:new Status('banner_shown',6),BANNER_LOADER_ERROR:new Status('banner_loader_error',7),CHOICE_DATA_STALE:new Status('choice_data_stale',8)},REASONS={other:0,close:1,waitdate:2,waitimps:3,waiterr:4,belowMinEdits:5,viewLimit:6,'seen-fullscreen':7,'cookies-disabled':8,donate:9,cookies:10,seen:11,empty:12,waitnorestart:13,waitnostorage:14,namespace:15,noStorage:16,\\nrequestedBannerNotAvailable:17,jsonParamError:18,bannerSequenceEmptyStep:19,bannerSequenceAllStepsSkipped:20,userOptOut:21};const campaignAttemptsManager=(function(){const attemptedCampaignStatusesByName={},hasOwn=Object.prototype.hasOwnProperty;return{setCampaignStatus:function(c,statusCode){let statusObj;if(!hasOwn.call(state.attemptedCampaignsByName,c.name)){statusObj={statusCode:statusCode,campaign:c.name,bannersCount:c.banners.length};state.data.campaignStatuses.push(statusObj);attemptedCampaignStatusesByName[c.name]=statusObj;state.attemptedCampaignsByName[c.name]=c;}else{attemptedCampaignStatusesByName[c.name].statusCode=statusCode;}},getAttemptedCampaigns:function(){return state.data.campaignStatuses.map((statusObj)=>state.attemptedCampaignsByName[statusObj.campaign]);}};}());function Status(key,code){this.key=key;this.code=code;}function getDeviceCode(){if(mw.config.get('skin')!=='minerva'){return DEVICES.DESKTOP;}const ua=navigator.userAgent;if(/iphone/i.test(ua)){return DEVICES.IPHONE;\\n}if(/ipad/i.test(ua)){return DEVICES.IPAD;}if(/android/i.test(ua)){return DEVICES.ANDROID;}return DEVICES.UNKNOWN;}function setInitialData(){const urlParams=state.urlParams;(new URL(location)).searchParams.forEach((value,key)=>{state.urlParams[key]=value;});state.data.anonymous=(!mw.user.isNamed());state.data.project=mw.config.get('wgNoticeProject');state.data.db=mw.config.get('wgDBname');state.data.optedOutCampaigns=getOptedOutCampaignsForUser();state.data.uselang=mw.config.get('wgUserLanguage');state.data.device=urlParams.device||getDeviceCode();state.data.country=urlParams.country||state.data.country||UNKNOWN_GEO_CODE;state.data.region=urlParams.region||(state.data.region!==undefined?state.data.region:false)||UNKNOWN_GEO_CODE;state.data.debug=(urlParams.debug!==undefined);state.data.randomcampaign=numericalUrlParamOrVal(urlParams.randomcampaign,Math.random());state.data.randombanner=numericalUrlParamOrVal(urlParams.randombanner,Math.random());state.data.recordImpressionSampleRate=numericalUrlParamOrVal(\\nurlParams.recordImpressionSampleRate,mw.config.get('wgCentralNoticeSampleRate'));const impressionEventSampleRateFromUrl=numericalUrlParamOrVal(urlParams.impressionEventSampleRate,null);if(impressionEventSampleRateFromUrl!==null){state.data.impressionEventSampleRate=impressionEventSampleRateFromUrl;impressionEventSampleRateOverridden=true;}else{state.data.impressionEventSampleRate=mw.config.get('wgCentralNoticeImpressionEventSampleRate');}state.data.getVars=urlParams;state.data.campaignStatuses=[];}function getOptedOutCampaignsForUser(){const blocked=[],regex=/^centralnotice-display-campaign-type-(.*)$/;if(mw.config.get('wgUserName')===null){return[];}const allOptions=Object.assign({},mw.user.options.values);for(const key in allOptions){if(!Object.prototype.hasOwnProperty.call(allOptions,key)){continue;}const matches=regex.exec(key);if(Array.isArray(matches)&&matches.length===2&&!allOptions[key]){blocked.push(matches[1]);}}return blocked;}function numericalUrlParamOrVal(urlParam,val){\\nconst urlParamAsFloat=parseFloat(urlParam);return!isNaN(urlParamAsFloat)?urlParamAsFloat:val;}function setTestingBannerData(){state.data.campaign=state.urlParams.campaign;state.data.banner=state.urlParams.banner;state.data.testingBanner=true;state.data.preview=(state.urlParams.preview!==undefined);}function setStatus(s,reason){const reasonCodeStr=reason?('.'+state.lookupReasonCode(reason)):'';status=s;state.data.status=s.key;state.data.statusCode=s.code.toString()+reasonCodeStr;if(state.data.campaign){campaignAttemptsManager.setCampaignStatus(state.campaign,state.data.statusCode);}}state=mw.centralNotice.internal.state={STATUSES:STATUSES,urlParams:{},data:{},campaign:null,banner:null,attemptedCampaignsByName:{},setGeoData:function(geo){if(geo){state.data.country=geo.country;state.data.region=geo.region;}},setInvalidGeoData:function(){state.data.country=UNKNOWN_GEO_CODE;state.data.region=UNKNOWN_GEO_CODE;},setUp:function(){setInitialData();setStatus(STATUSES.CAMPAIGN_NOT_CHOSEN);},\\nsetUpForTestingBanner:function(){setInitialData();setTestingBannerData();setStatus(STATUSES.BANNER_CHOSEN);},getData:function(){return state.data;},getDataCopy:function(prepareForLogging){const dataCopy=$.extend(true,{},state.data);if(prepareForLogging){delete dataCopy.getVars;delete dataCopy.mixins;delete dataCopy.tests;delete dataCopy.reducedBucket;delete dataCopy.availableCampaigns;delete dataCopy.optedOutCampaigns;dataCopy.campaignStatuses=JSON.stringify(dataCopy.campaignStatuses);}return dataCopy;},setAvailableCampaigns:function(availableCampaigns){state.data.availableCampaigns=availableCampaigns;},setAttemptingCampaign:function(c){let prop,i,category,campaignCategory=null;delete state.data.result;delete state.data.reason;delete state.data.bannerCanceledReason;delete state.data.bannersNotGuaranteedToDisplay;state.campaign=c;state.data.campaign=c.name;setStatus(STATUSES.CAMPAIGN_CHOSEN);state.data.mixins={};for(prop in c.mixins){if(Object.hasOwnProperty.call(c.mixins,prop)){state.data.mixins[prop]=true;\\n}}for(i=0;i<state.campaign.banners.length;i++){category=state.campaign.banners[i].category;if(campaignCategory===null){campaignCategory=category;}else if(campaignCategory!==category){campaignCategory=CAMPAIGN_CATEGORY_FOR_MIXED_BANNER_CATEGORIES;break;}}state.data.campaignCategory=campaignCategory;state.data.campaignCategoryUsesLegacy=config.categoriesUsingLegacy.includes(campaignCategory);},getAttemptingCampaign:function(){return state.campaign===undefined?null:state.campaign;},setBanner:function(b){state.banner=b;state.data.banner=state.banner.name;state.data.bannerCategory=state.banner.category;setStatus(STATUSES.BANNER_CHOSEN);},setBucket:function(bucket){state.data.bucket=bucket;},setReducedBucket:function(reducedBucket){state.data.reducedBucket=reducedBucket;},setBannersNotGuaranteedToDisplay:function(){state.data.bannersNotGuaranteedToDisplay=true;},cancelBanner:function(reason){state.failCampaign(reason);},failCampaign:function(reason){state.data.bannerCanceledReason=reason;\\nsetStatus(STATUSES.BANNER_CANCELED,reason);state.data.result='hide';state.data.reason=reason;},isBannerCanceled:function(){return state.isCampaignFailed();},isCampaignFailed:function(){return status===STATUSES.BANNER_CANCELED;},isBannerShown:function(){return status===STATUSES.BANNER_SHOWN;},setNoBannerAvailable:function(){setStatus(STATUSES.NO_BANNER_AVAILABLE);state.data.result='hide';state.data.reason='empty';},setRequestedBannerNotAvailable:function(bannerName){state.data.requestedBanner=bannerName;setStatus(STATUSES.NO_BANNER_AVAILABLE,'requestedBannerNotAvailable');},setBannerLoadedButHidden:function(reason){state.data.bannerLoadedButHiddenReason=reason;setStatus(STATUSES.BANNER_LOADED_BUT_HIDDEN,reason);state.data.result='hide';state.data.reason=reason;},setAlterFunctionMissing:function(){state.data.alterFunctionMissing=true;},setBannerShown:function(){setStatus(STATUSES.BANNER_SHOWN);state.data.result='show';},setBannerCount:function(bannerCount){state.data.banner_count=bannerCount;\\n},setMinRecordImpressionSampleRate:function(rate){if(rate>state.data.recordImpressionSampleRate){state.data.recordImpressionSampleRate=rate;}},setMinImpressionEventSampleRate:function(rate){if(!impressionEventSampleRateOverridden&&rate>state.data.impressionEventSampleRate){state.data.impressionEventSampleRate=rate;}},setBannerLoaderError:function(msg){if(msg){state.data.errorMsg=msg;}setStatus(STATUSES.BANNER_LOADER_ERROR);},setChoiceDataStale:function(){setStatus(STATUSES.CHOICE_DATA_STALE);},registerTest:function(identifier){const tests=state.data.tests=state.data.tests||[];if(!tests.includes(identifier)){tests.push(identifier);if(tests.length===1){state.data.testIdentifiers=identifier;}else{state.data.testIdentifiers+=','+identifier;}}},setDebugInfo:function(str){if(!state.data.debugInfo){state.data.debugInfo=str;}else{state.data.debugInfo+='|'+str;}},lookupReasonCode:function(reasonName){if(reasonName in REASONS){return REASONS[reasonName];}return REASONS.other;},\\ncountCampaignsAttempted:function(){return state.data.campaignStatuses.length;},getAttemptedCampaigns:function(){return campaignAttemptsManager.getAttemptedCampaigns();}};}());\\n},\\\"chooser.js\\\":function(require,module,exports){(function(){const cn=mw.centralNotice,CAMPAIGN_STALENESS_LEEWAY=15;function setCampaignAllocations(availableCampaigns){const campaignsByPriority=[],priorities=[];let remainingAllocation=1;if(availableCampaigns.length===1){availableCampaigns[0].allocation=availableCampaigns[0].throttle/100;return;}for(let i=0;i<availableCampaigns.length;i++){const campaign=availableCampaigns[i];const campaignPriority=campaign.preferred;if(!campaignsByPriority[campaignPriority]){campaignsByPriority[campaignPriority]=[];}campaignsByPriority[campaignPriority].push(campaign);}for(const priority in campaignsByPriority){priorities.push(priority);}priorities.sort();priorities.reverse();for(let i=0;i<priorities.length;i++){const campaignsAtThisPriority=campaignsByPriority[priorities[i]];if(remainingAllocation<0.01){for(let j=0;j<campaignsAtThisPriority.length;j++){campaignsAtThisPriority[j].allocation=0;}continue;}campaignsAtThisPriority.sort((a,b)=>{if(a.throttle<b.throttle){return-1;}if(a.throttle>b.throttle){\\nreturn 1;}return 0;});const campaignsAtThisPriorityCount=campaignsAtThisPriority.length;for(let j=0;j<campaignsAtThisPriorityCount;j++){const campaign=campaignsAtThisPriority[j];const currentFullAllocation=remainingAllocation/(campaignsAtThisPriorityCount-j);const actualAllocation=Math.min(currentFullAllocation,campaign.throttle/100);campaign.allocation=actualAllocation;remainingAllocation-=actualAllocation;}}}function makePossibleBanners(campaign,bucket,anon,device){const possibleBanners=[];const campaignName=campaign.name;for(let i=0;i<campaign.banners.length;i++){const banner=campaign.banners[i];if(bucket!==banner.bucket){continue;}if(anon&&!banner.display_anon){continue;}if(!anon&&!banner.display_account){continue;}if(!banner.devices.includes(device)){continue;}possibleBanners.push(banner);}return possibleBanners;}function setBannerAllocations(possibleBanners){let totalWeights=0;if(possibleBanners.length===1){possibleBanners[0].allocation=1;return;}for(let i=0;i<possibleBanners.length;i++){\\ntotalWeights+=possibleBanners[i].weight;}for(let i=0;i<possibleBanners.length;i++){const banner=possibleBanners[i];banner.allocation=banner.weight/totalWeights;}}function chooseObjInAllocatedArray(random,allocatedArray){let blockStart=0;for(let i=0;i<allocatedArray.length;i++){const obj=allocatedArray[i];const blockEnd=blockStart+obj.allocation;if((random>=blockStart)&&(random<blockEnd)){return obj;}blockStart=blockEnd;}return null;}cn.internal.chooser={makeAvailableCampaigns:function(choiceData,country,region,anon,device){const availableCampaigns=[];const uniqueRegionCode=country+'_'+region;for(let i=0;i<choiceData.length;i++){const campaign=choiceData[i];let keepCampaign=false;if(campaign.geotargeted&&(!campaign.countries.includes(country)&&!campaign.regions.includes(uniqueRegionCode))){continue;}for(let j=0;j<campaign.banners.length;j++){const banner=campaign.banners[j];if(anon&&!banner.display_anon){continue;}if(!anon&&!banner.display_account){continue;}if(!banner.devices.includes(device)){\\ncontinue;}keepCampaign=true;break;}if(keepCampaign){availableCampaigns.push(campaign);}}return availableCampaigns;},updateAvailableCampaigns:function(previousAvailableCampaigns,failedCampaign,fallbackLoopIndex){const newAvailableCampaigns=previousAvailableCampaigns.slice(),cIndex=newAvailableCampaigns.map((c)=>c.name).indexOf(failedCampaign.name);if(cIndex===-1){mw.log.warn('Failed campaign was not in list of available campaigns');}else{newAvailableCampaigns.splice(cIndex,1);}return newAvailableCampaigns;},choiceDataSeemsFresh:function(choiceData){const now=new Date();for(let i=0;i<choiceData.length;i++){const campaign=choiceData[i];const campaignEndDatePlusLeeway=new Date();campaignEndDatePlusLeeway.setTime((campaign.end*1000)+(CAMPAIGN_STALENESS_LEEWAY*60000));if(campaignEndDatePlusLeeway<now){return false;}}return true;},chooseCampaign:function(availableCampaigns,random){if(availableCampaigns.length===0){return null;}setCampaignAllocations(availableCampaigns);return chooseObjInAllocatedArray(random,availableCampaigns);\\n},chooseBanner:function(campaign,bucket,anon,device,random){const possibleBanners=makePossibleBanners(campaign,bucket,anon,device);if(possibleBanners.length===0){return null;}setBannerAllocations(possibleBanners);return chooseObjInAllocatedArray(random,possibleBanners);},requestBanner:function(campaign,bucket,anon,device,requestedBannerName){const possibleBanners=makePossibleBanners(campaign,bucket,anon,device);for(let i=0;i<possibleBanners.length;i++){const possibleBanner=possibleBanners[i];if(possibleBanner.name===requestedBannerName){return possibleBanner;}}return null;}};}());\\n},\\\"bucketer.js\\\":function(require,module,exports){(function(){let buckets=null,campaign=null,multiStorageOption;const kvStore=mw.centralNotice.kvStore,LEGACY_COOKIE='CN',STORAGE_KEY='buckets';function escapeCampaignName(name){return name.replace(/[*!]/g,(match)=>'&#'+match.charCodeAt(0));}function decodeCampaignName(name){return name.replace(/&#(33|42)/,(match,$1)=>String.fromCharCode($1));}function parseSerializedBuckets(serialized){const parsedBuckets={};serialized.split('*').forEach((strBucket)=>{const parts=strBucket.split('!'),key=decodeCampaignName(parts[0]),start=parseInt(parts[1],10)+14e8,end=start+parseInt(parts[2],10),val=parseInt(parts[3],10);if(key&&start&&end&&!isNaN(val)){parsedBuckets[key]={start:start,end:end,val:val};}});return parsedBuckets;}function possiblyLoadAndMigrateLegacyBuckets(){const cookieVal=$.cookie(LEGACY_COOKIE);if(cookieVal){buckets=parseSerializedBuckets(cookieVal);storeBuckets();$.removeCookie(LEGACY_COOKIE,{path:'/'});return true;}return false;}function loadBuckets(){const val=kvStore.getItem(\\nSTORAGE_KEY,kvStore.contexts.GLOBAL,multiStorageOption);buckets=(val?parseSerializedBuckets(val):{});}function storeBuckets(){let expires=Math.ceil(Date.now()/1000);const serialized=$.map(buckets,(opts,key)=>{const parts=[escapeCampaignName(key),Math.floor(opts.start-14e8),Math.ceil(opts.end-opts.start),opts.val];if(opts.end>expires){expires=Math.ceil(opts.end);}return parts.join('!');}).join('*');kvStore.setItem(STORAGE_KEY,serialized,kvStore.contexts.GLOBAL,Math.ceil((expires-(Date.now()/1000))/86400),multiStorageOption);}function getRandomBucket(){return Math.floor(Math.random()*mw.config.get('wgNoticeNumberOfControllerBuckets'));}function retrieveProcessAndGet(){let campaignName=campaign.name,bucketsModified=false;const extension=mw.config.get('wgCentralNoticePerCampaignBucketExtension'),now=new Date();const campaignStartDate=new Date();campaignStartDate.setTime(campaign.start*1000);let bucketEndDate=new Date();bucketEndDate.setTime(campaign.end*1000);bucketEndDate.setUTCDate(bucketEndDate.getUTCDate()+extension);\\nmultiStorageOption=kvStore.getMultiStorageOption(true);if(!possiblyLoadAndMigrateLegacyBuckets()){loadBuckets();}let bucket=buckets[campaignName];if(bucket&&bucketEndDate>now){const retrievedBucketEndDate=new Date();retrievedBucketEndDate.setTime(bucket.end*1000);if(retrievedBucketEndDate.getTime()!==bucketEndDate.getTime()){bucket.end=bucketEndDate.getTime()/1000;bucketsModified=true;}}else{const val=getRandomBucket();bucket={val:val,start:campaignStartDate.getTime()/1000,end:bucketEndDate.getTime()/1000};buckets[campaignName]=bucket;bucketsModified=true;}for(campaignName in buckets){bucketEndDate=new Date();bucketEndDate.setTime(buckets[campaignName].end*1000);if(bucketEndDate<now){delete buckets[campaignName];bucketsModified=true;}}if(bucketsModified){storeBuckets();}}const bucketer=mw.centralNotice.internal.bucketer={setCampaign:function(c){campaign=c;},process:function(){retrieveProcessAndGet();},getBucket:function(){return buckets[campaign.name].val;},getReducedBucket:function(){\\nreturn bucketer.getBucket()%campaign.bucket_count;},setBucket:function(val){buckets[campaign.name].val=val;storeBuckets();}};}());\\n},\\\"hide.js\\\":function(require,module,exports){(function(){let category,cookieName,shouldHide,reason;const durations=mw.config.get('wgNoticeCookieDurations'),HIDE_COOKIE_PREFIX='centralnotice_hide_',MAX_CUSTOM_HIDE_DURATION=2592000;function removeCookie(){$.cookie(cookieName,null,{path:'/'});}const hide=mw.centralNotice.internal.hide={setCategory:function(c){shouldHide=false;reason=null;category=c;cookieName=HIDE_COOKIE_PREFIX+category;},processCookie:function(){const rawCookieVal=$.cookie(cookieName);if(!rawCookieVal){return;}if(rawCookieVal==='hide'){removeCookie();return;}let hideData;try{hideData=JSON.parse(rawCookieVal);}catch(e){removeCookie();return;}const now=Date.now()/1000;if(now<hideData.created+(durations[hideData.reason]||MAX_CUSTOM_HIDE_DURATION)){shouldHide=true;reason=hideData.reason;}},shouldHide:function(){return shouldHide;},getReason:function(){return reason;},setHideCookies:function(newReason,duration){const date=new Date(),hideData={v:1,created:Math.floor(date.getTime()/1000),reason:newReason};if(!(newReason in durations)){\\nduration=Math.min(MAX_CUSTOM_HIDE_DURATION,duration);}date.setSeconds(date.getSeconds()+duration);$.cookie(cookieName,JSON.stringify(hideData),{expires:date,path:'/'});this.fetchHideUrls(mw.config.get('wgNoticeHideUrls'),duration,category,newReason);},fetchHideUrls:function(hideUrls,duration,categoryName,newReason){return hideUrls.map((hideUrl)=>{const url=new URL(hideUrl,location);url.searchParams.set('duration',duration);url.searchParams.set('category',categoryName);url.searchParams.set('reason',newReason);const img=document.createElement('img');img.src=url.toString();return img;});},setHideWithCloseButtonCookies:function(){hide.setHideCookies('close',durations.close);}};}());\\n},\\\"config.json\\\":{\\\"categoriesUsingLegacy\\\":[\\\"Fundraising\\\",\\\"fundraising\\\"]}}},{\\\"css\\\":[\\\"@media print{#centralNotice{display:none}}.cn-closeButton{display:inline-block;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUBAMAAAB/pwA+AAAAElBMVEUAAAAQEBDPz88AAABAQEDv7+9oe1vvAAAABnRSTlMA3rLe3rJS22KzAAAARElEQVQI12PAAUIUQCSTK5BwFgIxFU1AhKECUFAYKAAioXwwBeZChMGCEGGQIFQYJohgIhQgtCEMQ7ECYTHCOciOxA4AADgJTXIb9s8AAAAASUVORK5CYII=) no-repeat;width:20px;height:20px;text-indent:20px;white-space:nowrap;overflow:hidden}\\\"]}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.209Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.display&skin=vector-2022&version=10yis\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.display&skin=vector-2022&sourcemap=1&version=10yis\",\"ext.uls.interface@72y8p\":\"mw.loader.impl(function(){return[\\\"ext.uls.interface@72y8p\\\",{\\\"main\\\":\\\"js/ext.uls.interface.js\\\",\\\"files\\\":{\\\"js/ext.uls.interface.js\\\":function(require,module,exports){(function(){'use strict';const languageSettingsModules=['ext.uls.displaysettings'],launchULS=require('./ext.uls.launch.js'),ActionsMenu=require('./ext.uls.actions.menu.js'),ActionsMenuItem=require('./ext.uls.actions.menu.item.js');require('./ext.uls.actions.menu.items.registry.js');function isUsingStandaloneLanguageButton(){return $('#p-lang-btn').length>0||mw.config.get('wgULSDisplaySettingsInInterlanguage');}function openLanguageSettings($element,onCloseHandler,uls){mw.loader.using(languageSettingsModules).then(()=>{$element.languagesettings({defaultModule:'display',onClose:onCloseHandler,onPosition:uls.position.bind(uls),onVisible:uls.hide.bind(uls)}).trigger('click');});}function addEmptyState(uls){const $emptyStateContainer=$('<section>').addClass('uls-empty-state');function openActionsMenuEventHandler(event){event.stopPropagation();function onMenuClose(){uls.show();}openLanguageSettings($(event.target),onMenuClose,uls);}const languageSettingsMenuItem={name:'languageSettings',icon:'settings',\\ntext:$.i18n('ext-uls-actions-menu-language-settings-item-label'),handler:openActionsMenuEventHandler};const actionItemsRegistry=mw.uls.ActionsMenuItemsRegistry;actionItemsRegistry.register(languageSettingsMenuItem);const $header=$('<h3>').addClass('uls-empty-state__header').text($.i18n('ext-uls-empty-state-header'));const $desc=$('<p>').addClass('uls-empty-state__desc').text($.i18n('ext-uls-empty-state-desc'));$emptyStateContainer.append($header,$desc);uls.$resultsView.append($emptyStateContainer);if(actionItemsRegistry.size()>1){$header.text($.i18n('ext-uls-empty-state-header-actions-available'));$desc.text($.i18n('ext-uls-empty-state-desc-actions-available'));}mw.loader.using(['oojs-ui-widgets','oojs-ui.styles.icons-interactions']).then(()=>{const $actionsList=$('<ul>').addClass('uls-language-action-items');actionItemsRegistry.getItems().forEach((actionItem)=>{const actionButton=new ActionsMenuItem(actionItem.icon,actionItem.text,actionItem.handler,actionItem.href).render();\\n$actionsList.append($('<li>').append(actionButton.$element));});$emptyStateContainer.append($actionsList);});}function createMenuButton(buttonClass){const classes=['cdx-button','cdx-button--weight-quiet',buttonClass];return $('<button>').addClass(classes);}function addLanguageSettingsTrigger(uls){const $ulsSettingsBlock=uls.$menu.find('#uls-settings-block').eq(0);$ulsSettingsBlock.addClass('uls-settings-block--vector-2022');const $languageSettingsMenuButton=createMenuButton('uls-language-settings-button');$languageSettingsMenuButton.one('click',()=>{openLanguageSettings($languageSettingsMenuButton,uls.show.bind(uls),uls);});$ulsSettingsBlock.append($languageSettingsMenuButton);uls.$menu.addClass('notheme skin-invert');return $ulsSettingsBlock;}function addActionsMenuTriggers(uls){const $ulsSettingsBlock=addLanguageSettingsTrigger(uls);const actionItemsRegistry=mw.uls.ActionsMenuItemsRegistry;actionItemsRegistry.on('register',onActionItemAdded);let addLanguagesMenuDialog;let $addLanguagesMenuButton;\\nconst prependAddLanguagesMenuButton=function(){$addLanguagesMenuButton=createMenuButton('uls-add-languages-button').attr({'data-i18n':'ext-uls-add-languages-button-label'}).i18n();$ulsSettingsBlock.addClass('uls-settings-block--with-add-languages');$ulsSettingsBlock.prepend($addLanguagesMenuButton);mw.loader.using(['oojs-ui-widgets','oojs-ui.styles.icons-interactions']).then(()=>{$addLanguagesMenuButton.on('click',()=>{addLanguagesMenuDialog=addLanguagesMenuDialog||new ActionsMenu({actions:actionItemsRegistry.getItems(),onPosition:uls.position.bind(uls),onClose:uls.show.bind(uls)});addLanguagesMenuDialog.render();uls.hide();});});};if(actionItemsRegistry.size()){prependAddLanguagesMenuButton();}function onActionItemAdded(itemName,item){if(!$addLanguagesMenuButton){prependAddLanguagesMenuButton();}else if(addLanguagesMenuDialog){addLanguagesMenuDialog.renderAction(item);}}}function userCanChangeLanguage(){return mw.config.get('wgULSAnonCanChangeLanguage')||mw.user.isNamed();}function showUndoTooltip(previousLang,previousAutonym){\\nlet popup=null;const configPosition=mw.config.get('wgULSPosition'),triggerSelector=(configPosition==='interlanguage')?'.uls-settings-trigger, .mw-interlanguage-selector':'.uls-trigger';const trigger=document.querySelector(triggerSelector)||document.querySelector('#pt-preferences');if(!trigger){return;}function hideTipsy(){popup.toggle(false);}function showTipsy(timeout){let tipsyTimer=0;popup.toggle(true);popup.toggleClipping(true);$('.uls-tipsy').on('mouseover',()=>{clearTimeout(tipsyTimer);}).on('mouseout',()=>{tipsyTimer=setTimeout(hideTipsy,timeout);}).on('click',hideTipsy);tipsyTimer=setTimeout(hideTipsy,timeout);}let popupPosition;if(configPosition==='interlanguage'){popupPosition='after';}else{popupPosition='below';}popup=new OO.ui.PopupWidget({padded:true,width:300,classes:['uls-tipsy'],$floatableContainer:$(trigger),position:popupPosition,$content:(function(){const $link=$('<a>').text(previousAutonym).prop({href:'',class:'uls-prevlang-link',lang:previousLang,dir:'auto'}).on('click',(event)=>{\\nevent.preventDefault();mw.hook('mw.uls.language.revert').fire();mw.loader.using(['ext.uls.common']).then(()=>{mw.uls.changeLanguage(event.target.lang);});});let messageKey;if(mw.storage.get('uls-gp')==='1'){messageKey='ext-uls-undo-language-tooltip-text-local';}else{messageKey='ext-uls-undo-language-tooltip-text';}return $('<p>').append(mw.message(messageKey,$link).parseDom());}())});popup.$element.appendTo(document.body);setTimeout(()=>{showTipsy(6000);},700);$(trigger).on('mouseover',()=>{if(!$('.uls-menu:visible').length){showTipsy(3000);}});}function initSecondaryEntryPoints(){$('.uls-settings-trigger').one('click',(e)=>{e.preventDefault();mw.loader.using(languageSettingsModules,()=>{$(e.target).languagesettings();$(e.target).trigger('click');});});}function initInterlanguageEntryPoint(){const $pLang=$('#p-lang');const $trigger=$('<button>').addClass('uls-settings-trigger').prop('title',mw.msg('ext-uls-select-language-settings-icon-tooltip'));$pLang.prepend($trigger);if(!$pLang.find('div ul').children().length&&isUsingStandaloneLanguageButton){\\n$pLang.find('h3').text(mw.msg('uls-plang-title-languages'));}const clickHandler=function(e){const languagesettings=$trigger.data('languagesettings');if(languagesettings){if(!languagesettings.shown){mw.hook('mw.uls.settings.open').fire('interlanguage');}return;}const languageSettingsOptions={defaultModule:'display',onPosition:function(){const ulsTriggerHeight=this.$element.height(),ulsTriggerWidth=this.$element[0].offsetWidth,ulsTriggerOffset=this.$element.offset();const caretRadius=12;let left;if(ulsTriggerOffset.left>$(window).width()/2){left=ulsTriggerOffset.left-this.$window.width()-caretRadius;this.$window.removeClass('selector-left').addClass('selector-right');}else{left=ulsTriggerOffset.left+ulsTriggerWidth+caretRadius;this.$window.removeClass('selector-right').addClass('selector-left');}const top=ulsTriggerOffset.top+(ulsTriggerHeight/2)-(caretRadius+16);return{top:top,left:left};},onVisible:function(){this.$window.addClass('callout');}};mw.loader.using(languageSettingsModules,()=>{\\n$trigger.languagesettings(languageSettingsOptions).trigger('click');});e.stopPropagation();};$trigger.on('click',clickHandler);}function initPersonalEntryPoint(){const $trigger=$('.uls-trigger');let clickHandler;if(!userCanChangeLanguage()){clickHandler=function(e){const languagesettings=$trigger.data('languagesettings');e.preventDefault();if(languagesettings){if(!languagesettings.shown){mw.hook('mw.uls.settings.open').fire('personal');}}else{mw.loader.using(languageSettingsModules,()=>{$trigger.languagesettings({autoOpen:true});mw.hook('mw.uls.settings.open').fire('personal');});e.stopPropagation();}};}else{clickHandler=function(e,eventParams){const uls=$trigger.data('uls');e.preventDefault();if(uls){if(!uls.shown){mw.hook('mw.uls.settings.open').fire('personal');}}else{mw.loader.using('ext.uls.mediawiki',()=>{$trigger.uls({quickList:function(){return mw.uls.getFrequentLanguageList();},onPosition:function(){const offset=$trigger.offset();const width=$trigger.outerWidth();const height=$trigger.outerHeight();\\nlet positionCSS;if(offset.left+(width/2)>$(window).width()/2){positionCSS={right:$(window).width()-(offset.left+width),top:offset.top+height};}else{positionCSS={left:offset.left,top:offset.top+height};}return positionCSS;},onReady:function(){addLanguageSettingsTrigger(this);},onSelect:function(language){mw.uls.changeLanguage(language);},ulsPurpose:'interface-language'});setTimeout(()=>{$trigger.trigger('click',eventParams);},0);});}};}$trigger.on('click',clickHandler);$trigger.one('mouseover',()=>{mw.loader.load(languageSettingsModules);});}function initLanguageChangeUndoTooltip(){if(!userCanChangeLanguage()){return;}const previousLanguage=mw.storage.get('uls-previous-language-code');const currentLanguage=mw.config.get('wgUserLanguage');const previousAutonym=mw.storage.get('uls-previous-language-autonym');const currentAutonym=require('../data.json').currentAutonym;if(!previousLanguage||!previousAutonym){mw.storage.set('uls-previous-language-code',currentLanguage);mw.storage.set('uls-previous-language-autonym',currentAutonym);\\nreturn;}if(previousLanguage!==currentLanguage){mw.loader.using('oojs-ui-core').then(()=>{showUndoTooltip(previousLanguage,previousAutonym);});mw.storage.set('uls-previous-language-code',currentLanguage);mw.storage.set('uls-previous-language-autonym',currentAutonym);mw.loader.using(['ext.uls.common']).then(()=>{mw.uls.addPreviousLanguage(currentLanguage);});}}function initIme(){const imeSelector=mw.config.get('wgULSImeSelectors').join(', ');$(document.body).on('focus.imeinit',imeSelector,function(){const $input=$(this);$(document.body).off('.imeinit');mw.loader.using('ext.uls.ime',()=>{mw.ime.setup();mw.ime.handleFocus($input);});});}function handleCheckboxSelector(){$(document).on('input','input.mw-interlanguage-selector[type=\\\"checkbox\\\"]',(ev)=>{const elem=ev.currentTarget;elem.checked=false;});$(document).on('keydown','input.mw-interlanguage-selector[type=\\\"checkbox\\\"]',(ev)=>{const elem=ev.currentTarget;if(ev.key!=='Enter'){return;}elem.click();});}function loadContentLanguageSelector(ev){\\nconst $target=$(ev.currentTarget);if($target.attr('data-uls-loaded')){return;}$target.attr('data-uls-loaded',true);ev.preventDefault();if(shouldLoadUlsRewrite()){mw.loader.using(['ext.uls.mediawiki','ext.uls.rewrite']).then(()=>{const languageNodes=getLanguageNodes();const{createUniversalLanguageSelector}=require('ext.uls.rewrite');const{h}=require('vue');const mountPoint=document.createElement('div');document.body.appendChild(mountPoint);const app=createUniversalLanguageSelector({triggerElement:ev.currentTarget,selectableLanguages:mw.uls.getInterlanguageListFromNodes(languageNodes),onSelect:(language)=>{window.location.assign(language.value.href);},slots:{'language-item':({item})=>h('a',{href:item.href},item.text)}});const mountedVm=app.mount(mountPoint);$target.on('click',(event)=>{event.preventDefault();event.stopPropagation();mountedVm.toggle();});});return;}mw.loader.using(['ext.uls.mediawiki','@wikimedia/codex']).then(()=>{const languageNodes=getLanguageNodes();const standalone=isUsingStandaloneLanguageButton();\\nlaunchULS($target,mw.uls.getInterlanguageListFromNodes(languageNodes),!standalone);if(standalone){const uls=$target.data('uls');if(languageNodes.length){addActionsMenuTriggers(uls);}else{uls.$menu.find('#uls-settings-block').eq(0).hide();addEmptyState(uls);}$target.trigger('click');}else{$target.trigger('click');}});}function initContentLanguageSelectorClickHandler(){if($('.sidebar-inner').length){$('.sidebar-inner #p-lang').one('click','.mw-interlanguage-selector',loadContentLanguageSelector);}else{$(document).on('click','.mw-interlanguage-selector',loadContentLanguageSelector);handleCheckboxSelector();}}function addLanguageSettingsToNonContentPages(){const $languageBtn=$('#p-lang-btn');const clickHandler=function(event){event.stopPropagation();mw.loader.using(languageSettingsModules).then(()=>{$(event.target).languagesettings({autoOpen:true,onPosition:function(){const offset=$languageBtn.offset();const top=offset.top+$languageBtn.outerHeight();const right=$(window).width()-offset.left-$languageBtn.outerWidth();\\nreturn{top:top,right:right};}});});};$languageBtn.one('mouseover',()=>{mw.loader.using(['oojs-ui-widgets','oojs-ui.styles.icons-interactions','ext.uls.messages']).then(()=>{const actionButton=new ActionsMenuItem('settings',$.i18n('ext-uls-actions-menu-language-settings-item-label'),clickHandler,null).render();actionButton.$element.addClass('empty-language-selector__language-settings-button');const $emptyLanguageSelectorBody=$('.mw-portlet-empty-language-selector-body');$emptyLanguageSelectorBody.after(actionButton.$element);});});}function init(){if(mw.config.get('skin')==='vector-2022'&&mw.config.get('wgULSisLanguageSelectorEmpty')){addLanguageSettingsToNonContentPages();}initLanguageChangeUndoTooltip();initIme();initSecondaryEntryPoints();const position=mw.config.get('wgULSPosition');if(position==='interlanguage'){initInterlanguageEntryPoint();}else{initPersonalEntryPoint();}const compact=mw.config.get('wgULSisCompactLinksEnabled');const languageInHeader=mw.config.get('wgVector2022LanguageInHeader');\\nif(compact||languageInHeader){initContentLanguageSelectorClickHandler();}else{$('.mw-interlanguage-selector').removeClass('mw-interlanguage-selector');document.body.classList.add('mw-interlanguage-selector-disabled');}}function shouldLoadUlsRewrite(){return!!mw.config.get('wgULSisRewriteEnabled')&&mw.config.get('skin')==='vector-2022';}let languageNodesCache=null;function getLanguageNodes(){if(languageNodesCache===null){const parent=document.querySelectorAll('.mw-portlet-lang, #p-lang')[0];languageNodesCache=parent?parent.querySelectorAll('.interlanguage-link-target'):[];}return languageNodesCache;}if(document.readyState==='interactive'){init();}else{$(init);}}());\\n},\\\"js/ext.uls.launch.js\\\":function(require,module,exports){let commonInterlanguageList=null;function filterForCommonLanguagesForUser(languageCodes){if(commonInterlanguageList===null){commonInterlanguageList=mw.uls.getFrequentLanguageList().filter((language)=>languageCodes.includes(language));}return commonInterlanguageList;}function languageObjectTextContent(languagesObject){const newLanguageObject={};Object.keys(languagesObject).forEach((langCode)=>{newLanguageObject[langCode]=languagesObject[langCode].textContent;});return newLanguageObject;}function launchULS($trigger,languagesObject,forCLS){const ulsConfig={onSelect:function(language,event){$trigger.removeClass('selector-open');mw.uls.addPreviousLanguage(language);if(event.target instanceof HTMLAnchorElement&&(event.metaKey||event.shiftKey||event.ctrlKey)){return;}mw.hook('mw.uls.interface.language.change').fire(language,'content-language-switcher');location.href=languagesObject[language].href;},onPosition:function(){const isInVectorStickyHeader=$trigger.attr('id')==='p-lang-btn-sticky-header';\\nconst offset=(isInVectorStickyHeader)?$trigger.get(0).getBoundingClientRect():$trigger.offset();const width=$trigger.outerWidth();const height=$trigger.outerHeight();let positionCSS;if(offset.left+(width/2)>$(window).width()/2){positionCSS={right:$(window).width()-(offset.left+width),top:offset.top+height};}else{positionCSS={left:offset.left,top:offset.top+height};}if(isInVectorStickyHeader){positionCSS.zIndex=5;positionCSS.position='fixed';}return positionCSS;},onVisible:function(){$trigger.addClass('selector-open');mw.hook('mw.uls.compact_language_links.open').fire($trigger);},languageDecorator:function($languageLink,language){const element=languagesObject[language];$languageLink.prop({href:element.href,title:element.title,hreflang:element.hreflang}).text(element.textContent);$languageLink.parent().addClass(element.parentNode.className);},onCancel:function(){$trigger.removeClass('selector-open');},languages:languageObjectTextContent(languagesObject),ulsPurpose:'compact-language-links',\\nquickList:filterForCommonLanguagesForUser(Object.keys(languagesObject)),noResultsTemplate:function(){const $defaultTemplate=$.fn.lcd.defaults.noResultsTemplate.call(this);$defaultTemplate.find('.uls-no-results-found-title').data('i18n','ext-uls-compact-no-results');return $defaultTemplate;}};if(forCLS){ulsConfig.onReady=function(){this.$menu.addClass('interlanguage-uls-menu');};ulsConfig.onPosition=function(){let left;const offset=$trigger.offset(),width=$trigger.outerWidth(),height=$trigger.outerHeight();const triangleWidth=12;const isRight=offset.left>$(window).width()/2;this.$menu.toggleClass('selector-left',!isRight).toggleClass('selector-right',isRight);if(isRight){left=-this.$menu.outerWidth()-triangleWidth;}else{left=width+triangleWidth;}return{left:offset.left+left,top:offset.top+(height/2)-27};};}$trigger.uls(ulsConfig);}module.exports=launchULS;\\n},\\\"js/ext.uls.actions.menu.js\\\":function(require,module,exports){(function(){'use strict';const ActionsMenuItem=require('./ext.uls.actions.menu.item.js');function ActionsMenu(options){this.options=options;this.$template=$(ActionsMenu.template);this.actionItems=options.actions.map((action)=>new ActionsMenuItem(action.icon,action.text,action.handler,action.href));this.rendered=false;this.shown=false;}ActionsMenu.template='<div class=\\\"uls-menu uls-language-actions-dialog notheme skin-invert\\\">'+'<div class=\\\"uls-language-actions-title\\\">'+'<button class=\\\"cdx-button cdx-button--weight-quiet uls-language-actions-close\\\"></button>'+'<span> <strong></strong> </span>'+'</div>'+'<div class=\\\"uls-language-action-items\\\"></div>'+'</div>';ActionsMenu.prototype={render:function(){if(this.rendered){this.shown=true;this.$template.show();return;}this.actionItems.forEach((actionItem)=>{this.renderAction(actionItem);});this.i18n();$(document.body).append(this.$template);this.$template.css(this.position());this.$template.show();this.$template.find('.uls-language-actions-close').on('click',(event)=>{\\nevent.stopPropagation();this.close();});$(document.body).on('click',this.cancel.bind(this));this.shown=true;this.rendered=true;},position:function(){if(this.options.onPosition){return this.options.onPosition.call(this);}},renderAction:function(actionItem){if(!(actionItem instanceof ActionsMenuItem)){actionItem=new ActionsMenuItem(actionItem.icon,actionItem.text,actionItem.handler,actionItem.href);}const actionButton=actionItem.render();this.$template.find('.uls-language-action-items').prepend(actionButton.$element);},i18n:function(){this.$template.find('.uls-language-actions-title strong').text($.i18n('ext-uls-add-languages-button-label'));},hide:function(){this.shown=false;this.$template.hide();},cancel:function(e){if(e&&(this.$template.is(e.target)||$.contains(this.$template[0],e.target))){return;}this.hide();},close:function(){if(!this.shown){return;}this.hide();if(this.options.onClose){this.options.onClose();}}};module.exports=ActionsMenu;}());\\n},\\\"js/ext.uls.actions.menu.item.js\\\":function(require,module,exports){(function(){const ActionsMenuItem=function(icon,text,handler,href){this.icon=icon;this.text=text;this.handler=handler;this.href=href;};ActionsMenuItem.prototype.render=function(){const actionButtonOptions={framed:false,icon:this.icon,label:this.text,classes:['uls-language-action'],flags:['progressive']};if(this.href){actionButtonOptions.href=this.href;}const actionButton=new OO.ui.ButtonWidget(actionButtonOptions);if(!this.href){actionButton.$element.one('click',this.handler);}return actionButton;};module.exports=ActionsMenuItem;}());\\n},\\\"js/ext.uls.actions.menu.items.registry.js\\\":function(require,module,exports){(function(){'use strict';function ActionsMenuItemsRegistry(){ActionsMenuItemsRegistry.super.apply(this,arguments);}OO.inheritClass(ActionsMenuItemsRegistry,OO.Registry);ActionsMenuItemsRegistry.prototype.size=function(){return Object.keys(this.registry).length;};ActionsMenuItemsRegistry.prototype.getItems=function(){const registry=this.registry;return Object.keys(registry).map((key)=>registry[key]);};ActionsMenuItemsRegistry.prototype.register=function(item){ActionsMenuItemsRegistry.super.prototype.register.call(this,item.name,item);};mw.uls=mw.uls||{};mw.uls.ActionsMenuItemsRegistry=new ActionsMenuItemsRegistry();}());\\n},\\\"data.json\\\":{\\\"currentAutonym\\\":\\\"English\\\"}}},{\\\"css\\\":[\\\"#uls-settings-block{background-color:#fcfcfc}#uls-settings-block.uls-settings-block--vector-2022{display:flex;justify-content:space-between;padding:8px 12px}#uls-settings-block.uls-settings-block--vector-2022.row::before,#uls-settings-block.uls-settings-block--vector-2022.row::after{content:none}#uls-settings-block.uls-settings-block--vector-2022.uls-settings-block--with-add-languages{background-color:#f8f9fa;border-top:1px solid var(--border-color-subtle,#c8ccd1)}#uls-settings-block.uls-settings-block--vector-2022 \\\\u003E button.uls-add-languages-button{background:transparent url(/w/extensions/UniversalLanguageSelector/resources/images/add.svg?3165e) no-repeat left center;margin-right:32px;padding-left:32px}#uls-settings-block.uls-settings-block--vector-2022 \\\\u003E button.uls-language-settings-button{background:transparent url(/w/extensions/UniversalLanguageSelector/resources/images/cog.svg?ce0b4) no-repeat center;margin-left:auto;border:0;min-height:20px;min-width:20px}#uls-settings-block:not(.uls-settings-block--vector-2022){background-color:#f8f9fa;border-top:1px solid var(--border-color-subtle,#c8ccd1);padding-left:10px;line-height:1.2em;border-radius:0 0 2px 2px}#uls-settings-block:not(.uls-settings-block--vector-2022) \\\\u003E button{background:left top transparent no-repeat;background-size:20px auto;color:var(--color-subtle,#54595d);display:inline-block;margin:8px 15px;border:0;padding:0 0 0 26px;font-size:medium;cursor:pointer}#uls-settings-block:not(.uls-settings-block--vector-2022) \\\\u003E button:hover{color:#202122}#uls-settings-block:not(.uls-settings-block--vector-2022) \\\\u003E button.display-settings-block{background-image:url(/w/extensions/UniversalLanguageSelector/resources/images/display.svg?9fd85)}#uls-settings-block:not(.uls-settings-block--vector-2022) \\\\u003E button.input-settings-block{background-image:url(/w/extensions/UniversalLanguageSelector/resources/images/input.svg?60384)}.uls-tipsy.uls-tipsy{z-index:1000}.uls-empty-state{padding:28px}.uls-empty-state .uls-empty-state__header,.uls-empty-state .uls-empty-state__desc{color:var(--color-subtle,#54595d)}.uls-empty-state .uls-language-action-items{list-style:none;margin:1em 0}.empty-language-selector__language-settings-button{margin:12px}   .uls-menu.uls-language-actions-dialog{min-width:248px}.uls-menu.uls-language-actions-dialog .uls-language-actions-title{border-bottom:1px solid var(--border-color-subtle,#c8ccd1);display:flex;align-items:center;height:32px;padding:5px 0}.uls-menu.uls-language-actions-dialog .uls-language-actions-title .uls-language-actions-close{min-width:unset;width:44px;background:transparent url(/w/extensions/UniversalLanguageSelector/resources/images/arrow-previous-ltr.svg?279af) no-repeat center}.uls-menu.uls-language-actions-dialog .uls-language-action-items .uls-language-action.oo-ui-widget{margin:0;padding:12px 8px;display:block}.uls-menu.uls-language-actions-dialog .uls-language-action-items .uls-language-action.oo-ui-widget .oo-ui-buttonElement-button{padding-left:36px}.cdx-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;box-sizing:border-box;min-height:32px;max-width:28rem;margin:0;border-width:1px;border-style:solid;border-radius:2px;padding-right:11px;padding-left:11px;font-family:inherit;font-size:var(--font-size-medium,1rem);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:none;transition-property:background-color,color,border-color,box-shadow;transition-duration:.1s}.cdx-button--size-small{gap:4px;min-height:1.5rem;padding-right:5px;padding-left:5px}.cdx-button--size-large{min-height:44px;padding-right:15px;padding-left:15px}.cdx-button--icon-only{min-width:32px;padding-right:0;padding-left:0}.cdx-button--icon-only.cdx-button--size-small{min-width:1.5rem}.cdx-button--icon-only.cdx-button--size-large{min-width:44px}.cdx-button::-moz-focus-inner{border:0;padding:0}.cdx-button .cdx-button__icon,.cdx-button .cdx-icon{vertical-align:middle}.cdx-button .cdx-icon{color:inherit}.cdx-button--fake-button,.cdx-button--fake-button:hover,.cdx-button--fake-button:focus{text-decoration:none}.cdx-button:enabled,.cdx-button.cdx-button--fake-button--enabled{background-color:var(--background-color-interactive-subtle,#f8f9fa);color:var(--color-neutral,#404244);border-color:var(--border-color-interactive,#72777d)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled .cdx-button__icon{background-color:var(--color-neutral,#404244)}}.cdx-button:enabled:hover,.cdx-button.cdx-button--fake-button--enabled:hover{background-color:var(--background-color-interactive-subtle--hover,#eaecf0);border-color:var(--border-color-interactive--hover,#27292d);cursor:pointer}.cdx-button:enabled:active,.cdx-button.cdx-button--fake-button--enabled:active,.cdx-button:enabled.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--is-active{background-color:var(--background-color-interactive-subtle--active,#dadde3);border-color:var(--border-color-interactive--active,#202122)}.cdx-button:enabled:focus,.cdx-button.cdx-button--fake-button--enabled:focus{outline:1px solid transparent}.cdx-button:enabled:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-progressive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-progressive--focus,#36c)}.cdx-button:enabled.cdx-button--action-progressive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive{background-color:var(--background-color-progressive-subtle,#e8eeff);color:var(--color-progressive,#36c);border-color:var(--border-color-progressive,#6485d1)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-progressive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive .cdx-button__icon{background-color:var(--color-progressive,#36c)}}.cdx-button:enabled.cdx-button--action-progressive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive:hover{background-color:var(--background-color-progressive-subtle--hover,#d9e2ff);color:var(--color-progressive--hover,#3056a9);border-color:var(--border-color-progressive--hover,#3056a9)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-progressive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive:hover .cdx-button__icon{background-color:var(--color-progressive--hover,#3056a9)}}.cdx-button:enabled.cdx-button--action-progressive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive:active,.cdx-button:enabled.cdx-button--action-progressive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive.cdx-button--is-active{background-color:var(--background-color-progressive-subtle--active,#b6d4fb);color:var(--color-progressive--active,#233566);border-color:var(--border-color-progressive--active,#233566)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon{background-color:var(--color-progressive--active,#233566)}}.cdx-button:enabled.cdx-button--action-destructive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive{background-color:var(--background-color-destructive-subtle,#ffe9e5);color:var(--color-destructive,#bf3c2c);border-color:var(--border-color-destructive,#f54739)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-destructive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive .cdx-button__icon{background-color:var(--color-destructive,#bf3c2c)}}.cdx-button:enabled.cdx-button--action-destructive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:hover{background-color:var(--background-color-destructive-subtle--hover,#ffdad3);color:var(--color-destructive--hover,#9f3526);border-color:var(--border-color-destructive--hover,#9f3526)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-destructive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:hover .cdx-button__icon{background-color:var(--color-destructive--hover,#9f3526)}}.cdx-button:enabled.cdx-button--action-destructive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:active,.cdx-button:enabled.cdx-button--action-destructive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive.cdx-button--is-active{background-color:var(--background-color-destructive-subtle--active,#ffc8bd);color:var(--color-destructive--active,#612419);border-color:var(--border-color-destructive--active,#612419)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon{background-color:var(--color-destructive--active,#612419)}}.cdx-button:enabled.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-destructive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-destructive--focus,#36c)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive{background-color:var(--background-color-progressive,#36c);color:var(--color-inverted-fixed,#fff);border-color:var(--border-color-transparent,transparent)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive:hover{background-color:var(--background-color-progressive--hover,#3056a9)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive:active,.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive.cdx-button--is-active{background-color:var(--background-color-progressive--active,#233566)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-progressive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-progressive--focus,#36c),inset 0 0 0 2px var(--box-shadow-color-inverted,#fff)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive .cdx-button__icon{background-color:var(--color-inverted-fixed,#fff)}}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive{background-color:var(--background-color-destructive,#bf3c2c);color:var(--color-inverted-fixed,#fff);border-color:var(--border-color-transparent,transparent)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive:hover{background-color:var(--background-color-destructive--hover,#9f3526)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive:active,.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive.cdx-button--is-active{background-color:var(--background-color-destructive--active,#612419)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-destructive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-destructive--focus,#36c),inset 0 0 0 2px var(--box-shadow-color-inverted,#fff)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive .cdx-button__icon{background-color:var(--color-inverted-fixed,#fff)}}.cdx-button:enabled.cdx-button--weight-quiet,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet{background-color:var(--background-color-transparent,transparent);border-color:var(--border-color-transparent,transparent)}.cdx-button:enabled.cdx-button--weight-quiet:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet:hover{background-color:var(--background-color-interactive-subtle--hover,#eaecf0);mix-blend-mode:var(--mix-blend-mode-blend,multiply)}.cdx-button:enabled.cdx-button--weight-quiet:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet:active,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--is-active{background-color:var(--background-color-interactive-subtle--active,#dadde3)}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive{color:var(--color-progressive,#36c)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive .cdx-button__icon{background-color:var(--color-progressive,#36c)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:hover{background-color:var(--background-color-progressive-subtle--hover,#d9e2ff);color:var(--color-progressive--hover,#3056a9);border-color:var(--border-color-transparent,transparent)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:hover .cdx-button__icon{background-color:var(--color-progressive--hover,#3056a9)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:active,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive.cdx-button--is-active{background-color:var(--background-color-progressive-subtle--active,#b6d4fb);color:var(--color-progressive--active,#233566);border-color:var(--border-color-transparent,transparent)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon{background-color:var(--color-progressive--active,#233566)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-progressive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-progressive--focus,#36c)}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive{color:var(--color-destructive,#bf3c2c)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive .cdx-button__icon{background-color:var(--color-destructive,#bf3c2c)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:hover{background-color:var(--background-color-destructive-subtle--hover,#ffdad3);color:var(--color-destructive--hover,#9f3526);border-color:var(--border-color-transparent,transparent)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:hover .cdx-button__icon{background-color:var(--color-destructive--hover,#9f3526)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:active,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive.cdx-button--is-active{background-color:var(--background-color-destructive-subtle--active,#ffc8bd);color:var(--color-destructive--active,#612419);border-color:var(--border-color-transparent,transparent)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon{background-color:var(--color-destructive--active,#612419)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-destructive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-destructive--focus,#36c)}.cdx-button:disabled,.cdx-button.cdx-button--fake-button--disabled{background-color:var(--background-color-disabled,#dadde3);color:var(--color-disabled-emphasized,#a2a9b1);border-color:var(--border-color-transparent,transparent)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:disabled .cdx-button__icon,.cdx-button.cdx-button--fake-button--disabled .cdx-button__icon{background-color:var(--color-inverted,#fff)}}.cdx-button:disabled.cdx-button--weight-quiet,.cdx-button.cdx-button--fake-button--disabled.cdx-button--weight-quiet{background-color:var(--background-color-transparent,transparent);color:var(--color-disabled,#a2a9b1)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:disabled.cdx-button--weight-quiet .cdx-button__icon,.cdx-button.cdx-button--fake-button--disabled.cdx-button--weight-quiet .cdx-button__icon{background-color:var(--color-disabled,#a2a9b1)}}.mw-interlanguage-selector-disabled #p-lang-btn-sticky-header{display:none}\\\"]},{\\\"ext-uls-actions-menu-language-settings-item-label\\\":\\\"Open language settings\\\",\\\"ext-uls-add-languages-button-label\\\":\\\"Add languages\\\",\\\"ext-uls-empty-state-desc\\\":\\\"No languages are available for now\\\",\\\"ext-uls-empty-state-desc-actions-available\\\":\\\" Make the content available in more languages.\\\",\\\"ext-uls-empty-state-header\\\":\\\"No languages yet\\\",\\\"ext-uls-empty-state-header-actions-available\\\":\\\"No languages yet. Add a new one?\\\",\\\"ext-uls-select-language-settings-icon-tooltip\\\":\\\"Language settings\\\",\\\"ext-uls-undo-language-tooltip-text\\\":\\\"Language changed from $1\\\",\\\"ext-uls-undo-language-tooltip-text-local\\\":\\\"Language changed for this wiki. Check your [[Special:GlobalPreferences|global preferences]] to change language for all wikis.\\\",\\\"uls-plang-title-languages\\\":\\\"Languages\\\"}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.uls.interface&skin=vector-2022&version=9prrp\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.uls.interface&skin=vector-2022&sourcemap=1&version=9prrp\",\"ext.centralNotice.impressionDiet@1vyse\":\"mw.loader.impl(function(){return[\\\"ext.centralNotice.impressionDiet@1vyse\\\",function($,jQuery,require,module){(function(){'use strict';let identifier,multiStorageOption,counts;const cn=mw.centralNotice,mixin=new cn.Mixin('impressionDiet'),now=Date.now(),STORAGE_KEY='impression_diet',WAIT_COOKIE_SUFFIX='-wait',COUNTS_STORAGE_TTL=365;mixin.setPreBannerHandler((mixinParams)=>{let hide;if(mw.util.getParamValue('force')){return;}identifier=mixinParams.cookieName;multiStorageOption=cn.kvStore.getMultiStorageOption(cn.getDataProperty('campaignCategoryUsesLegacy'));possiblyMigrateLegacyCookies();if(cn.isCampaignFailed()){return;}if(multiStorageOption===cn.kvStore.multiStorageOptions.NO_STORAGE){cn.failCampaign('waitnostorage');return;}if(mw.util.getParamValue('reset')==='1'){counts=getZeroedCounts();}else{counts=getCounts();}if(now>counts.nextCycleStart&&counts.seenThisCycle>=mixinParams.maximumSeen){if(mixinParams.restartCycleDelay!==0){counts.skippedThisCycle=0;counts.seenThisCycle=0;}}if(counts.seenThisCycle<mixinParams.maximumSeen){if(counts.skippedThisCycle<mixinParams.skipInitial){hide='waitimps';\\ncounts.skippedThisCycle+=1;}else{hide=false;}}else{hide='waitdate';}if(hide){cn.failCampaign(hide);}else{counts.seenThisCycle+=1;counts.seenCount+=1;counts.nextCycleStart=now+(mixinParams.restartCycleDelay*1000);}storeCounts(counts);});function getZeroedCounts(){return{seenCount:0,skippedThisCycle:0,nextCycleStart:0,seenThisCycle:0};}function fixCountNames(kvStoreCounts){if(kvStoreCounts.skippedThisCycle!==undefined){return kvStoreCounts;}return{seenCount:kvStoreCounts.seenCount,skippedThisCycle:kvStoreCounts.waitCount,nextCycleStart:kvStoreCounts.waitUntil,seenThisCycle:kvStoreCounts.waitSeenCount};}function possiblyMigrateLegacyCookies(){if(!identifier){return;}const rawCookie=$.cookie(identifier);if(!rawCookie){return;}const rawWaitCookie=$.cookie(identifier+WAIT_COOKIE_SUFFIX);const waitData=(rawWaitCookie||'').split(/[|]/);const cookieCounts={seenCount:parseInt(rawCookie,10)||0,skippedThisCycle:parseInt(waitData[0],10)||0,nextCycleStart:parseInt(waitData[1],10)||0,seenThisCycle:parseInt(waitData[2],10)||0\\n};storeCounts(cookieCounts);$.removeCookie(identifier,{path:'/'});$.removeCookie(identifier+WAIT_COOKIE_SUFFIX,{path:'/'});}function getCounts(){let c;if(identifier){c=cn.kvStore.getItem(STORAGE_KEY+'_'+identifier,cn.kvStore.contexts.GLOBAL,multiStorageOption);}else{c=cn.kvStore.getItem(STORAGE_KEY,cn.kvStore.contexts.CATEGORY,multiStorageOption);}c=c||getZeroedCounts();return fixCountNames(c);}function storeCounts(c){if(identifier){cn.kvStore.setItem(STORAGE_KEY+'_'+identifier,c,cn.kvStore.contexts.GLOBAL,COUNTS_STORAGE_TTL,multiStorageOption);}else{cn.kvStore.setItem(STORAGE_KEY,c,cn.kvStore.contexts.CATEGORY,COUNTS_STORAGE_TTL,multiStorageOption);}}cn.registerCampaignMixin(mixin);}());\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.impressionDiet&skin=vector-2022&version=8dykc\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.impressionDiet&skin=vector-2022&sourcemap=1&version=8dykc\",\"ext.centralNotice.choiceData@13bjc\":\"mw.loader.impl(function(){return[\\\"ext.centralNotice.choiceData@13bjc\\\",function($,jQuery,require,module){mw.centralNotice=(mw.centralNotice||{});mw.centralNotice.choiceData=[{\\\"name\\\":\\\"WMHU_1percent_2026c\\\",\\\"start\\\":1773723600,\\\"end\\\":1774306740,\\\"preferred\\\":2,\\\"throttle\\\":100,\\\"bucket_count\\\":1,\\\"geotargeted\\\":true,\\\"type\\\":\\\"fundraising\\\",\\\"banners\\\":[{\\\"name\\\":\\\"WMHU_1percent_2026\\\",\\\"bucket\\\":0,\\\"weight\\\":100,\\\"category\\\":\\\"fundraising\\\",\\\"display_anon\\\":true,\\\"display_account\\\":true,\\\"devices\\\":[\\\"desktop\\\"]}],\\\"countries\\\":[\\\"HU\\\"],\\\"mixins\\\":{\\\"impressionDiet\\\":{\\\"cookieName\\\":\\\"WMHU_1percent_2026c\\\",\\\"maximumSeen\\\":3,\\\"restartCycleDelay\\\":259200,\\\"skipInitial\\\":0}},\\\"regions\\\":[]},{\\\"name\\\":\\\"WMHU_1percent_2026c_mobile\\\",\\\"start\\\":1773723600,\\\"end\\\":1774306740,\\\"preferred\\\":2,\\\"throttle\\\":100,\\\"bucket_count\\\":1,\\\"geotargeted\\\":true,\\\"type\\\":\\\"fundraising\\\",\\\"banners\\\":[{\\\"name\\\":\\\"WMHU_1percent_2026_mobile\\\",\\\"bucket\\\":0,\\\"weight\\\":100,\\\"category\\\":\\\"fundraising\\\",\\\"display_anon\\\":true,\\\"display_account\\\":true,\\\"devices\\\":[\\\"android\\\",\\\"ipad\\\",\\\"iphone\\\",\\\"unknown\\\"]}],\\\"countries\\\":[\\\"HU\\\"],\\\"mixins\\\":{\\\"impressionDiet\\\":{\\\"cookieName\\\":\\\"WMHU_1percent_2026c_mobile\\\",\\\"maximumSeen\\\":3,\\\"restartCycleDelay\\\":259200,\\\"skipInitial\\\":0}},\\\"regions\\\":[]},{\\\"name\\\":\\\"Wiki Loves Folklore 2026 Spain\\\",\\\"start\\\":1771027200,\\\"end\\\":1775087940,\\\"preferred\\\":1,\\\"throttle\\\":100,\\\"bucket_count\\\":1,\\\"geotargeted\\\":true,\\\"type\\\":\\\"photography\\\",\\\"banners\\\":[{\\\"name\\\":\\\"WLFES2026\\\",\\\"bucket\\\":0,\\\"weight\\\":25,\\\"category\\\":\\\"WikiLovesFolklore2026Spain\\\",\\\"display_anon\\\":false,\\\"display_account\\\":true,\\\"devices\\\":[\\\"android\\\",\\\"desktop\\\",\\\"ipad\\\",\\\"iphone\\\",\\\"unknown\\\"]}],\\\"countries\\\":[\\\"ES\\\"],\\\"mixins\\\":{\\\"impressionDiet\\\":{\\\"cookieName\\\":\\\"WLFES2026\\\",\\\"maximumSeen\\\":3,\\\"restartCycleDelay\\\":604800,\\\"skipInitial\\\":0}},\\\"regions\\\":[]},{\\\"name\\\":\\\"WikicuriousCountryMusicNC\\\",\\\"start\\\":1773336600,\\\"end\\\":1774396740,\\\"preferred\\\":1,\\\"throttle\\\":100,\\\"bucket_count\\\":1,\\\"geotargeted\\\":true,\\\"type\\\":\\\"event\\\",\\\"banners\\\":[{\\\"name\\\":\\\"WikicuriousCountryMusicNC\\\",\\\"bucket\\\":0,\\\"weight\\\":25,\\\"category\\\":\\\"WikicuriousCountryMusicNC\\\",\\\"display_anon\\\":true,\\\"display_account\\\":true,\\\"devices\\\":[\\\"android\\\",\\\"desktop\\\",\\\"ipad\\\",\\\"iphone\\\",\\\"unknown\\\"]}],\\\"regions\\\":[\\\"US_NC\\\"],\\\"mixins\\\":{\\\"impressionDiet\\\":{\\\"cookieName\\\":\\\"WikicuriousNC_CM_cookie\\\",\\\"maximumSeen\\\":2,\\\"restartCycleDelay\\\":172800,\\\"skipInitial\\\":0}},\\\"countries\\\":[]},{\\\"name\\\":\\\"WikicuriousWomensHistoryNC\\\",\\\"start\\\":1773336600,\\\"end\\\":1774310340,\\\"preferred\\\":1,\\\"throttle\\\":100,\\\"bucket_count\\\":1,\\\"geotargeted\\\":true,\\\"type\\\":\\\"event\\\",\\\"banners\\\":[{\\\"name\\\":\\\"WikicuriousWomensHistoryNC\\\",\\\"bucket\\\":0,\\\"weight\\\":25,\\\"category\\\":\\\"WikicuriousWomensHistoryNC\\\",\\\"display_anon\\\":true,\\\"display_account\\\":true,\\\"devices\\\":[\\\"android\\\",\\\"desktop\\\",\\\"ipad\\\",\\\"iphone\\\",\\\"unknown\\\"]}],\\\"regions\\\":[\\\"US_NC\\\"],\\\"mixins\\\":{\\\"impressionDiet\\\":{\\\"cookieName\\\":\\\"WikicuriousNC_WH_cookie\\\",\\\"maximumSeen\\\":2,\\\"restartCycleDelay\\\":172800,\\\"skipInitial\\\":0}},\\\"countries\\\":[]}];\\n}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData&skin=vector-2022&version=9i2jk\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData&skin=vector-2022&sourcemap=1&version=9i2jk\",\"ext.centralNotice.startUp@ei35p\":\"mw.loader.impl(function(){return[\\\"ext.centralNotice.startUp@ei35p\\\",{\\\"main\\\":\\\"index.js\\\",\\\"files\\\":{\\\"index.js\\\":function(require,module,exports){(function(){const cn=mw.centralNotice,testingBannerName=mw.util.getParamValue('banner'),kvStoreMaintenance=require('./kvStoreMaintenance.js'),NULL_BANNER_NAME='null';cn.kvStoreMaintenance=kvStoreMaintenance;$(()=>{$('#siteNotice').prepend('<div id=\\\"centralNotice\\\" data-nosnippet=\\\"\\\"></div>');});if(testingBannerName){if(testingBannerName===NULL_BANNER_NAME){return;}mw.loader.using('ext.centralNotice.display').done(()=>{cn.displayTestingBanner();});return;}if(cn.choiceData===undefined){mw.log.warn('No choice data set for CentralNotice campaign '+'and banner selection.');return;}mw.requestIdleCallback(kvStoreMaintenance.doMaintenance);if(cn.choiceData.length===0){return;}if(!cn.chooseAndMaybeDisplay){mw.log.warn('Possible campaign(s) received in choiceData, but '+'mw.centralNotice.chooseAndMaybeDisplay() is not available');return;}cn.chooseAndMaybeDisplay();}());\\n},\\\"kvStoreMaintenance.js\\\":function(require,module,exports){(function(){const now=Date.now()/1000,PREFIX_REGEX=/^CentralNoticeKV/,PREFIX_AND_SEPARATOR_IN_COOKIES='CN!',LEEWAY_FOR_REMOVAL=86400,MIN_WORK_TIME=3;function getKeys(){return $.Deferred((d)=>{mw.requestIdleCallback((deadline)=>{const keys=[];let index=localStorage.length;while(index-->0&&deadline.timeRemaining()>MIN_WORK_TIME){const key=localStorage.key(index);if(key!==null&&PREFIX_REGEX.test(key)){keys.push(key);}}d.resolve(keys);});}).promise();}function processKeys(queue){return $.Deferred((d)=>{mw.requestIdleCallback(function iterate(deadline){let key,rawValue,value;while(queue[0]!==undefined&&deadline.timeRemaining()>MIN_WORK_TIME){key=queue.shift();try{rawValue=localStorage.getItem(key);if(rawValue){value=JSON.parse(rawValue);if(!value.expiry||(value.expiry+LEEWAY_FOR_REMOVAL)<now){localStorage.removeItem(key);}}}catch(e){localStorage.removeItem(key);mw.log.warn('CentralNotice kvStoreMaintenance error for key '+key,e);}}if(queue[0]!==undefined){mw.requestIdleCallback(iterate);}else{\\nd.resolve();}});}).promise();}function purgeFallbackCookies(){const cookies=document.cookie.split(';'),r=new RegExp('^'+PREFIX_AND_SEPARATOR_IN_COOKIES+'[^=]*(?==)');for(let i=0;i<cookies.length;i++){const matches=cookies[i].trim().match(r);if(matches){document.cookie=matches[0]+'=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/';}}}const kvStoreMaintenance={doMaintenance:function(){try{if(!window.localStorage||!localStorage.length){return $.Deferred().resolve();}}catch(e){return $.Deferred().resolve();}if(document.cookie.includes(PREFIX_AND_SEPARATOR_IN_COOKIES)){purgeFallbackCookies();}return getKeys().then(processKeys);}};module.exports=kvStoreMaintenance;}());\\n}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.startUp&skin=vector-2022&version=bw1m8\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.startUp&skin=vector-2022&sourcemap=1&version=bw1m8\",\"oojs-ui-windows@1l1le\":\"mw.loader.impl(function(){return[\\\"oojs-ui-windows@1l1le\\\",function($,jQuery,require,module){(function(OO){'use strict';OO.ui.ActionWidget=function OoUiActionWidget(config){config=Object.assign({framed:false},config);OO.ui.ActionWidget.super.call(this,config);OO.ui.mixin.PendingElement.call(this,config);this.action=config.action||'';this.modes=config.modes||[];this.width=0;this.height=0;this.$element.addClass('oo-ui-actionWidget');};OO.inheritClass(OO.ui.ActionWidget,OO.ui.ButtonWidget);OO.mixinClass(OO.ui.ActionWidget,OO.ui.mixin.PendingElement);OO.ui.ActionWidget.prototype.hasMode=function(mode){return this.modes.includes(mode);};OO.ui.ActionWidget.prototype.getAction=function(){return this.action;};OO.ui.ActionWidget.prototype.getModes=function(){return this.modes.slice();};OO.ui.ActionSet=function OoUiActionSet(config){OO.EventEmitter.call(this);this.list=[];this.categories={actions:'getAction',flags:'getFlags',modes:'getModes'};this.categorized={};this.special={};this.others=[];this.organized=false;this.changing=false;this.changed=false;};OO.mixinClass(OO.ui.ActionSet,OO.EventEmitter);\\nOO.ui.ActionSet.static.specialFlags=['safe','primary'];OO.ui.ActionSet.prototype.onActionChange=function(){this.organized=false;if(this.changing){this.changed=true;}else{this.emit('change');}};OO.ui.ActionSet.prototype.isSpecial=function(action){for(const flag in this.special){if(action===this.special[flag]){return true;}}return false;};OO.ui.ActionSet.prototype.get=function(filters){if(filters){this.organize();let i,len;const matches=[];for(const category in this.categorized){let list=filters[category];if(list){if(!Array.isArray(list)){list=[list];}for(i=0,len=list.length;i<len;i++){const actions=this.categorized[category][list[i]];if(Array.isArray(actions)){matches.push.apply(matches,actions);}}}}let match;for(i=0,len=matches.length;i<len;i++){match=matches[i];if((filters.visible!==undefined&&match.isVisible()!==filters.visible)||(filters.disabled!==undefined&&match.isDisabled()!==filters.disabled)){matches.splice(i,1);len--;i--;}}for(i=0,len=matches.length;i<len;i++){match=matches[i];\\nlet index=matches.lastIndexOf(match);while(index!==i){matches.splice(index,1);len--;index=matches.lastIndexOf(match);}}return matches;}return this.list.slice();};OO.ui.ActionSet.prototype.getSpecial=function(){this.organize();return Object.assign({},this.special);};OO.ui.ActionSet.prototype.getOthers=function(){this.organize();return this.others.slice();};OO.ui.ActionSet.prototype.setMode=function(mode){this.changing=true;for(let i=0,len=this.list.length;i<len;i++){const action=this.list[i];action.toggle(action.hasMode(mode));}this.organized=false;this.changing=false;this.emit('change');return this;};OO.ui.ActionSet.prototype.setAbilities=function(actions){for(let i=0,len=this.list.length;i<len;i++){const item=this.list[i];const action=item.getAction();if(actions[action]!==undefined){item.setDisabled(!actions[action]);}}return this;};OO.ui.ActionSet.prototype.forEach=function(filter,callback){this.changed=false;this.changing=true;this.get(filter).forEach(callback);this.changing=false;\\nif(this.changed){this.emit('change');}return this;};OO.ui.ActionSet.prototype.add=function(actions){this.changing=true;for(let i=0,len=actions.length;i<len;i++){const action=actions[i];action.connect(this,{click:['emit','click',action],toggle:['onActionChange']});this.list.push(action);}this.organized=false;this.emit('add',actions);this.changing=false;this.emit('change');return this;};OO.ui.ActionSet.prototype.remove=function(actions){this.changing=true;for(let i=0,len=actions.length;i<len;i++){const action=actions[i];const index=this.list.indexOf(action);if(index!==-1){action.disconnect(this);this.list.splice(index,1);}}this.organized=false;this.emit('remove',actions);this.changing=false;this.emit('change');return this;};OO.ui.ActionSet.prototype.clear=function(){const removed=this.list.slice();this.changing=true;for(let i=0,len=this.list.length;i<len;i++){const action=this.list[i];action.disconnect(this);}this.list=[];this.organized=false;this.emit('remove',removed);this.changing=false;\\nthis.emit('change');return this;};OO.ui.ActionSet.prototype.organize=function(){const specialFlags=this.constructor.static.specialFlags;if(!this.organized){this.categorized={};this.special={};this.others=[];for(let i=0,iLen=this.list.length;i<iLen;i++){const action=this.list[i];let j,jLen;for(const category in this.categories){if(!this.categorized[category]){this.categorized[category]={};}let list=action[this.categories[category]]();if(!Array.isArray(list)){list=[list];}for(j=0,jLen=list.length;j<jLen;j++){const item=list[j];if(!this.categorized[category][item]){this.categorized[category][item]=[];}this.categorized[category][item].push(action);}}if(action.isVisible()){let special=false;for(j=0,jLen=specialFlags.length;j<jLen;j++){const flag=specialFlags[j];if(!this.special[flag]&&action.hasFlag(flag)){this.special[flag]=action;special=true;break;}}if(!special){this.others.push(action);}}}this.organized=true;}return this;};OO.ui.Error=function OoUiError(message,config){if(OO.isPlainObject(message)&&config===undefined){\\nconfig=message;message=config.message;}config=config||{};this.message=message instanceof $?message:String(message);this.recoverable=config.recoverable===undefined||!!config.recoverable;this.warning=!!config.warning;};OO.initClass(OO.ui.Error);OO.ui.Error.prototype.isRecoverable=function(){return this.recoverable;};OO.ui.Error.prototype.isWarning=function(){return this.warning;};OO.ui.Error.prototype.getMessage=function(){return this.message instanceof $?this.message.clone():$('<div>').text(this.message).contents();};OO.ui.Error.prototype.getMessageText=function(){return this.message instanceof $?this.message.text():this.message;};OO.ui.Process=function(step,context){this.steps=[];if(step!==undefined){this.next(step,context);}};OO.initClass(OO.ui.Process);OO.ui.Process.prototype.execute=function(){function proceed(step){return function(){const result=step.callback.call(step.context);if(result===false){return $.Deferred().reject([]).promise();}if(typeof result==='number'){if(result<0){\\nthrow new Error('Cannot go back in time: flux capacitor is out of service');}const deferred=$.Deferred();setTimeout(deferred.resolve,result);return deferred.promise();}if(result instanceof OO.ui.Error){return $.Deferred().reject([result]).promise();}if(Array.isArray(result)&&result.length&&result[0]instanceof OO.ui.Error){return $.Deferred().reject(result).promise();}if(result&&typeof result.then==='function'){return $.when(result).promise();}return $.Deferred().resolve().promise();};}let promise;if(this.steps.length){promise=proceed(this.steps[0])();for(let i=1,len=this.steps.length;i<len;i++){promise=promise.then(proceed(this.steps[i]));}}else{promise=$.Deferred().resolve().promise();}return promise;};OO.ui.Process.prototype.createStep=function(step,context){if(typeof step==='number'||typeof step.then==='function'){return{callback:function(){return step;},context:null};}if(typeof step==='function'){return{callback:step,context:context};}throw new Error('Cannot create process step: number, promise or function expected');\\n};OO.ui.Process.prototype.first=function(step,context){this.steps.unshift(this.createStep(step,context));return this;};OO.ui.Process.prototype.next=function(step,context){this.steps.push(this.createStep(step,context));return this;};OO.ui.WindowInstance=function OoUiWindowInstance(){const deferreds={opening:$.Deferred(),opened:$.Deferred(),closing:$.Deferred(),closed:$.Deferred()};this.deferreds=deferreds;this.opening=deferreds.opening.promise();this.opened=this.opening.then(()=>deferreds.opened);this.closing=this.opened.then(()=>deferreds.closing);this.closed=this.closing.then(()=>deferreds.closed);};OO.initClass(OO.ui.WindowInstance);OO.ui.WindowInstance.prototype.isOpening=function(){return this.deferreds.opened.state()==='pending';};OO.ui.WindowInstance.prototype.isOpened=function(){return this.deferreds.opened.state()==='resolved'&&this.deferreds.closing.state()==='pending';};OO.ui.WindowInstance.prototype.isClosing=function(){return this.deferreds.closing.state()==='resolved'&&\\nthis.deferreds.closed.state()==='pending';};OO.ui.WindowInstance.prototype.isClosed=function(){return this.deferreds.closed.state()==='resolved';};OO.ui.WindowManager=function OoUiWindowManager(config){config=config||{};OO.ui.WindowManager.super.call(this,config);OO.EventEmitter.call(this);this.factory=config.factory;this.modal=config.modal===undefined||!!config.modal;this.windows={};this.compatOpened=null;this.preparingToOpen=null;this.preparingToClose=null;this.currentWindow=null;this.lastSize=null;this.globalEvents=false;this.$returnFocusTo=null;this.isolated=false;this.$ariaHidden=null;this.$inert=null;this.onWindowResizeTimeout=null;this.onWindowResizeHandler=this.onWindowResize.bind(this);this.afterWindowResizeHandler=this.afterWindowResize.bind(this);this.onWindowFocusHandler=this.onWindowFocus.bind(this);this.$element.addClass('oo-ui-windowManager').toggleClass('oo-ui-windowManager-modal',this.isModal()).toggleClass('oo-ui-windowManager-forceTrapFocus',!!config.forceTrapFocus);\\nif(this.isModal()){this.$element.attr('aria-hidden','true').attr('inert','');}};OO.inheritClass(OO.ui.WindowManager,OO.ui.Element);OO.mixinClass(OO.ui.WindowManager,OO.EventEmitter);OO.ui.WindowManager.static.sizes={small:{width:300},medium:{width:500},large:{width:700},larger:{width:900},full:{width:'100%',height:'100%'}};OO.ui.WindowManager.static.defaultSize='medium';OO.ui.WindowManager.prototype.isModal=function(){return this.modal;};OO.ui.WindowManager.prototype.onWindowResize=function(){clearTimeout(this.onWindowResizeTimeout);this.onWindowResizeTimeout=setTimeout(this.afterWindowResizeHandler,200);};OO.ui.WindowManager.prototype.onWindowFocus=function(){const currentWindow=this.getCurrentWindow();if(currentWindow&&!OO.ui.contains(currentWindow.$element[0],document.activeElement)){currentWindow.focus();}};OO.ui.WindowManager.prototype.afterWindowResize=function(){const currentFocusedElement=document.activeElement;if(this.currentWindow){this.updateWindowSize(this.currentWindow);if(currentFocusedElement!==document.activeElement){\\ncurrentFocusedElement.focus();}}};OO.ui.WindowManager.prototype.isOpening=function(win){return win===this.currentWindow&&!!this.lifecycle&&this.lifecycle.isOpening();};OO.ui.WindowManager.prototype.isClosing=function(win){return win===this.currentWindow&&!!this.lifecycle&&this.lifecycle.isClosing();};OO.ui.WindowManager.prototype.isOpened=function(win){return win===this.currentWindow&&!!this.lifecycle&&this.lifecycle.isOpened();};OO.ui.WindowManager.prototype.hasWindow=function(win){for(const name in this.windows){if(this.windows[name]===win){return true;}}return false;};OO.ui.WindowManager.prototype.getSetupDelay=function(){return 0;};OO.ui.WindowManager.prototype.getReadyDelay=function(){return this.isModal()?OO.ui.theme.getDialogTransitionDuration():0;};OO.ui.WindowManager.prototype.getHoldDelay=function(){return 0;};OO.ui.WindowManager.prototype.getTeardownDelay=function(){return this.isModal()?OO.ui.theme.getDialogTransitionDuration():0;};OO.ui.WindowManager.prototype.getWindow=function(name){\\nconst deferred=$.Deferred();let win=this.windows[name];if(!(win instanceof OO.ui.Window)){if(this.factory){if(!this.factory.lookup(name)){deferred.reject(new OO.ui.Error('Cannot auto-instantiate window: symbolic name is unrecognized by the factory'));}else{win=this.factory.create(name);this.addWindows([win]);deferred.resolve(win);}}else{deferred.reject(new OO.ui.Error('Cannot get unmanaged window: symbolic name unrecognized as a managed window'));}}else{deferred.resolve(win);}return deferred.promise();};OO.ui.WindowManager.prototype.getCurrentWindow=function(){return this.currentWindow;};OO.ui.WindowManager.prototype.openWindow=function(win,data,lifecycle,compatOpening){data=data||{};lifecycle=lifecycle||new OO.ui.WindowInstance();compatOpening=compatOpening||$.Deferred();['state','always','catch','pipe','then','promise','progress','done','fail'].forEach((method)=>{lifecycle[method]=function(){OO.ui.warnDeprecation('Using the return value of openWindow as a promise is deprecated. '+\\n'Use .openWindow( ... ).opening.'+method+'( ... ) instead.');return compatOpening[method].apply(this,arguments);};});if(typeof win==='string'){this.getWindow(win).then((w)=>{this.openWindow(w,data,lifecycle,compatOpening);},(err)=>{lifecycle.deferreds.opening.reject(err);});return lifecycle;}let error;if(!this.hasWindow(win)){error='Cannot open window: window is not attached to manager';}else if(this.lifecycle&&this.lifecycle.isOpened()){error='Cannot open window: another window is open';}else if(this.preparingToOpen||(this.lifecycle&&this.lifecycle.isOpening())){error='Cannot open window: another window is opening';}if(error){compatOpening.reject(new OO.ui.Error(error));lifecycle.deferreds.opening.reject(new OO.ui.Error(error));return lifecycle;}this.preparingToOpen=$.when(this.lifecycle&&this.lifecycle.closed);this.preparingToOpen.done(()=>{if(this.isModal()){this.toggleGlobalEvents(true,win);this.toggleIsolation(true);}this.$returnFocusTo=data.$returnFocusTo!==undefined?data.$returnFocusTo:\\n$(document.activeElement);this.currentWindow=win;this.lifecycle=lifecycle;this.preparingToOpen=null;this.emit('opening',win,compatOpening,data);lifecycle.deferreds.opening.resolve(data);setTimeout(()=>{this.compatOpened=$.Deferred();win.setup(data).then(()=>{compatOpening.notify({state:'setup'});setTimeout(()=>{win.ready(data).then(()=>{compatOpening.notify({state:'ready'});lifecycle.deferreds.opened.resolve(data);compatOpening.resolve(this.compatOpened.promise(),data);this.togglePreventIosScrolling(true);},(dataOrErr)=>{lifecycle.deferreds.opened.reject();compatOpening.reject();this.closeWindow(win);if(dataOrErr instanceof Error){setTimeout(()=>{throw dataOrErr;});}});},this.getReadyDelay());},(dataOrErr)=>{lifecycle.deferreds.opened.reject();compatOpening.reject();this.closeWindow(win);if(dataOrErr instanceof Error){setTimeout(()=>{throw dataOrErr;});}});},this.getSetupDelay());});return lifecycle;};OO.ui.WindowManager.prototype.closeWindow=function(win,data){const compatClosing=$.Deferred();\\nlet lifecycle=this.lifecycle;if(typeof win==='string'){win=this.windows[win];}else if(!this.hasWindow(win)){win=null;}let error;if(!lifecycle){error='Cannot close window: no window is currently open';}else if(!win){error='Cannot close window: window is not attached to manager';}else if(win!==this.currentWindow||this.lifecycle.isClosed()){error='Cannot close window: window already closed with different data';}else if(this.preparingToClose||this.lifecycle.isClosing()){error='Cannot close window: window already closing with different data';}if(error){lifecycle=new OO.ui.WindowInstance();lifecycle.deferreds.opening.resolve({});lifecycle.deferreds.opened.resolve({});}['state','always','catch','pipe','then','promise','progress','done','fail'].forEach((method)=>{lifecycle[method]=function(){OO.ui.warnDeprecation('Using the return value of closeWindow as a promise is deprecated. '+'Use .closeWindow( ... ).closed.'+method+'( ... ) instead.');return compatClosing[method].apply(this,arguments);};\\n});if(error){compatClosing.reject(new OO.ui.Error(error));lifecycle.deferreds.closing.reject(new OO.ui.Error(error));return lifecycle;}this.preparingToClose=$.when(this.lifecycle.opened);this.preparingToClose.always(()=>{this.preparingToClose=null;this.emit('closing',win,compatClosing,data);lifecycle.deferreds.closing.resolve(data);const compatOpened=this.compatOpened;this.compatOpened=null;compatOpened.resolve(compatClosing.promise(),data);this.togglePreventIosScrolling(false);setTimeout(()=>{win.hold(data).then(()=>{compatClosing.notify({state:'hold'});setTimeout(()=>{win.teardown(data).then(()=>{compatClosing.notify({state:'teardown'});if(this.isModal()){this.toggleGlobalEvents(false);this.toggleIsolation(false);}if(this.$returnFocusTo&&this.$returnFocusTo.length){this.$returnFocusTo[0].focus();}this.currentWindow=null;this.lifecycle=null;lifecycle.deferreds.closed.resolve(data);compatClosing.resolve(data);});},this.getTeardownDelay());});},this.getHoldDelay());});return lifecycle;};\\nOO.ui.WindowManager.prototype.addWindows=function(windows){let list;if(Array.isArray(windows)){list={};for(let i=0,len=windows.length;i<len;i++){const name=windows[i].constructor.static.name;if(!name){throw new Error('Windows must have a `name` static property defined.');}list[name]=windows[i];}}else if(OO.isPlainObject(windows)){list=windows;}for(const n in list){const win=list[n];this.windows[n]=win.toggle(false);this.$element.append(win.$element);win.setManager(this);}};OO.ui.WindowManager.prototype.removeWindows=function(names){const cleanup=(name,win)=>{delete this.windows[name];win.$element.detach();};const promises=names.map((name)=>{const win=this.windows[name];if(!win){throw new Error('Cannot remove window');}const cleanupWindow=cleanup.bind(null,name,win);return this.closeWindow(name).closed.then(cleanupWindow,cleanupWindow);});return $.when.apply($,promises);};OO.ui.WindowManager.prototype.clearWindows=function(){return this.removeWindows(Object.keys(this.windows));};OO.ui.WindowManager.prototype.updateWindowSize=function(win){\\nif(win!==this.currentWindow){return;}const size=win.getSize();this.$element.removeClass('oo-ui-windowManager-size-'+this.lastSize).addClass('oo-ui-windowManager-size-'+size);this.lastSize=size;const isFullscreen=size==='full';this.$element.toggleClass('oo-ui-windowManager-fullscreen',isFullscreen);this.$element.toggleClass('oo-ui-windowManager-floating',!isFullscreen);const $body=$(this.getElementDocument().body);const stack=$body.data('windowManagerGlobalEvents')||[];$body.add($body.parent()).toggleClass('oo-ui-windowManager-modal-active-fullscreen',stack.some((w)=>w.getSize()==='full'));win.setDimensions(win.getSizeProperties());this.emit('resize',win);return this;};OO.ui.WindowManager.prototype.togglePreventIosScrolling=function(on){const isIos=/ipad|iphone|ipod/i.test(navigator.userAgent),$body=$(this.getElementDocument().body),stackDepth=($body.data('windowManagerGlobalEvents')||[]).length;if(!isIos||stackDepth!==1){return this;}const scrollableRoot=OO.ui.Element.static.getRootScrollableElement($body[0]);\\nif(on){this.iosOrigScrollPosition=scrollableRoot.scrollTop;if(this.getCurrentWindow().getSize()==='full'){$body.add($body.parent()).addClass('oo-ui-windowManager-ios-modal-ready');}}else{$body.add($body.parent()).removeClass('oo-ui-windowManager-ios-modal-ready');if(this.getCurrentWindow().getSize()==='full'){scrollableRoot.scrollTop=this.iosOrigScrollPosition;}}return this;};OO.ui.WindowManager.prototype.toggleGlobalEvents=function(on,win){const $body=$(this.getElementDocument().body);const $window=$(this.getElementWindow());const stack=$body.data('windowManagerGlobalEvents')||[];on=on===undefined?!!this.globalEvents:!!on;const $bodyAndParent=$body.add($body.parent());if(on){if(!this.globalEvents){$window.on({'orientationchange resize':this.onWindowResizeHandler,focus:this.onWindowFocusHandler});stack.push(win);this.globalEvents=true;}}else if(this.globalEvents){$window.off({'orientationchange resize':this.onWindowResizeHandler,focus:this.onWindowFocusHandler});stack.pop();this.globalEvents=false;\\n}$bodyAndParent.toggleClass('oo-ui-windowManager-modal-active',stack.length>0);if(stack.length===0){$bodyAndParent.removeClass('oo-ui-windowManager-modal-active-fullscreen');}$body.data('windowManagerGlobalEvents',stack);return this;};OO.ui.WindowManager.prototype.toggleIsolation=function(isolate){this.isolated=isolate===undefined?!this.isolated:!!isolate;if(this.isolated){this.$element.removeAttr('aria-hidden').removeAttr('inert');let $el=this.$element;const ariaHidden=[];const inert=[];while(!$el.is('body')&&$el.length){const $siblings=$el.siblings().not('script');$el.removeAttr('aria-hidden').removeAttr('inert');ariaHidden.push.apply(ariaHidden,$siblings.not('[aria-hidden=true]').toArray());inert.push.apply(inert,$siblings.not('[inert]').toArray());$el=$el.parent();}this.$ariaHidden=$(ariaHidden);this.$inert=$(inert);this.$ariaHidden.attr('aria-hidden','true');this.$inert.attr('inert','');}else{this.$ariaHidden.removeAttr('aria-hidden');this.$inert.removeAttr('inert');this.$ariaHidden=null;\\nthis.$inert=null;this.$element.attr('aria-hidden','true').attr('inert','');}return this;};OO.ui.WindowManager.prototype.destroy=function(){this.clearWindows();this.$element.remove();};OO.ui.Window=function OoUiWindow(config){config=config||{};OO.ui.Window.super.call(this,config);OO.EventEmitter.call(this);this.manager=null;this.size=config.size||this.constructor.static.size;this.$frame=$('<div>');this.$overlay=$('<div>');this.$content=$('<div>');this.$focusTrapBefore=$('<div>').addClass('oo-ui-window-focusTrap').prop('tabIndex',0);this.$focusTrapAfter=this.$focusTrapBefore.clone();this.$focusTraps=this.$focusTrapBefore.add(this.$focusTrapAfter);this.$overlay.addClass('oo-ui-window-overlay');this.$content.addClass('oo-ui-window-content').attr('tabindex',-1);this.$frame.addClass('oo-ui-window-frame').append(this.$focusTrapBefore,this.$content,this.$focusTrapAfter);this.$element.addClass('oo-ui-window').append(this.$frame,this.$overlay);this.visible=false;this.$element.addClass('oo-ui-element-hidden');\\n};OO.inheritClass(OO.ui.Window,OO.ui.Element);OO.mixinClass(OO.ui.Window,OO.EventEmitter);OO.ui.Window.static.size='medium';OO.ui.Window.prototype.onMouseDown=function(e){if(e.target===this.$element[0]){return false;}};OO.ui.Window.prototype.isInitialized=function(){return!!this.manager;};OO.ui.Window.prototype.isVisible=function(){return this.visible;};OO.ui.Window.prototype.isOpening=function(){return this.manager.isOpening(this);};OO.ui.Window.prototype.isClosing=function(){return this.manager.isClosing(this);};OO.ui.Window.prototype.isOpened=function(){return this.manager.isOpened(this);};OO.ui.Window.prototype.getManager=function(){return this.manager;};OO.ui.Window.prototype.getSize=function(){const viewport=OO.ui.Element.static.getDimensions(this.getElementWindow());const sizes=this.manager.constructor.static.sizes;let size=this.size;if(!sizes[size]){size=this.manager.constructor.static.defaultSize;}if(size!=='full'&&viewport.rect.right-viewport.rect.left<sizes[size].width){size='full';\\n}return size;};OO.ui.Window.prototype.getSizeProperties=function(){return this.manager.constructor.static.sizes[this.getSize()];};OO.ui.Window.prototype.withoutSizeTransitions=function(callback){const oldTransition=this.$frame.css('transition-property')+' '+this.$frame.css('transition-duration')+' '+this.$frame.css('transition-timing-function')+' '+this.$frame.css('transition-delay');this.$frame.css('transition','none');callback();this.$frame.height();this.$frame.css('transition',oldTransition);};OO.ui.Window.prototype.getContentHeight=function(){const body=this.$body[0];const frame=this.$frame[0];let bodyHeight;this.withoutSizeTransitions(()=>{const oldHeight=frame.style.height;const oldPosition=body.style.position;const scrollTop=body.scrollTop;frame.style.height='1px';body.style.position='relative';bodyHeight=this.getBodyHeight();frame.style.height=oldHeight;body.style.position=oldPosition;body.scrollTop=scrollTop;});return((this.$frame.outerHeight()-this.$frame.innerHeight())+(this.$head.outerHeight(true)+bodyHeight+this.$foot.outerHeight(true))\\n);};OO.ui.Window.prototype.getBodyHeight=function(){return this.$body[0].scrollHeight;};OO.ui.Window.prototype.getDir=function(){return OO.ui.Element.static.getDir(this.$content)||'ltr';};OO.ui.Window.prototype.getSetupProcess=function(){return new OO.ui.Process();};OO.ui.Window.prototype.getReadyProcess=function(){return new OO.ui.Process();};OO.ui.Window.prototype.getHoldProcess=function(){return new OO.ui.Process();};OO.ui.Window.prototype.getTeardownProcess=function(){return new OO.ui.Process();};OO.ui.Window.prototype.setManager=function(manager){if(this.manager){throw new Error('Cannot set window manager, window already has a manager');}this.manager=manager;this.initialize();return this;};OO.ui.Window.prototype.setSize=function(size){this.size=size;this.updateSize();return this;};OO.ui.Window.prototype.updateSize=function(){if(!this.manager){throw new Error('Cannot update window size, must be attached to a manager');}this.manager.updateWindowSize(this);return this;};OO.ui.Window.prototype.setDimensions=function(dim){\\nconst styleObj=this.$frame[0].style;let height;if(dim.height===undefined){this.withoutSizeTransitions(()=>{const oldWidth=styleObj.width;this.$frame.css('width',dim.width||'');height=this.getContentHeight();styleObj.width=oldWidth;});}else{height=dim.height;}this.$frame.css({width:dim.width||'',minWidth:dim.minWidth||'',maxWidth:dim.maxWidth||'',height:height||'',minHeight:dim.minHeight||'',maxHeight:dim.maxHeight||''});return this;};OO.ui.Window.prototype.initialize=function(){if(!this.manager){throw new Error('Cannot initialize window, must be attached to a manager');}this.$head=$('<div>');this.$body=$('<div>');this.$foot=$('<div>');this.$document=$(this.getElementDocument());this.$element.on('mousedown',this.onMouseDown.bind(this));this.$focusTraps.on('focus',this.onFocusTrapFocused.bind(this));this.$head.addClass('oo-ui-window-head');this.$body.addClass('oo-ui-window-body');this.$foot.addClass('oo-ui-window-foot');this.$content.append(this.$head,this.$body,this.$foot);return this;};\\nOO.ui.Window.prototype.onFocusTrapFocused=function(event){const backwards=this.$focusTrapBefore.is(event.target);this.focus(backwards);};OO.ui.Window.prototype.focus=function(focusLast){const element=OO.ui.findFocusable(this.$content,!!focusLast);if(element){element.focus();}else{this.$content.trigger('focus');}return this;};OO.ui.Window.prototype.open=function(data){if(!this.manager){throw new Error('Cannot open window, must be attached to a manager');}return this.manager.openWindow(this,data);};OO.ui.Window.prototype.close=function(data){if(!this.manager){throw new Error('Cannot close window, must be attached to a manager');}return this.manager.closeWindow(this,data);};OO.ui.Window.prototype.setup=function(data){this.toggle(true);return this.getSetupProcess(data).execute().then(()=>{this.updateSize();this.$element.addClass('oo-ui-window-active oo-ui-window-setup').width();this.$content.addClass('oo-ui-window-content-setup').width();});};OO.ui.Window.prototype.ready=function(data){\\nthis.$content.trigger('focus');return this.getReadyProcess(data).execute().then(()=>{this.$element.addClass('oo-ui-window-ready').width();this.$content.addClass('oo-ui-window-content-ready').width();});};OO.ui.Window.prototype.hold=function(data){return this.getHoldProcess(data).execute().then(()=>{const $focus=this.$content.find(OO.ui.Element.static.getDocument(this.$content).activeElement);if($focus.length){$focus[0].blur();}this.$element.removeClass('oo-ui-window-ready oo-ui-window-setup').width();this.$content.removeClass('oo-ui-window-content-ready oo-ui-window-content-setup').width();});};OO.ui.Window.prototype.teardown=function(data){return this.getTeardownProcess(data).execute().then(()=>{this.$element.removeClass('oo-ui-window-active').width();this.toggle(false);});};OO.ui.Dialog=function OoUiDialog(config){OO.ui.Dialog.super.call(this,config);OO.ui.mixin.PendingElement.call(this);this.actions=new OO.ui.ActionSet();this.attachedActions=[];this.currentAction=null;this.onDialogKeyDownHandler=this.onDialogKeyDown.bind(this);\\nthis.actions.connect(this,{click:'onActionClick',change:'onActionsChange'});this.$element.addClass('oo-ui-dialog').attr('role','dialog');};OO.inheritClass(OO.ui.Dialog,OO.ui.Window);OO.mixinClass(OO.ui.Dialog,OO.ui.mixin.PendingElement);OO.ui.Dialog.static.name='';OO.ui.Dialog.static.title='';OO.ui.Dialog.static.actions=[];OO.ui.Dialog.prototype.getEscapeAction=function(){return'';};OO.ui.Dialog.prototype.onDialogKeyDown=function(e){if(e.which===OO.ui.Keys.ESCAPE){const action=this.getEscapeAction();if(action!==null){this.executeAction(action);e.preventDefault();e.stopPropagation();}}else if(e.which===OO.ui.Keys.ENTER&&(e.ctrlKey||e.metaKey)){const actions=this.actions.get({flags:'primary',visible:true,disabled:false});if(actions.length>0){this.executeAction(actions[0].getAction());e.preventDefault();e.stopPropagation();}}};OO.ui.Dialog.prototype.onActionClick=function(action){if(!this.isPending()){this.executeAction(action.getAction());}};OO.ui.Dialog.prototype.onActionsChange=function(){\\nthis.detachActions();if(!this.isClosing()){this.attachActions();if(!this.isOpening()){this.updateSize();}}};OO.ui.Dialog.prototype.getActions=function(){return this.actions;};OO.ui.Dialog.prototype.getActionProcess=function(action){return new OO.ui.Process().next(()=>{if(!action){this.close();}});};OO.ui.Dialog.prototype.getSetupProcess=function(data){data=data||{};return OO.ui.Dialog.super.prototype.getSetupProcess.call(this,data).next(()=>{const config=this.constructor.static,actions=data.actions!==undefined?data.actions:config.actions,title=data.title!==undefined?data.title:config.title;this.title.setLabel(title);this.actions.add(this.getActionWidgets(actions));this.$element.on('keydown',this.onDialogKeyDownHandler);});};OO.ui.Dialog.prototype.getTeardownProcess=function(data){return OO.ui.Dialog.super.prototype.getTeardownProcess.call(this,data).first(()=>{this.$element.off('keydown',this.onDialogKeyDownHandler);this.actions.clear();this.currentAction=null;});};OO.ui.Dialog.prototype.initialize=function(){\\nOO.ui.Dialog.super.prototype.initialize.call(this);this.title=new OO.ui.LabelWidget();this.$content.addClass('oo-ui-dialog-content');this.$element.attr('aria-labelledby',this.title.getElementId());this.setPendingElement(this.$head);};OO.ui.Dialog.prototype.getActionWidgets=function(actions){const widgets=[];for(let i=0,len=actions.length;i<len;i++){widgets.push(this.getActionWidget(actions[i]));}return widgets;};OO.ui.Dialog.prototype.getActionWidget=function(config){return new OO.ui.ActionWidget(this.getActionWidgetConfig(config));};OO.ui.Dialog.prototype.getActionWidgetConfig=function(config){return config;};OO.ui.Dialog.prototype.attachActions=function(){this.attachedActions=this.actions.get();};OO.ui.Dialog.prototype.detachActions=function(){for(let i=0,len=this.attachedActions.length;i<len;i++){this.attachedActions[i].$element.detach();}this.attachedActions=[];return this;};OO.ui.Dialog.prototype.executeAction=function(action){const actionWidgets=this.actions.get({actions:[action],visible:true});\\nif(actionWidgets.length&&actionWidgets.every((widget)=>widget.isDisabled())){return $.Deferred().resolve().promise();}this.pushPending();this.currentAction=action;return this.getActionProcess(action).execute().always(this.popPending.bind(this));};OO.ui.MessageDialog=function OoUiMessageDialog(config){OO.ui.MessageDialog.super.call(this,config);this.verticalActionLayout=null;this.$element.addClass('oo-ui-messageDialog');};OO.inheritClass(OO.ui.MessageDialog,OO.ui.Dialog);OO.ui.MessageDialog.static.name='message';OO.ui.MessageDialog.static.size='small';OO.ui.MessageDialog.static.title=null;OO.ui.MessageDialog.static.message=null;OO.ui.MessageDialog.static.actions=[{action:'accept',label:OO.ui.deferMsg('ooui-dialog-message-accept'),flags:'primary'},{action:'reject',label:OO.ui.deferMsg('ooui-dialog-message-reject'),flags:'safe'}];OO.ui.MessageDialog.prototype.toggleVerticalActionLayout=function(value){value=value===undefined?!this.verticalActionLayout:!!value;if(value!==this.verticalActionLayout){\\nthis.verticalActionLayout=value;this.$actions.toggleClass('oo-ui-messageDialog-actions-vertical',value).toggleClass('oo-ui-messageDialog-actions-horizontal',!value);}return this;};OO.ui.MessageDialog.prototype.getActionProcess=function(action){if(action){return new OO.ui.Process(()=>{this.close({action:action});});}return OO.ui.MessageDialog.super.prototype.getActionProcess.call(this,action);};OO.ui.MessageDialog.prototype.getSetupProcess=function(data){data=data||{};return OO.ui.MessageDialog.super.prototype.getSetupProcess.call(this,data).next(()=>{this.title.setLabel(data.title!==undefined?data.title:this.constructor.static.title);this.message.setLabel(data.message!==undefined?data.message:this.constructor.static.message);this.size=data.size!==undefined?data.size:this.constructor.static.size;});};OO.ui.MessageDialog.prototype.getReadyProcess=function(data){data=data||{};return OO.ui.MessageDialog.super.prototype.getReadyProcess.call(this,data).next(()=>{let actions=this.actions.get();\\nactions=actions.filter((action)=>action.getFlags().includes('primary'));if(actions.length>0){actions[0].focus();}});};OO.ui.MessageDialog.prototype.getBodyHeight=function(){const $scrollable=this.container.$element;const oldOverflow=$scrollable[0].style.overflow;$scrollable[0].style.overflow='hidden';OO.ui.Element.static.reconsiderScrollbars($scrollable[0]);const bodyHeight=this.text.$element.outerHeight(true);$scrollable[0].style.overflow=oldOverflow;return bodyHeight;};OO.ui.MessageDialog.prototype.setDimensions=function(dim){const $scrollable=this.container.$element;OO.ui.MessageDialog.super.prototype.setDimensions.call(this,dim);setTimeout(()=>{const oldOverflow=$scrollable[0].style.overflow,activeElement=document.activeElement;$scrollable[0].style.overflow='hidden';OO.ui.Element.static.reconsiderScrollbars($scrollable[0]);if(activeElement&&activeElement!==document.activeElement&&activeElement.focus){activeElement.focus();}$scrollable[0].style.overflow=oldOverflow;},300);this.fitActions();\\nsetTimeout(()=>{this.fitActions();},300);return this;};OO.ui.MessageDialog.prototype.initialize=function(){OO.ui.MessageDialog.super.prototype.initialize.call(this);this.$actions=$('<div>');this.container=new OO.ui.PanelLayout({scrollable:true,classes:['oo-ui-messageDialog-container']});this.text=new OO.ui.PanelLayout({padded:true,expanded:false,classes:['oo-ui-messageDialog-text']});this.message=new OO.ui.LabelWidget({classes:['oo-ui-messageDialog-message']});this.title.$element.addClass('oo-ui-messageDialog-title');this.$content.addClass('oo-ui-messageDialog-content');this.container.$element.append(this.text.$element);this.text.$element.append(this.title.$element,this.message.$element);this.$body.append(this.container.$element);this.$actions.addClass('oo-ui-messageDialog-actions');this.$foot.append(this.$actions);};OO.ui.MessageDialog.prototype.getActionWidgetConfig=function(config){return Object.assign({},config,{framed:false});};OO.ui.MessageDialog.prototype.attachActions=function(){\\nOO.ui.MessageDialog.super.prototype.attachActions.call(this);const special=this.actions.getSpecial();const others=this.actions.getOthers();if(special.safe){this.$actions.append(special.safe.$element);special.safe.toggleFramed(true);}for(let i=0,len=others.length;i<len;i++){this.$actions.append(others[i].$element);others[i].toggleFramed(true);}if(special.primary){this.$actions.append(special.primary.$element);special.primary.toggleFramed(true);}};OO.ui.MessageDialog.prototype.fitActions=function(){const previous=this.verticalActionLayout;this.toggleVerticalActionLayout(false);if(this.$actions[0].scrollWidth>this.$actions[0].clientWidth){this.toggleVerticalActionLayout(true);}this.$body.css('bottom',this.$foot.outerHeight(true));if(this.verticalActionLayout!==previous){this.updateSize();}};OO.ui.ProcessDialog=function OoUiProcessDialog(config){OO.ui.ProcessDialog.super.call(this,config);this.fitOnOpen=false;this.$element.addClass('oo-ui-processDialog');if(OO.ui.isMobile()){this.$element.addClass('oo-ui-isMobile');\\n}};OO.inheritClass(OO.ui.ProcessDialog,OO.ui.Dialog);OO.ui.ProcessDialog.prototype.onDismissErrorButtonClick=function(){this.hideErrors();};OO.ui.ProcessDialog.prototype.onRetryButtonClick=function(){this.hideErrors();this.executeAction(this.currentAction);};OO.ui.ProcessDialog.prototype.initialize=function(){OO.ui.ProcessDialog.super.prototype.initialize.call(this);this.$navigation=$('<div>');this.$location=$('<div>');this.$safeActions=$('<div>');this.$primaryActions=$('<div>');this.$otherActions=$('<div>');this.dismissButton=new OO.ui.ButtonWidget({label:OO.ui.msg('ooui-dialog-process-dismiss')});this.retryButton=new OO.ui.ButtonWidget();this.$errors=$('<div>');this.$errorsTitle=$('<div>');this.dismissButton.connect(this,{click:'onDismissErrorButtonClick'});this.retryButton.connect(this,{click:'onRetryButtonClick'});this.title.connect(this,{labelChange:'fitLabel'});this.title.$element.addClass('oo-ui-processDialog-title');this.$location.append(this.title.$element).addClass('oo-ui-processDialog-location');\\nthis.$safeActions.addClass('oo-ui-processDialog-actions-safe');this.$primaryActions.addClass('oo-ui-processDialog-actions-primary');this.$otherActions.addClass('oo-ui-processDialog-actions-other');this.$errorsTitle.addClass('oo-ui-processDialog-errors-title').text(OO.ui.msg('ooui-dialog-process-error'));this.$errors.addClass('oo-ui-processDialog-errors oo-ui-element-hidden').append(this.$errorsTitle,$('<div>').addClass('oo-ui-processDialog-errors-actions').append(this.dismissButton.$element,this.retryButton.$element));this.$content.addClass('oo-ui-processDialog-content').append(this.$errors);this.$navigation.addClass('oo-ui-processDialog-navigation').append(this.$primaryActions,this.$location,this.$safeActions);this.$head.append(this.$navigation);this.$foot.append(this.$otherActions);};OO.ui.ProcessDialog.prototype.getActionWidgetConfig=function(config){function checkFlag(flag){return config.flags===flag||(Array.isArray(config.flags)&&config.flags.includes(flag));}config=Object.assign({framed:true},config);\\nif(checkFlag('close')){Object.assign(config,{icon:'close',invisibleLabel:true});}else if(checkFlag('back')){Object.assign(config,{icon:'previous',invisibleLabel:true});}return config;};OO.ui.ProcessDialog.prototype.attachActions=function(){OO.ui.ProcessDialog.super.prototype.attachActions.call(this);const special=this.actions.getSpecial();const others=this.actions.getOthers();if(special.primary){this.$primaryActions.append(special.primary.$element);}for(let i=0,len=others.length;i<len;i++){const other=others[i];this.$otherActions.append(other.$element);}if(special.safe){this.$safeActions.append(special.safe.$element);}};OO.ui.ProcessDialog.prototype.executeAction=function(action){return OO.ui.ProcessDialog.super.prototype.executeAction.call(this,action).fail((errors)=>{this.showErrors(errors||[]);});};OO.ui.ProcessDialog.prototype.setDimensions=function(){OO.ui.ProcessDialog.super.prototype.setDimensions.apply(this,arguments);this.fitLabel();this.$body.css('bottom',this.$foot.outerHeight(true));\\nsetTimeout(()=>{this.$body.css('bottom',this.$foot.outerHeight(true));},300);};OO.ui.ProcessDialog.prototype.fitLabel=function(){const size=this.getSizeProperties();let navigationWidth;if(typeof size.width!=='number'){if(this.isOpened()){navigationWidth=this.$head.width()-20;}else if(this.isOpening()){if(!this.fitOnOpen){this.manager.lifecycle.opened.done(this.fitLabel.bind(this));this.fitOnOpen=true;}return;}else{return;}}else{navigationWidth=size.width-20;}const safeWidth=this.$safeActions.width();const primaryWidth=this.$primaryActions.width();const biggerWidth=Math.max(safeWidth,primaryWidth);const labelWidth=this.title.$element.width();let leftWidth,rightWidth;if(!OO.ui.isMobile()&&2*biggerWidth+labelWidth<navigationWidth){leftWidth=rightWidth=biggerWidth;}else{if(this.getDir()==='ltr'){leftWidth=safeWidth;rightWidth=primaryWidth;}else{leftWidth=primaryWidth;rightWidth=safeWidth;}}this.$location.css({paddingLeft:leftWidth,paddingRight:rightWidth});return this;};OO.ui.ProcessDialog.prototype.showErrors=function(errors){\\nconst items=[],abilities={};let recoverable=true,warning=false;if(errors instanceof OO.ui.Error){errors=[errors];}for(let i=0,len=errors.length;i<len;i++){if(!errors[i].isRecoverable()){recoverable=false;}if(errors[i].isWarning()){warning=true;}items.push(new OO.ui.MessageWidget({type:errors[i].isWarning()?'warning':'error',label:errors[i].getMessage()}).$element[0]);}this.$errorItems=$(items);if(recoverable){abilities[this.currentAction]=true;const actions=this.actions.get({actions:this.currentAction});if(actions.length){this.retryButton.clearFlags().setFlags(actions[0].getFlags());}}else{abilities[this.currentAction]=false;this.actions.setAbilities(abilities);}if(warning){this.retryButton.setLabel(OO.ui.msg('ooui-dialog-process-continue'));}else{this.retryButton.setLabel(OO.ui.msg('ooui-dialog-process-retry'));}this.retryButton.toggle(recoverable);this.$errorsTitle.after(this.$errorItems);this.$errors.removeClass('oo-ui-element-hidden').scrollTop(0);};OO.ui.ProcessDialog.prototype.hideErrors=function(){\\nthis.$errors.addClass('oo-ui-element-hidden');if(this.$errorItems){this.$errorItems.remove();this.$errorItems=null;}};OO.ui.ProcessDialog.prototype.getTeardownProcess=function(data){return OO.ui.ProcessDialog.super.prototype.getTeardownProcess.call(this,data).first(()=>{this.hideErrors();this.fitOnOpen=false;});};OO.ui.getWindowManager=function(){if(!OO.ui.windowManager){OO.ui.windowManager=new OO.ui.WindowManager();$(OO.ui.getTeleportTarget()).append(OO.ui.windowManager.$element);OO.ui.windowManager.addWindows([new OO.ui.MessageDialog()]);}return OO.ui.windowManager;};OO.ui.alert=function(text,options){return OO.ui.getWindowManager().openWindow('message',Object.assign({message:text,actions:[OO.ui.MessageDialog.static.actions[0]]},options)).closed.then(()=>undefined);};OO.ui.confirm=function(text,options){return OO.ui.getWindowManager().openWindow('message',Object.assign({message:text},options)).closed.then((data)=>!!(data&&data.action==='accept'));};OO.ui.prompt=function(text,options){\\nconst manager=OO.ui.getWindowManager(),textInput=new OO.ui.TextInputWidget((options&&options.textInput)||{}),textField=new OO.ui.FieldLayout(textInput,{align:'top',label:text});const instance=manager.openWindow('message',Object.assign({message:textField.$element},options));instance.opened.then(()=>{textInput.on('enter',()=>{manager.getCurrentWindow().close({action:'accept'});});textInput.focus();});return instance.closed.then((data)=>data&&data.action==='accept'?textInput.getValue():null);};}(OO));\\n},{\\\"css\\\":[\\\".oo-ui-window{background:transparent}.oo-ui-window-frame{box-sizing:border-box}.oo-ui-window-content{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden}.oo-ui-window-content:focus{outline:0}.oo-ui-window-head,.oo-ui-window-foot{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.oo-ui-window-body{margin:0;padding:0;background:none}.oo-ui-window-overlay{position:absolute;top:0; left:0}.oo-ui-window-focusTrap{display:none}.oo-ui-windowManager-modal .oo-ui-window-focusTrap,.oo-ui-windowManager-size-full .oo-ui-window-focusTrap,.oo-ui-windowManager-forceTrapFocus .oo-ui-window-focusTrap{display:block}.oo-ui-dialog-content \\\\u003E .oo-ui-window-head,.oo-ui-dialog-content \\\\u003E .oo-ui-window-body,.oo-ui-dialog-content \\\\u003E .oo-ui-window-foot{position:absolute;left:0;right:0;box-sizing:border-box}.oo-ui-dialog-content \\\\u003E .oo-ui-window-head{overflow:hidden;z-index:3;top:0}.oo-ui-dialog-content \\\\u003E .oo-ui-window-body{overflow:auto;-webkit-overflow-scrolling:touch;z-index:2;top:0;bottom:0}.oo-ui-dialog-content \\\\u003E .oo-ui-window-foot{z-index:3;bottom:0}.oo-ui-messageDialog-actions .oo-ui-actionWidget{position:relative;text-align:center}.oo-ui-messageDialog-actions .oo-ui-actionWidget .oo-ui-buttonElement-button{display:block}.oo-ui-messageDialog-actions .oo-ui-actionWidget .oo-ui-labelElement-label{position:relative;top:auto;bottom:auto}.oo-ui-messageDialog-actions-horizontal{display:flex;width:100%}.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget{flex-grow:1}.oo-ui-messageDialog-actions-vertical{display:block}.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget{display:block;overflow:hidden;text-overflow:ellipsis}.oo-ui-messageDialog-content \\\\u003E .oo-ui-window-foot{outline:1px solid var(--border-color-base,#a2a9b1)}.oo-ui-messageDialog-title,.oo-ui-messageDialog-message{display:block;line-height:1.42857143em;text-align:center}.oo-ui-messageDialog-title{font-size:1.5em;color:var(--color-emphasized,#000)}.oo-ui-messageDialog-message{font-size:1.1em;color:var(--color-base,#202122);text-align:left}.oo-ui-messageDialog-actions .oo-ui-actionWidget{min-height:2.85714286em;margin-right:0}.oo-ui-messageDialog-actions .oo-ui-actionWidget:last-child{margin-right:0}.oo-ui-messageDialog-actions .oo-ui-actionWidget:first-child{margin-left:0}.oo-ui-messageDialog-actions .oo-ui-actionWidget .oo-ui-buttonElement-button{border:0;border-radius:0;padding-top:0;padding-bottom:0}.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-labelElement .oo-ui-labelElement-label{line-height:2.85714286em;text-align:center}.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive .oo-ui-buttonElement-button:active{background-color:rgba(8,126,204,0.1)}.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive .oo-ui-buttonElement-button:active{background-color:rgba(212,83,83,0.1)}.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget{border-right:1px solid var(--border-color-base,#a2a9b1);margin:0}.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget:first-child \\\\u003E .oo-ui-buttonElement-button{border-radius:0 0 0 2px}.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget:last-child{border-right-width:0}.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget:last-child \\\\u003E .oo-ui-buttonElement-button{border-radius:0 0 2px 0}.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget:only-child \\\\u003E .oo-ui-buttonElement-button{border-radius:0 0 2px 2px}.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget{border-bottom:1px solid var(--border-color-base,#a2a9b1);margin:0}.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget:last-child{border-bottom-width:0}.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget:last-child \\\\u003E .oo-ui-buttonElement-button{border-radius:0 0 2px 2px}.oo-ui-processDialog-location{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.oo-ui-processDialog-title{display:inline;padding:0}.oo-ui-processDialog-actions-safe .oo-ui-actionWidget,.oo-ui-processDialog-actions-primary .oo-ui-actionWidget,.oo-ui-processDialog-actions-other .oo-ui-actionWidget{white-space:nowrap}.oo-ui-processDialog-actions-safe,.oo-ui-processDialog-actions-primary{position:absolute;top:0;bottom:0}.oo-ui-processDialog-actions-safe{left:0}.oo-ui-processDialog-actions-primary{right:0}.oo-ui-processDialog-errors{position:absolute;top:0;left:0;right:0;bottom:0;z-index:4;overflow:hidden auto;-webkit-overflow-scrolling:touch}.oo-ui-processDialog-content \\\\u003E .oo-ui-window-head,.oo-ui-processDialog-content \\\\u003E .oo-ui-window-foot{outline:1px solid var(--border-color-subtle,#c8ccd1)}.oo-ui-processDialog-content \\\\u003E .oo-ui-window-head{min-height:3em}.oo-ui-processDialog-content \\\\u003E .oo-ui-window-body{top:3em}.oo-ui-processDialog-navigation{position:relative;min-height:3em}.oo-ui-processDialog-location{min-height:3em;text-align:center;cursor:default}.oo-ui-processDialog-title{font-size:1.1em;font-weight:700;line-height:2.72727273em}.oo-ui-processDialog .oo-ui-actionWidget \\\\u003E .oo-ui-buttonElement-button{border-radius:0;border-top-color:transparent;border-bottom-color:transparent}.oo-ui-processDialog .oo-ui-actionWidget \\\\u003E .oo-ui-buttonElement-button:hover,.oo-ui-processDialog .oo-ui-actionWidget \\\\u003E .oo-ui-buttonElement-button:active{border-top-color:transparent;border-bottom-color:transparent}.oo-ui-processDialog .oo-ui-actionWidget:not(.oo-ui-flaggedElement-progressive):not(.oo-ui-flaggedElement-destructive) \\\\u003E .oo-ui-buttonElement-button:hover,.oo-ui-processDialog .oo-ui-actionWidget:not(.oo-ui-flaggedElement-progressive):not(.oo-ui-flaggedElement-destructive) \\\\u003E .oo-ui-buttonElement-button:active{border-right-color:var(--border-color-subtle,#c8ccd1);border-left-color:transparent}.oo-ui-processDialog .oo-ui-actionWidget:not(.oo-ui-flaggedElement-progressive):not(.oo-ui-flaggedElement-destructive) \\\\u003E .oo-ui-buttonElement-button:focus{border-color:var(--border-color-progressive--focus,#36c)}.oo-ui-processDialog .oo-ui-actionWidget.oo-ui-iconElement \\\\u003E .oo-ui-buttonElement-button{min-height:3em;padding-top:0;padding-left:3.14285714em;padding-right:0}.oo-ui-processDialog .oo-ui-actionWidget.oo-ui-labelElement:first-child{margin-left:0}.oo-ui-processDialog .oo-ui-actionWidget.oo-ui-labelElement \\\\u003E .oo-ui-buttonElement-button{padding:10px 12px}.oo-ui-processDialog .oo-ui-actionWidget.oo-ui-labelElement.oo-ui-iconElement \\\\u003E .oo-ui-buttonElement-button{padding-left:2.42857143em}.oo-ui-processDialog-actions-primary .oo-ui-actionWidget \\\\u003E .oo-ui-buttonElement-button{border-left-color:var(--border-color-subtle,#c8ccd1);border-right-color:transparent}.oo-ui-processDialog-actions-primary .oo-ui-actionWidget:not(.oo-ui-flaggedElement-progressive):not(.oo-ui-flaggedElement-destructive) \\\\u003E .oo-ui-buttonElement-button:hover,.oo-ui-processDialog-actions-primary .oo-ui-actionWidget:not(.oo-ui-flaggedElement-progressive):not(.oo-ui-flaggedElement-destructive) \\\\u003E .oo-ui-buttonElement-button:active{border-left-color:var(--border-color-subtle,#c8ccd1);border-right-color:transparent}.oo-ui-processDialog-actions-primary .oo-ui-actionWidget:not(.oo-ui-flaggedElement-progressive):not(.oo-ui-flaggedElement-destructive) \\\\u003E .oo-ui-buttonElement-button:focus{border-color:var(--border-color-progressive--focus,#36c)}.oo-ui-processDialog-actions-safe .oo-ui-actionWidget \\\\u003E .oo-ui-buttonElement-button,.oo-ui-processDialog-actions-other .oo-ui-actionWidget \\\\u003E .oo-ui-buttonElement-button{border-right-color:var(--border-color-subtle,#c8ccd1);border-left-color:transparent}.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not(.oo-ui-labelElement) \\\\u003E .oo-ui-buttonElement-button{background-color:transparent;border-right-color:transparent}.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not(.oo-ui-labelElement) \\\\u003E .oo-ui-buttonElement-button:hover{background-color:var(--background-color-interactive-subtle,#f8f9fa);border-right-color:var(--border-color-subtle,#c8ccd1)}.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not(.oo-ui-labelElement) \\\\u003E .oo-ui-buttonElement-button:active{background-color:var(--background-color-interactive,#eaecf0);border-right-color:var(--border-color-subtle,#c8ccd1)}.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not(.oo-ui-labelElement) \\\\u003E .oo-ui-buttonElement-button:focus{border-color:var(--border-color-progressive--focus,#36c)}.oo-ui-processDialog-actions-other .oo-ui-actionWidget.oo-ui-buttonElement{margin-right:0}.oo-ui-processDialog \\\\u003E .oo-ui-window-frame{min-height:5em}.oo-ui-processDialog-errors{background-color:var(--background-color-backdrop-light,rgba(255,255,255,0.65));background-image:linear-gradient(to bottom,var(--background-color-backdrop-light,rgba(255,255,255,0.65)),var(--background-color-backdrop-light,rgba(255,255,255,0.65)));padding:3em 3em 0 3em}.oo-ui-processDialog-errors-title{font-size:1.5em;color:var(--color-emphasized,#000);margin-bottom:1.5em;text-align:center}.oo-ui-processDialog-errors \\\\u003E .oo-ui-messageWidget{margin:1em 0 0}.oo-ui-processDialog-errors-actions{text-align:center}.oo-ui-processDialog-errors-actions \\\\u003E .oo-ui-buttonWidget{margin:2em 1em}.oo-ui-processDialog.oo-ui-isMobile .oo-ui-processDialog-content \\\\u003E .oo-ui-window-head,.oo-ui-processDialog.oo-ui-isMobile .oo-ui-processDialog-navigation,.oo-ui-processDialog.oo-ui-isMobile .oo-ui-processDialog-location{min-height:3.14285714em}.oo-ui-processDialog.oo-ui-isMobile .oo-ui-processDialog-location{margin-left:1em;text-align:left}.oo-ui-processDialog.oo-ui-isMobile .oo-ui-processDialog-title{line-height:2.85714286em}.oo-ui-processDialog.oo-ui-isMobile .oo-ui-processDialog-content \\\\u003E .oo-ui-window-body{top:3.14285714em}.oo-ui-processDialog.oo-ui-isMobile .oo-ui-actionWidget.oo-ui-iconElement \\\\u003E .oo-ui-buttonElement-button{min-height:3.14285714em;padding-left:3.14285714em}.oo-ui-processDialog.oo-ui-isMobile .oo-ui-actionWidget.oo-ui-labelElement \\\\u003E .oo-ui-buttonElement-button{min-height:3.14285714em;line-height:3.14285714em;padding:0 12px}.oo-ui-processDialog.oo-ui-isMobile .oo-ui-actionWidget.oo-ui-labelElement.oo-ui-iconElement \\\\u003E .oo-ui-buttonElement-button{padding-left:2.42857143em}.oo-ui-windowManager-modal \\\\u003E .oo-ui-dialog{position:fixed;width:0;height:0;overflow:hidden;z-index:4}.oo-ui-windowManager-modal \\\\u003E .oo-ui-dialog.oo-ui-window-active{width:auto;height:auto;top:0;right:0;bottom:0;left:0;padding:1em}.oo-ui-windowManager-modal \\\\u003E .oo-ui-dialog.oo-ui-window-active \\\\u003E .oo-ui-window-frame{position:absolute;right:0;left:0;margin:auto;max-width:100%;max-height:100%}.oo-ui-windowManager-size-full \\\\u003E .oo-ui-dialog \\\\u003E .oo-ui-window-frame{width:100%;height:100%;top:0;bottom:0}body.oo-ui-windowManager-modal-active{overflow:hidden}html.oo-ui-windowManager-modal-active:not(.oo-ui-windowManager-modal-active-fullscreen){scrollbar-gutter:stable}.oo-ui-windowManager-ios-modal-ready{height:100%;overflow:hidden}.oo-ui-windowManager-modal \\\\u003E .oo-ui-dialog{background-color:var(--background-color-backdrop-light,rgba(255,255,255,0.65));opacity:0;transition-property:opacity;transition-duration:250ms}.oo-ui-windowManager-modal \\\\u003E .oo-ui-dialog \\\\u003E .oo-ui-window-frame{background-color:var(--background-color-base,#fff);opacity:0;transform:scale(0.5);transition-property:all;transition-duration:250ms}.oo-ui-windowManager-modal \\\\u003E .oo-ui-dialog.oo-ui-window-setup{opacity:1}.oo-ui-windowManager-modal \\\\u003E .oo-ui-dialog.oo-ui-window-setup \\\\u003E .oo-ui-window-frame{opacity:1;transform:scale(1)}.oo-ui-windowManager-modal:not(.oo-ui-windowManager-size-full) \\\\u003E .oo-ui-dialog \\\\u003E .oo-ui-window-frame{top:1em;bottom:1em;max-height:100%;max-height:calc(100% - 2em);border:1px solid var(--border-color-base,#a2a9b1);border-radius:2px;box-shadow:0 2px 2px 0 rgba(0,0,0,0.2)}\\\"]},{\\\"ooui-dialog-message-accept\\\":\\\"OK\\\",\\\"ooui-dialog-message-reject\\\":\\\"Cancel\\\",\\\"ooui-dialog-process-continue\\\":\\\"Continue\\\",\\\"ooui-dialog-process-dismiss\\\":\\\"Dismiss\\\",\\\"ooui-dialog-process-error\\\":\\\"Something went wrong\\\",\\\"ooui-dialog-process-retry\\\":\\\"Try again\\\"}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs-ui-windows&skin=vector-2022&version=1mufy\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs-ui-windows&skin=vector-2022&sourcemap=1&version=1mufy\",\"skins.vector.js@1rcc2\":\"mw.loader.impl(function(){return[\\\"skins.vector.js@1rcc2\\\",{\\\"main\\\":\\\"resources/skins.vector.js/skin.js\\\",\\\"files\\\":{\\\"resources/skins.vector.js/skin.js\\\":function(require,module,exports){const languageButton=require('./languageButton.js'),pinnableElement=require('./pinnableElement.js'),searchToggle=require('./searchToggle.js'),portletsManager=require('./portlets.js'),dropdownMenus=require('./dropdownMenus.js').dropdownMenus,tables=require('./tables.js').init,watchstar=require('./watchstar.js').init,setupIntersectionObservers=require('./setupIntersectionObservers.js'),menuTabs=require('./menuTabs.js'),userPreferences=require('./userPreferences.js'),{isNightModeGadgetEnabled,disableNightModeForGadget,alterExclusionMessage,removeBetaNotice}=require('./disableNightModeIfGadget.js'),teleportTarget=require(('mediawiki.page.ready')).teleportTarget;function enableCssAnimations(document){document.documentElement.classList.add('vector-animations-ready');}function main(window){enableCssAnimations(window.document);languageButton();portletsManager.main();watchstar();const searchToggleElement=document.querySelector('.mw-header .search-toggle');if(searchToggleElement){searchToggle(searchToggleElement);\\n}pinnableElement.init();setupIntersectionObservers.main();teleportTarget.classList.add('vector-body');const appearanceMenuSelector='#vector-appearance';const appearanceMenuExists=document.querySelectorAll(appearanceMenuSelector).length>0;if(appearanceMenuExists){mw.loader.using(['skins.vector.clientPreferences','skins.vector.search.codex.styles']).then(()=>{const clientPreferences=require(('skins.vector.clientPreferences'));const clientPreferenceConfig=(require('./clientPreferences.json'));if(document.documentElement.classList.contains('vector-feature-night-mode-disabled')){delete clientPreferenceConfig['skin-theme'];}if(isNightModeGadgetEnabled()){disableNightModeForGadget();clientPreferences.render(appearanceMenuSelector,clientPreferenceConfig,userPreferences);alterExclusionMessage();removeBetaNotice();}else{clientPreferences.render(appearanceMenuSelector,clientPreferenceConfig,userPreferences);}});}dropdownMenus();menuTabs();tables();}function init(window){const now=mw.now();mw.loader.using('ext.eventLogging').then(()=>{\\nif(mw.eventLog&&mw.eventLog.eventInSample(100)&&window.performance&&window.performance.timing&&window.performance.timing.navigationStart){mw.track('timing.Vector.ready',now-window.performance.timing.navigationStart);mw.track('stats.mediawiki_Vector_ready_seconds',now-window.performance.timing.navigationStart);}});}init(window);if(document.readyState==='interactive'||document.readyState==='complete'){main(window);}else{document.addEventListener('DOMContentLoaded',()=>{main(window);});}module.exports={pinnableElement};\\n},\\\"resources/skins.vector.js/setupIntersectionObservers.js\\\":function(require,module,exports){const stickyHeader=require('./stickyHeader.js'),scrollObserver=require('./scrollObserver.js'),initSectionObserver=require('./sectionObserver.js'),initTableOfContents=require('./tableOfContents.js'),pinnableElement=require('./pinnableElement.js'),features=require('./features.js'),deferUntilFrame=require('./deferUntilFrame.js'),STICKY_HEADER_ENABLED_CLASS='vector-sticky-header-enabled',STICKY_HEADER_VISIBLE_CLASS='vector-sticky-header-visible',TOC_ID='vector-toc',BODY_CONTENT_ID='bodyContent',HEADING_TAGS=['h1','h2','h3','h4','h5','h6'],HEADING_SELECTOR=['.mw-heading'].map((sel)=>`.mw-parser-output ${sel}`).join(', '),HEADLINE_SELECTOR=[...HEADING_TAGS.map((tag)=>`${tag}[id]`)].map((sel)=>`.mw-parser-output ${sel}`).join(', '),TOC_SECTION_ID_PREFIX='toc-',PAGE_TITLE_INTERSECTION_CLASS='vector-below-page-title';const belowDesktopMedia=window.matchMedia('(max-width: 1119px)');const getHeadingIntersectionHandler=(changeActiveSection)=>(section)=>{const headline=section.classList.contains('mw-body-content')?\\nsection:section.querySelector(HEADLINE_SELECTOR);if(headline){changeActiveSection(`${TOC_SECTION_ID_PREFIX}${headline.id}`);}};const updateTocLocation=(pinnableHeader)=>{if(!pinnableHeader){return;}const isStickyHeaderVisible=document.body.classList.contains(STICKY_HEADER_VISIBLE_CLASS);const isBelowDesktop=belowDesktopMedia.matches;const stickyHeaderUnpinnedContainerId='vector-sticky-header-toc-unpinned-container';const pageTitlebarUnpinnedContainerId='vector-page-titlebar-toc-unpinned-container';const unpinnedContainerId=(isStickyHeaderVisible&&!isBelowDesktop)?stickyHeaderUnpinnedContainerId:pageTitlebarUnpinnedContainerId;pinnableHeader.dataset.unpinnedContainerId=unpinnedContainerId;const isPinned=features.isEnabled('toc-pinned');pinnableElement.updatePinnableState(pinnableHeader,isPinned);};function getHeadingScrollOffset(){const scrollMarginHeading=75;const documentStyles=getComputedStyle(document.documentElement);const scrollPaddingTopString=documentStyles.getPropertyValue('scroll-padding-top');\\nconst scrollPaddingTop=(scrollPaddingTopString==='auto'||scrollPaddingTopString==='')?0:parseInt(scrollPaddingTopString,10);return scrollPaddingTop+scrollMarginHeading;}const setupTableOfContents=(tocElement,bodyContent,initSectionObserverFn)=>{const handleTocSectionChange=()=>{sectionObserver.pause();deferUntilFrame(()=>{sectionObserver.resume();},3);};const tableOfContents=initTableOfContents({container:tocElement,onHeadingClick:handleTocSectionChange,onHashChange:handleTocSectionChange});const elements=()=>bodyContent.querySelectorAll(`${HEADING_SELECTOR}, .mw-body-content`);const sectionObserver=initSectionObserverFn({elements:elements(),topMargin:getHeadingScrollOffset(),onIntersection:getHeadingIntersectionHandler(tableOfContents.changeActiveSection)});const updateElements=()=>{sectionObserver.resume();sectionObserver.setElements(elements());};mw.hook('ve.activationStart').add(()=>{sectionObserver.pause();});mw.hook('wikipage.tableOfContents').add((sections)=>{tableOfContents.reloadTableOfContents(sections).then(()=>{\\nmw.hook('wikipage.tableOfContents.vector').fire(sections);updateElements();});});mw.hook('ve.deactivationComplete').add(updateElements);const setInitialActiveSection=()=>{const hash=location.hash.slice(1);if(hash===''){sectionObserver.calcIntersection();return;}const hashSection=(mw.util.getTargetFromFragment(`${TOC_SECTION_ID_PREFIX}${hash}`));if(hashSection){tableOfContents.expandSection(hashSection.id);}if(hashSection&&Math.round(window.innerHeight+window.scrollY)>=document.body.scrollHeight){tableOfContents.changeActiveSection(hashSection.id);}else{sectionObserver.calcIntersection();}};setInitialActiveSection();return tableOfContents;};const main=()=>{const tocElement=document.getElementById(TOC_ID);const bodyContent=document.getElementById(BODY_CONTENT_ID);const tocPinnableHeader=(document.querySelector('.vector-toc-pinnable-header'));let tableOfContents=null;if(tocElement&&bodyContent&&tocPinnableHeader){tableOfContents=setupTableOfContents(tocElement,bodyContent,initSectionObserver);\\nupdateTocLocation(tocPinnableHeader);}const stickyHeaderElement=document.getElementById(stickyHeader.STICKY_HEADER_ID),stickyIntersection=document.getElementById(stickyHeader.FIRST_HEADING_ID),userLinksDropdown=document.getElementById(stickyHeader.USER_LINKS_DROPDOWN_ID),allowedNamespace=stickyHeader.isAllowedNamespace(mw.config.get('wgNamespaceNumber')),allowedAction=stickyHeader.isAllowedAction(mw.config.get('wgAction'));const stickyHeaderAllowed=!mw.user.isAnon()&&!!stickyHeaderElement&&!!stickyIntersection&&!!userLinksDropdown&&allowedNamespace&&allowedAction;let scrolledPastPageTitle=false;const observer=scrollObserver.initScrollObserver(()=>{if(stickyHeaderAllowed){scrolledPastPageTitle=true;if(!belowDesktopMedia.matches){stickyHeader.show();}if(tableOfContents){updateTocLocation(tocPinnableHeader);}}document.body.classList.add(PAGE_TITLE_INTERSECTION_CLASS);if(tableOfContents){tableOfContents.updateTocToggleStyles(true);}scrollObserver.firePageTitleScrollHook('down');},()=>{if(stickyHeaderAllowed){\\nscrolledPastPageTitle=false;if(!belowDesktopMedia.matches){stickyHeader.hide();}if(tableOfContents){updateTocLocation(tocPinnableHeader);}}document.body.classList.remove(PAGE_TITLE_INTERSECTION_CLASS);if(tableOfContents){tableOfContents.updateTocToggleStyles(false);}scrollObserver.firePageTitleScrollHook('up');});belowDesktopMedia.onchange=()=>{if(!belowDesktopMedia.matches&&scrolledPastPageTitle){stickyHeader.show();}else{stickyHeader.hide();}if(tableOfContents){updateTocLocation(tocPinnableHeader);}};if(!stickyHeaderAllowed){stickyHeader.hide();document.documentElement.classList.remove(STICKY_HEADER_ENABLED_CLASS);}if(stickyHeaderAllowed){stickyHeader.initStickyHeader({header:stickyHeaderElement,userLinksDropdown,observer,stickyIntersection});}else if(stickyIntersection){observer.observe(stickyIntersection);}};module.exports={main,test:{setupTableOfContents,getHeadingIntersectionHandler}};\\n},\\\"resources/skins.vector.js/searchToggle.js\\\":function(require,module,exports){const HEADER_CONTAINER_CLASS='vector-header-container',SEARCH_BOX_SELECTOR='.vector-search-box',SEARCH_VISIBLE_CLASS='vector-header-search-toggled';function bindSearchBoxHandler(searchBox,header){const clickHandler=(ev)=>{if(ev.target instanceof HTMLElement&&!ev.target.closest('.cdx-typeahead-search .cdx-menu-item__content')&&!searchBox.contains(ev.target)){header.classList.remove(SEARCH_VISIBLE_CLASS);document.removeEventListener('click',clickHandler);}};document.addEventListener('click',clickHandler);}function bindToggleClickHandler(searchBox,header,searchToggle){const handler=(ev)=>{ev.preventDefault();header.classList.add(SEARCH_VISIBLE_CLASS);setTimeout(()=>{bindSearchBoxHandler(searchBox,header);const searchInput=(searchBox.querySelector('input[type=\\\"search\\\"]'));if(searchInput){const beforeScrollX=window.scrollX;const beforeScrollY=window.scrollY;searchInput.focus();if(beforeScrollX!==undefined&&beforeScrollY!==undefined){window.scroll(beforeScrollX,beforeScrollY);}}});};\\nsearchToggle.addEventListener('click',handler);}module.exports=function initSearchToggle(searchToggle){const headerContainer=(searchToggle.closest(`.${HEADER_CONTAINER_CLASS}`));const header=(headerContainer&&headerContainer.firstElementChild);if(!header){return;}const searchBox=(header.querySelector(SEARCH_BOX_SELECTOR));if(!searchBox){return;}bindToggleClickHandler(searchBox,header,searchToggle);};\\n},\\\"resources/skins.vector.js/stickyHeader.js\\\":function(require,module,exports){const initSearchToggle=require('./searchToggle.js'),updateWatchIcon=require('./watchstar.js').updateWatchIcon,STICKY_HEADER_ID='vector-sticky-header',STICKY_HEADER_APPENDED_ID='-sticky-header',STICKY_HEADER_APPENDED_PARAM=['wvprov','sticky-header'],STICKY_HEADER_VISIBLE_CLASS='vector-sticky-header-visible',STICKY_HEADER_USER_MENU_CONTAINER_SELECTOR='.vector-sticky-header-icon-end .vector-user-links',FIRST_HEADING_ID='firstHeading',USER_LINKS_DROPDOWN_ID='vector-user-links-dropdown',ULS_STICKY_CLASS='uls-dialog-sticky',ULS_HIDE_CLASS='uls-dialog-sticky-hide',SEARCH_TOGGLE_SELECTOR='.vector-sticky-header-search-toggle',STICKY_HEADER_EXPERIMENT_NAME='vector.sticky_header';function copyAttribute(from,to,attribute){const fromAttr=from.getAttribute(attribute);if(fromAttr){to.setAttribute(attribute,fromAttr);}}function show(){document.body.classList.add(STICKY_HEADER_VISIBLE_CLASS);document.body.classList.remove(ULS_HIDE_CLASS);}function hide(){document.body.classList.remove(STICKY_HEADER_VISIBLE_CLASS);\\ndocument.body.classList.add(ULS_HIDE_CLASS);const stickyHeader=(document.getElementById(STICKY_HEADER_ID));if(stickyHeader&&stickyHeader.contains(document.activeElement)){document.body.click();}}function copyButtonAttributes(from,to){copyAttribute(from,to,'href');copyAttribute(from,to,'title');if(to.lastElementChild&&from.lastElementChild){to.lastElementChild.textContent=from.lastElementChild.textContent||'';}}function getAnchorElement(parent,selector){return parent.querySelector(selector);}function suffixStickyAttribute(node,attribute){const value=node.getAttribute(attribute);if(value){node.setAttribute(attribute,value+STICKY_HEADER_APPENDED_ID);}}function suffixStickyHref(node){const url=new URL(node.href);if(url&&!url.searchParams.has(STICKY_HEADER_APPENDED_PARAM[0])){url.searchParams.append(STICKY_HEADER_APPENDED_PARAM[0],STICKY_HEADER_APPENDED_PARAM[1]);node.href=url.toString();}}function unsuffixStickyHref(node){const url=new URL(node.href);url.searchParams.delete(STICKY_HEADER_APPENDED_PARAM[0]);\\nnode.href=url.toString();}function makeNodeTrackable(node){suffixStickyAttribute(node,'id');suffixStickyAttribute(node,'data-event-name');}function removeNode(node){if(node.parentNode){node.parentNode.removeChild(node);}}function updateStickyWatchlink(watchLink,isWatched){watchLink.setAttribute('data-event-name',isWatched?'watch-sticky-header':'unwatch-sticky-header');}function removeClassFromNodes(nodes,className){Array.prototype.forEach.call(nodes,(node)=>{node.classList.remove(className);});}function removeNodes(nodes){Array.prototype.forEach.call(nodes,(node)=>{node.parentNode.removeChild(node);});}function watchstarCallback($link,isWatched){updateStickyWatchlink(($link[0]),isWatched);}function prepareIcons(header,history,talk,subject,watch,bookmark){const historySticky=getAnchorElement(header,'#ca-history-sticky-header'),talkSticky=getAnchorElement(header,'#ca-talk-sticky-header'),subjectSticky=getAnchorElement(header,'#ca-subject-sticky-header'),watchSticky=getAnchorElement(header,'#ca-watchstar-sticky-header'),\\nbookmarkSticky=getAnchorElement(header,'#ca-bookmark-sticky-header');if(historySticky&&history){copyButtonAttributes(history,historySticky);}else if(historySticky){removeNode(historySticky);}if(talkSticky&&talk){copyButtonAttributes(talk,talkSticky);}else if(talkSticky){removeNode(talkSticky);}if(subjectSticky&&subject){copyButtonAttributes(subject,subjectSticky);}else if(subjectSticky){removeNode(subjectSticky);}if(watchSticky&&watch&&watch.parentNode instanceof HTMLElement){const watchContainer=watch.parentNode;const isTemporaryWatch=watchContainer.classList.contains('mw-watchlink-temp');const isWatched=isTemporaryWatch||watchContainer.getAttribute('id')==='ca-unwatch';const watchIcon=(watchSticky.querySelector('.vector-icon'));copyButtonAttributes(watch,watchSticky);updateWatchIcon(watchIcon,isWatched,isTemporaryWatch?'':'infinity');updateStickyWatchlink(watchSticky,isWatched);const watchLib=require(('mediawiki.page.watch.ajax'));watchLib.watchstar($(watchSticky),mw.config.get('wgRelevantPageName'),watchstarCallback);\\n}else if(watchSticky){removeNode(watchSticky);}if(bookmarkSticky&&bookmark){const icon=bookmark.querySelector('.vector-icon');if(icon){copyButtonAttributes(bookmark,bookmarkSticky);const bookmarkIcon=(bookmark.querySelector('.vector-icon'));const bookmarkStickyIcon=(bookmarkSticky.querySelector('.vector-icon'));bookmarkStickyIcon.className=bookmarkIcon.className;(bookmarkSticky).dataset.mwListId=(bookmark).dataset.mwListId||'';(bookmarkSticky).dataset.mwEntryId=(bookmark).dataset.mwEntryId||'';}}else if(bookmarkSticky){removeNode(bookmarkSticky);}}function prepareEditIcons(header,primaryEdit,isProtected,secondaryEdit,addSection,disableStickyHeader){const primaryEditSticky=getAnchorElement(header,'#ca-ve-edit-sticky-header'),protectedSticky=getAnchorElement(header,'#ca-viewsource-sticky-header'),wikitextSticky=getAnchorElement(header,'#ca-edit-sticky-header'),addSectionSticky=getAnchorElement(header,'#ca-addsection-sticky-header');if(addSectionSticky){if(addSection){copyButtonAttributes(addSection,addSectionSticky);\\nsuffixStickyHref(addSectionSticky);}else{removeNode(addSectionSticky);}}if(!primaryEditSticky||!wikitextSticky||!protectedSticky){return;}if(!primaryEdit){removeNode(protectedSticky);removeNode(wikitextSticky);removeNode(primaryEditSticky);return;}else if(isProtected){removeNode(wikitextSticky);removeNode(primaryEditSticky);copyButtonAttributes(primaryEdit,protectedSticky);suffixStickyHref(protectedSticky);}else{removeNode(protectedSticky);copyButtonAttributes(primaryEdit,primaryEditSticky);suffixStickyHref(primaryEditSticky);primaryEditSticky.addEventListener('click',(ev)=>{const target=ev.target;const $ve=$(primaryEdit);if(target&&$ve.length){const link=($ve[0]);const event=$.Event('click');suffixStickyHref(link);$ve.trigger(event);unsuffixStickyHref(link);if(event.isDefaultPrevented()){disableStickyHeader();ev.preventDefault();}}});if(secondaryEdit){copyButtonAttributes(secondaryEdit,wikitextSticky);suffixStickyHref(wikitextSticky);wikitextSticky.addEventListener('click',(ev)=>{\\nconst target=ev.target;if(target){const $edit=$(secondaryEdit);if($edit.length){const link=($edit[0]);const event=$.Event('click');suffixStickyHref(link);$edit.trigger(event);unsuffixStickyHref(link);if(event.isDefaultPrevented()){disableStickyHeader();ev.preventDefault();}}}});}else{removeNode(wikitextSticky);}}}function isInViewport(element){const rect=element.getBoundingClientRect();return(rect.top>=0&&rect.left>=0&&rect.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&rect.right<=(window.innerWidth||document.documentElement.clientWidth));}function addVisualEditorHooks(stickyIntersection,observer){mw.hook('ve.activationStart').add(()=>{hide();observer.unobserve(stickyIntersection);});mw.hook('ve.deactivationComplete').add(()=>{requestAnimationFrame(()=>{observer.observe(stickyIntersection);});});mw.hook('postEdit.afterRemoval').add(()=>{if(!isInViewport(stickyIntersection)){show();observer.observe(stickyIntersection);}});}function prepareUserLinksDropdown(userLinksDropdown){\\nconst userLinksDropdownClone=(userLinksDropdown.cloneNode(true)),userLinksDropdownStickyElementsWithIds=userLinksDropdownClone.querySelectorAll('[ id ], [ data-event-name ]');makeNodeTrackable(userLinksDropdownClone);userLinksDropdownStickyElementsWithIds.forEach(makeNodeTrackable);removeNodes(userLinksDropdownClone.querySelectorAll('.mw-list-item-js'));removeClassFromNodes(userLinksDropdownClone.querySelectorAll('.user-links-collapsible-item'),'user-links-collapsible-item');const userLinksDropdownCheckbox=userLinksDropdownClone.querySelector('input');if(userLinksDropdownCheckbox){userLinksDropdownCheckbox.setAttribute('tabindex','-1');}const logoutLink=(userLinksDropdownClone.querySelector('#pt-logout-sticky-header a'));if(logoutLink){logoutLink.addEventListener('click',(ev)=>{ev.preventDefault();mw.hook('skin.logout').fire(logoutLink.href);});}return userLinksDropdownClone;}function makeStickyHeaderFunctional(header,userLinksDropdown,stickyObserver,stickyIntersection){const userLinksDropdownStickyContainer=document.querySelector(\\nSTICKY_HEADER_USER_MENU_CONTAINER_SELECTOR);if(userLinksDropdownStickyContainer){const clonedUserLinksDropdown=prepareUserLinksDropdown(userLinksDropdown);userLinksDropdownStickyContainer.appendChild(clonedUserLinksDropdown);}let namespaceName=mw.config.get('wgCanonicalNamespace');const namespaceNumber=mw.config.get('wgNamespaceNumber');if(namespaceNumber>=0&&namespaceNumber%2===1){namespaceName=namespaceName.slice(0,-5);}let namespaceKey=namespaceName.toLowerCase()||'main';if(namespaceKey==='file'){namespaceKey='image';}const namespaceTabId='ca-nstab-'+namespaceKey;prepareIcons(header,document.querySelector('#ca-history a'),document.querySelector('#ca-talk:not( .selected ) a'),document.querySelector('#'+namespaceTabId+':not( .selected ) a'),document.querySelector('#ca-watch a, #ca-unwatch a'),document.querySelector('#ca-bookmark a'));const veEdit=getAnchorElement(document,'#ca-ve-edit a');const ceEdit=getAnchorElement(document,'#ca-edit a');const protectedEdit=getAnchorElement(document,'#ca-viewsource a');\\nconst isProtected=!!protectedEdit;const primaryEdit=protectedEdit||veEdit||ceEdit;const secondaryEdit=veEdit?ceEdit:null;const disableStickyHeader=()=>{document.body.classList.remove(STICKY_HEADER_VISIBLE_CLASS);stickyObserver.unobserve(stickyIntersection);};const addSection=document.querySelector('#ca-addsection a')||document.querySelector('a#ca-addsection');prepareEditIcons(header,primaryEdit,isProtected,secondaryEdit,addSection,disableStickyHeader);stickyObserver.observe(stickyIntersection);}function setupSearchIfNeeded(header){if(!document.body.classList.contains('skin-vector-search-vue')){return;}const searchToggle=header.querySelector(SEARCH_TOGGLE_SELECTOR);if(searchToggle){initSearchToggle(searchToggle);}}function isAllowedNamespace(namespaceNumber){const allowedNamespaceNumbers=[0,2,4,10,12,14,100,828];const isAllowedTalk=namespaceNumber>0&&namespaceNumber%2!==0;return isAllowedTalk||allowedNamespaceNumbers.includes(namespaceNumber);}function isAllowedAction(action){const disallowedActions=['history','edit'],\\nhasDiffId=mw.config.get('wgDiffOldId');return!disallowedActions.includes(action)&&!hasDiffId;}function initStickyHeader(props){makeStickyHeaderFunctional(props.header,props.userLinksDropdown,props.observer,props.stickyIntersection);setupSearchIfNeeded(props.header);addVisualEditorHooks(props.stickyIntersection,props.observer);mw.hook('mw.uls.compact_language_links.open').add(($trigger)=>{const trigger=$trigger[0];if(trigger.id!=='p-lang-btn-sticky-header'){const bodyClassList=document.body.classList;bodyClassList.remove(ULS_HIDE_CLASS);bodyClassList.remove(ULS_STICKY_CLASS);}});const langBtn=props.header.querySelector('#p-lang-btn-sticky-header');if(langBtn){langBtn.addEventListener('click',()=>{const bodyClassList=document.body.classList;bodyClassList.remove(ULS_HIDE_CLASS);bodyClassList.add(ULS_STICKY_CLASS);});}}module.exports={show,hide,prepareUserLinksDropdown,isAllowedNamespace,isAllowedAction,initStickyHeader,STICKY_HEADER_ID,FIRST_HEADING_ID,USER_LINKS_DROPDOWN_ID,\\nSTICKY_HEADER_EXPERIMENT_NAME};\\n},\\\"resources/skins.vector.js/scrollObserver.js\\\":function(require,module,exports){const SCROLL_TITLE_HOOK='vector.page_title_scroll',SCROLL_TITLE_CONTEXT_ABOVE='scrolled-above-page-title',SCROLL_TITLE_CONTEXT_BELOW='scrolled-below-page-title',SCROLL_TITLE_ACTION='scroll-to-top';function firePageTitleScrollHook(direction){if(direction==='down'){mw.hook(SCROLL_TITLE_HOOK).fire({context:SCROLL_TITLE_CONTEXT_BELOW});}else{mw.hook(SCROLL_TITLE_HOOK).fire({context:SCROLL_TITLE_CONTEXT_ABOVE,action:SCROLL_TITLE_ACTION});}}function initScrollObserver(show,hide){return new IntersectionObserver((entries)=>{if(!entries[0].isIntersecting&&entries[0].boundingClientRect.top<0){show();}else{hide();}});}module.exports={initScrollObserver,firePageTitleScrollHook};\\n},\\\"resources/skins.vector.js/tableOfContents.js\\\":function(require,module,exports){const templateTocContents=require(('./templates/TableOfContents__list.mustache'));const templateTocLine=require(('./templates/TableOfContents__line.mustache'));const tableOfContentsConfig=require(('./tableOfContentsConfig.json'));const deferUntilFrame=require('./deferUntilFrame.js');const SECTION_ID_PREFIX='toc-';const SECTION_CLASS='vector-toc-list-item';const ACTIVE_SECTION_CLASS='vector-toc-list-item-active';const EXPANDED_SECTION_CLASS='vector-toc-list-item-expanded';const TOP_SECTION_CLASS='vector-toc-level-1';const ACTIVE_TOP_SECTION_CLASS='vector-toc-level-1-active';const LINK_CLASS='vector-toc-link';const TOGGLE_CLASS='vector-toc-toggle';const TOC_CONTENTS_ID='mw-panel-toc-list';module.exports=function tableOfContents(props){let activeTopSection;let activeSubSection;let expandedSections;function getActiveSectionIds(){return{parent:(activeTopSection)?activeTopSection.id:undefined,child:(activeSubSection)?activeSubSection.id:undefined};}const prefersReducedMotion=()=>window.matchMedia('(prefers-reduced-motion: reduce)').matches;\\nfunction activateSection(id){const selectedTocSection=document.getElementById(id);const{parent:previousActiveTopId,child:previousActiveSubSectionId}=getActiveSectionIds();if(!selectedTocSection||(previousActiveTopId===id)||(previousActiveSubSectionId===id)){return;}activeTopSection=(selectedTocSection.closest(`.${TOP_SECTION_CLASS}`));if(activeTopSection){activeTopSection.classList.add(ACTIVE_TOP_SECTION_CLASS);}activeSubSection=selectedTocSection;activeSubSection.classList.add(ACTIVE_SECTION_CLASS);}function deactivateSections(){if(activeSubSection){activeSubSection.classList.remove(ACTIVE_SECTION_CLASS);activeSubSection=undefined;}if(activeTopSection){activeTopSection.classList.remove(ACTIVE_TOP_SECTION_CLASS);activeTopSection=undefined;}}function scrollToActiveSection(id){const section=document.getElementById(id);if(!section){return;}let link=(section.firstElementChild);if(link&&!link.offsetParent){const{parent:activeTopId}=getActiveSectionIds();const parentSection=document.getElementById(activeTopId||'');\\nif(parentSection){link=(parentSection.firstElementChild);}else{link=null;}}const isContainerScrollable=props.container.scrollHeight>props.container.clientHeight;if(link&&isContainerScrollable){const containerRect=props.container.getBoundingClientRect();const linkRect=link.getBoundingClientRect();const hiddenThreshold=100;const midpoint=(containerRect.bottom-containerRect.top)/2;const linkHiddenTopValue=containerRect.top-linkRect.top;const linkHiddenBottomValue=linkRect.bottom-Math.min(containerRect.bottom,window.innerHeight);const scrollBehavior=prefersReducedMotion()?'smooth':undefined;if(linkHiddenTopValue+hiddenThreshold>0){props.container.scrollTo({top:props.container.scrollTop-linkHiddenTopValue-midpoint,behavior:scrollBehavior});}if(linkHiddenBottomValue+hiddenThreshold>0){props.container.scrollTo({top:props.container.scrollTop+linkHiddenBottomValue+midpoint,behavior:scrollBehavior});}}}function expandSection(id){const tocSection=document.getElementById(id);if(!tocSection){return;\\n}const topSection=(tocSection.closest(`.${TOP_SECTION_CLASS}`));const toggle=topSection.querySelector(`.${TOGGLE_CLASS}`);if(topSection&&toggle&&!expandedSections.includes(topSection)){toggle.setAttribute('aria-expanded','true');topSection.classList.add(EXPANDED_SECTION_CLASS);expandedSections.push(topSection);}}function getExpandedSectionIds(){return expandedSections.map((s)=>s.id);}function changeActiveSection(id){const{parent:activeParentId,child:activeChildId}=getActiveSectionIds();if(id===activeParentId&&id===activeChildId){return;}else{deactivateSections();activateSection(id);scrollToActiveSection(id);}}function isTopLevelSection(id){const section=document.getElementById(id);return!!section&&section.classList.contains(TOP_SECTION_CLASS);}function collapseSections(selectedIds){const sectionIdsToCollapse=selectedIds||getExpandedSectionIds();expandedSections=expandedSections.filter((section)=>{const isSelected=sectionIdsToCollapse.includes(section.id);const toggle=isSelected?section.getElementsByClassName(TOGGLE_CLASS):undefined;\\nif(isSelected&&toggle&&toggle.length>0){toggle[0].setAttribute('aria-expanded','false');section.classList.remove(EXPANDED_SECTION_CLASS);return false;}return true;});}function toggleExpandSection(id){const expandedSectionIds=getExpandedSectionIds();const indexOfExpandedSectionId=expandedSectionIds.indexOf(id);if(isTopLevelSection(id)){if(indexOfExpandedSectionId>=0){collapseSections([id]);}else{expandSection(id);}}}function initializeExpandedStatus(){const parentSections=props.container.querySelectorAll(`.${TOP_SECTION_CLASS}`);parentSections.forEach((section)=>{const expanded=section.classList.contains(EXPANDED_SECTION_CLASS);const toggle=section.querySelector(`.${TOGGLE_CLASS}`);if(toggle){toggle.setAttribute('aria-expanded',expanded.toString());}});}function handleHashChange(){const hash=location.hash.slice(1);const listItem=mw.util.getTargetFromFragment(`${SECTION_ID_PREFIX}${hash}`);if(!listItem){return;}expandSection(listItem.id);changeActiveSection(listItem.id);props.onHashChange(listItem.id);\\n}function bindHashChangeListener(){window.addEventListener('hashchange',handleHashChange);}function unbindHashChangeListener(){window.removeEventListener('hashchange',handleHashChange);}function bindSubsectionToggleListeners(){props.container.addEventListener('click',(e)=>{if(!(e.target instanceof HTMLElement)){return;}const tocSection=(e.target.closest(`.${SECTION_CLASS}`));if(tocSection&&tocSection.id){if(e.target.closest(`.${LINK_CLASS}`)){unbindHashChangeListener();expandSection(tocSection.id);changeActiveSection(tocSection.id);props.onHeadingClick(tocSection.id);deferUntilFrame(()=>{bindHashChangeListener();},3);}if(e.target.closest(`.${TOGGLE_CLASS}`)){toggleExpandSection(tocSection.id);if(props.onToggleClick){props.onToggleClick(tocSection.id);}}}});}function initialize(){expandedSections=Array.from(props.container.querySelectorAll(`.${EXPANDED_SECTION_CLASS}`));initializeExpandedStatus();bindSubsectionToggleListeners();bindHashChangeListener();}function reExpandSections(){\\ninitializeExpandedStatus();const expandedSectionIds=getExpandedSectionIds();for(const id of expandedSectionIds){expandSection(id);}}function updateTocToggleStyles(scrollBelow){const TOC_TITLEBAR_TOGGLE_ID='vector-page-titlebar-toc-label';const QUIET_BUTTON_CLASS='cdx-button--weight-quiet';const tocToggle=document.getElementById(TOC_TITLEBAR_TOGGLE_ID);if(tocToggle){if(scrollBelow){tocToggle.classList.remove(QUIET_BUTTON_CLASS);}else{tocToggle.classList.add(QUIET_BUTTON_CLASS);}}}function reloadTableOfContents(sections){if(sections.length<1){reloadPartialHTML(TOC_CONTENTS_ID,'');return Promise.resolve([]);}const load=()=>mw.loader.using('mediawiki.template.mustache').then(()=>{const{parent:activeParentId,child:activeChildId}=getActiveSectionIds();reloadPartialHTML(TOC_CONTENTS_ID,getTableOfContentsHTML(sections));reExpandSections();deactivateSections();if(activeParentId){activateSection(activeParentId);}if(activeChildId){activateSection(activeChildId);}});return new Promise((resolve)=>{\\nload().then(()=>{resolve(sections);});});}function reloadPartialHTML(elementId,html){const htmlElement=document.getElementById(elementId);if(htmlElement&&html){htmlElement.innerHTML=html;}}function getTableOfContentsHTML(sections){return getTableOfContentsListHtml(getTableOfContentsData(sections));}function getTableOfContentsListHtml(data){const mustacheCompiler=mw.template.getCompiler('mustache');const compiledTemplateTocContents=mustacheCompiler.compile(templateTocContents);const partials={TableOfContents__line:mustacheCompiler.compile(templateTocLine)};return compiledTemplateTocContents.render(data,partials).html();}function getTableOfContentsData(sections){const tableOfContentsLevel1Sections=getTableOfContentsSectionsData(sections,1);return{'msg-vector-toc-beginning':mw.message('vector-toc-beginning').text(),'array-sections':tableOfContentsLevel1Sections,'vector-is-collapse-sections-enabled':tableOfContentsLevel1Sections.length>3&&sections.length>=tableOfContentsConfig.VectorTableOfContentsCollapseAtCount\\n};}function getTableOfContentsSectionsData(sections,toclevel=1){const data=[];for(let i=0;i<sections.length;i++){const section=sections[i];if(section.toclevel===toclevel){const childSections=getTableOfContentsSectionsData(sections.slice(i+1),toclevel+1);section['array-sections']=childSections;section['is-top-level-section']=toclevel===1;section['is-parent-section']=Object.keys(childSections).length>0;data.push(section);}if(section.toclevel<toclevel){return data;}}return data;}function unmount(){unbindHashChangeListener();}initialize();return{reloadTableOfContents,expandSection,changeActiveSection,toggleExpandSection,updateTocToggleStyles,unmount,ACTIVE_SECTION_CLASS,ACTIVE_TOP_SECTION_CLASS,EXPANDED_SECTION_CLASS,LINK_CLASS,TOGGLE_CLASS};};\\n},\\\"resources/skins.vector.js/sectionObserver.js\\\":function(require,module,exports){module.exports=function sectionObserver(props){props=Object.assign({topMargin:0,throttleMs:200,onIntersection:()=>{}},props);let timeoutId;let current;const observer=new IntersectionObserver((entries)=>{let closestNegativeEntry;let closestPositiveEntry;const topMargin=(props.topMargin);entries.forEach((entry)=>{if(entry.boundingClientRect.top===0&&entry.boundingClientRect.bottom===0){return;}const top=entry.boundingClientRect.top-topMargin;if(top>0&&(closestPositiveEntry===undefined||top<closestPositiveEntry.boundingClientRect.top-topMargin)){closestPositiveEntry=entry;}if(top<=0&&(closestNegativeEntry===undefined||top>closestNegativeEntry.boundingClientRect.top-topMargin)){closestNegativeEntry=entry;}});const closestTag=(closestNegativeEntry?closestNegativeEntry.target:closestPositiveEntry?closestPositiveEntry.target:undefined);if(current!==closestTag&&closestTag){props.onIntersection(closestTag);}current=closestTag;observer.disconnect();});function calcIntersection(){props.elements.forEach((element)=>{\\nif(!element.parentNode){mw.log.warn('Element being observed is not in DOM',element);return;}observer.observe((element));});}function handleScroll(){if(!timeoutId){timeoutId=window.setTimeout(()=>{calcIntersection();timeoutId=undefined;},props.throttleMs);}}function bindScrollListener(){window.addEventListener('scroll',handleScroll);}function unbindScrollListener(){window.removeEventListener('scroll',handleScroll);}function pause(){unbindScrollListener();clearTimeout(timeoutId);timeoutId=undefined;current=undefined;}function resume(){bindScrollListener();}function unmount(){unbindScrollListener();observer.disconnect();}function setElements(list){props.elements=list;}bindScrollListener();return{calcIntersection,pause,resume,unmount,setElements};};\\n},\\\"resources/skins.vector.js/deferUntilFrame.js\\\":function(require,module,exports){function deferUntilFrame(callback,frameCount){if(frameCount===0){callback();return;}requestAnimationFrame(()=>{deferUntilFrame(callback,frameCount-1);});}module.exports=deferUntilFrame;\\n},\\\"resources/skins.vector.js/pinnableElement.js\\\":function(require,module,exports){const features=require('./features.js');const PINNED_HEADER_CLASS='vector-pinnable-header-pinned';const UNPINNED_HEADER_CLASS='vector-pinnable-header-unpinned';const popupNotification=require('./popupNotification.js');function isPinned(header){const featureName=(header.dataset.featureName);return features.isEnabled(featureName);}function savePinnedState(header){header.dataset.savedPinnedState=String(isPinned(header));}function updatePinnableClasses(header,pinState,saveState=true){const featureName=(header.dataset.featureName);if(pinState!==isPinned(header)){features.toggleDocClasses(featureName,pinState);if(saveState){features.save(featureName,pinState);savePinnedState(header);}}header.classList.toggle(PINNED_HEADER_CLASS,pinState);header.classList.toggle(UNPINNED_HEADER_CLASS,!pinState);}function movePinnableElement(header,pinState){const{pinnableElementId,pinnedContainerId,unpinnedContainerId}=header.dataset;if(!pinnableElementId||!pinnedContainerId||!unpinnedContainerId){mw.log.warn('movePinnableElement: missing data-* attributes',header);\\nreturn;}const pinnableElem=document.getElementById(pinnableElementId);const currContainer=pinnableElem&&pinnableElem.parentElement;const newContainerId=pinState?pinnedContainerId:unpinnedContainerId;if(currContainer&&currContainer.id!==newContainerId){const newContainer=document.getElementById(newContainerId);if(!newContainer){mw.log.warn('movePinnableElement: destination container not found ',newContainerId);return;}else if(!pinnableElem||!currContainer){mw.log.warn('movePinnableElement: elements not found');return;}newContainer.insertAdjacentElement('beforeend',pinnableElem);window.dispatchEvent(new Event('resize'));popupNotification.hideAll();}}function updatePinnableState(header,pinState,saveState=true){updatePinnableClasses(header,pinState,saveState);movePinnableElement(header,pinState);}function setFocusAfterToggle(header){const{pinnableElementId}=header.dataset;const pinnableElement=document.getElementById(pinnableElementId||'');if(pinnableElement){let focusElement;if(isPinned(header)){\\nfocusElement=(pinnableElement.querySelector('.vector-pinnable-header-unpin-button'));}else{const dropdown=pinnableElement.closest('.vector-dropdown');focusElement=(dropdown&&dropdown.querySelector('.vector-dropdown-checkbox'));}if(focusElement){focusElement.focus();}}}function showUnpinnedIndicator(header){const{pinnableElementId,unpinnedContainerId}=header.dataset;const unpinnedContainer=document.getElementById(unpinnedContainerId||'');const container=(unpinnedContainer&&unpinnedContainer.closest('.vector-dropdown'));if(!container||!pinnableElementId){mw.log.warn('showUnpinnedIndicator: unable to find container for indicator',unpinnedContainerId);return;}const message=mw.msg(`${pinnableElementId}-unpinned-popup`);popupNotification.add(container,message,pinnableElementId).then((popupWidget)=>{if(popupWidget){popupNotification.show(popupWidget);}});}function bindToggleButtons(header){const toggleButtons=header.querySelectorAll('.vector-pinnable-header-toggle-button');toggleButtons.forEach((button)=>{\\nbutton.addEventListener('click',()=>{const newPinState=!isPinned(header);updatePinnableState(header,newPinState);setFocusAfterToggle(header);if(!newPinState){showUnpinnedIndicator(header);}});});}function disablePinningAtBreakpoint(headers,e){headers.forEach((header)=>{const savedPinnedState=JSON.parse(header.dataset.savedPinnedState||'false');if(savedPinnedState===true){updatePinnableState(header,!e.matches,false);}});}function bindBreakpoint(headers){const pinnableBreakpoint=window.matchMedia('(max-width: 1119px)');disablePinningAtBreakpoint(headers,pinnableBreakpoint);if(pinnableBreakpoint.addEventListener){pinnableBreakpoint.addEventListener('change',disablePinningAtBreakpoint.bind(null,headers));}else{pinnableBreakpoint.addListener(disablePinningAtBreakpoint.bind(null,headers));}}function hasPinnedElements(){const suffixesToCheck=['pinned-clientpref-1','pinned-enabled'];const htmlElement=document.documentElement;return Array.from(htmlElement.classList).some((className)=>suffixesToCheck.some((suffix)=>className.endsWith(suffix))\\n);}function analyticsPinnedState(){const htmlElement=document.documentElement;return htmlElement.classList.contains('vector-feature-main-menu-pinned-enabled')||htmlElement.classList.contains('vector-feature-page-tools-pinned-enabled');}function hideVectorColumnsHandler(){const pinnableHeader=(document.querySelectorAll('.vector-pinnable-header'));pinnableHeader.forEach((header)=>{updatePinnableState(header,false,false);header.classList.add('vector-pinnable-header-override');});}function restoreVectorColumnsHandler(){const pinnableHeader=(document.querySelectorAll('.vector-pinnable-header'));pinnableHeader.forEach((header)=>{const savedPinnedState=JSON.parse(header.dataset.savedPinnedState||'false');updatePinnableState(header,savedPinnedState,false);header.classList.remove('vector-pinnable-header-override');});}function init(){const pinnableHeaders=(document.querySelectorAll('.vector-pinnable-header'));pinnableHeaders.forEach((header)=>{if(header.dataset.featureName&&header.dataset.pinnableElementId){\\nbindToggleButtons(header);updatePinnableState(header,isPinned(header));savePinnedState(header);}});bindBreakpoint(pinnableHeaders);mw.hook('ve.hideVectorColumns').add(hideVectorColumnsHandler);mw.hook('ve.restoreVectorColumns').add(restoreVectorColumnsHandler);}module.exports={init,hideVectorColumnsHandler,restoreVectorColumnsHandler,hasPinnedElements,analyticsPinnedState,updatePinnableState,isPinned,PINNED_HEADER_CLASS,UNPINNED_HEADER_CLASS};\\n},\\\"resources/skins.vector.js/userPreferences.js\\\":function(require,module,exports){let api;function saveOptions(options){api=api||new mw.Api();return api.saveOptions(options,{global:'update'});}module.exports={saveOptions};\\n},\\\"resources/skins.vector.js/features.js\\\":function(require,module,exports){const debounce=require(('mediawiki.util')).debounce;const userPreferences=require('./userPreferences.js');function save(feature,enabled){if(!mw.user.isNamed()){switch(feature){case'toc-pinned':case'limited-width':case'appearance-pinned':mw.user.clientPrefs.set(`vector-feature-${feature}`,enabled?'1':'0');break;default:break;}}else{debounce(()=>{userPreferences.saveOptions({[`vector-${feature}`]:enabled?1:0});},500)();}}function toggleDocClasses(name,override,isNotClientPreference){const suffixEnabled=isNotClientPreference?'enabled':'clientpref-1';const suffixDisabled=isNotClientPreference?'disabled':'clientpref-0';const featureClassEnabled=`vector-feature-${name}-${suffixEnabled}`,classList=document.documentElement.classList,featureClassDisabled=`vector-feature-${name}-${suffixDisabled}`,isLoggedInOnlyFeature=!classList.contains(featureClassDisabled)&&!classList.contains(featureClassEnabled);if(isLoggedInOnlyFeature&&!isNotClientPreference){return toggleDocClasses(name,override,true);}else if(override===true||\\n(override===undefined&&classList.contains(featureClassDisabled))){classList.remove(featureClassDisabled);classList.add(featureClassEnabled);return true;}else if(override===false||(override===undefined&&classList.contains(featureClassEnabled))){classList.add(featureClassDisabled);classList.remove(featureClassEnabled);return false;}else{throw new Error(`Attempt to toggle unknown feature: ${name}`);}}function toggle(name){const featureState=toggleDocClasses(name);save(name,featureState);}function isEnabled(name){return document.documentElement.classList.contains(getClass(name,true))||document.documentElement.classList.contains(getClass(name,true,true));}function getClass(name,featureEnabled,isClientPreference){if(featureEnabled){const suffix=isClientPreference?'clientpref-1':'enabled';return`vector-feature-${name}-${suffix}`;}else{const suffix=isClientPreference?'clientpref-0':'disabled';return`vector-feature-${name}-${suffix}`;}}module.exports={getClass,isEnabled,toggle,toggleDocClasses,save};\\n},\\\"resources/skins.vector.js/popupNotification.js\\\":function(require,module,exports){const activeNotification={};function add(container,message,id,classes=[],timeout=4000,onDismiss=()=>{}){let popupWidget;return mw.loader.using('oojs-ui-core').then(()=>{if(id&&activeNotification[id]){return activeNotification[id];}const content=document.createElement('p');content.textContent=message;popupWidget=new OO.ui.PopupWidget({$content:$(content),padded:true,autoClose:timeout!==false,head:timeout===false,anchor:true,align:'center',position:'below',classes:['vector-popup-notification'].concat(classes),container});popupWidget.$element.appendTo(container);popupWidget.on('closing',()=>{onDismiss();});if(popupWidget&&id){activeNotification[id]=popupWidget;}return popupWidget;});}function hide(popupWidget){popupWidget.toggle(false);}function show(popupWidget,timeout=4000){popupWidget.toggle(true);popupWidget.toggleClipping(true);if(timeout===false){return;}setTimeout(()=>{hide(popupWidget);},timeout);}function hideAll(){for(const key in activeNotification){const popupWidget=activeNotification[key];\\nhide(popupWidget);}}module.exports={add,hide,hideAll,show};\\n},\\\"resources/skins.vector.js/clientPreferences.json\\\":{\\\"wp25eastereggs-enable\\\":{\\\"options\\\":[\\\"0\\\",\\\"1\\\"],\\\"linkLabelMessage\\\":\\\"wp25eastereggs-enable-learn-more-link-label\\\",\\\"linkLabelUrl\\\":\\\"wp25eastereggs-enable-learn-more-link-url\\\",\\\"preferenceKey\\\":\\\"wp25eastereggs-enable\\\"},\\\"vector-feature-custom-font-size\\\":{\\\"options\\\":[\\\"0\\\",\\\"1\\\",\\\"2\\\"],\\\"preferenceKey\\\":\\\"vector-font-size\\\"},\\\"vector-feature-limited-width\\\":{\\\"options\\\":[\\\"1\\\",\\\"0\\\"],\\\"preferenceKey\\\":\\\"vector-limited-width\\\"},\\\"skin-theme\\\":{\\\"options\\\":[\\\"os\\\",\\\"day\\\",\\\"night\\\"],\\\"preferenceKey\\\":\\\"vector-theme\\\",\\\"betaMessage\\\":\\\"vector-night-mode-beta-tag\\\",\\\"linkLabelLoggedInOnly\\\":true,\\\"linkLabelMessage\\\":\\\"vector-night-mode-issue-reporting-link-label\\\",\\\"linkLabelTooltip\\\":\\\"vector-night-mode-issue-reporting-notice-tooltip\\\",\\\"linkLabelUrl\\\":\\\"vector-night-mode-issue-reporting-notice-url\\\",\\\"linkLabelUrlParameter\\\":\\\"vector-night-mode-issue-reporting-preload-title\\\"}},\\\"resources/skins.vector.js/config.json\\\":{\\\"VectorWrapTablesTemporary\\\":false},\\\"resources/skins.vector.js/tableOfContentsConfig.json\\\":{\\\"VectorTableOfContentsCollapseAtCount\\\":28},\\\"resources/skins.vector.js/templates/TableOfContents__list.mustache\\\":\\\"\\\\u003Cul class=\\\\\\\"vector-toc-contents\\\\\\\" id=\\\\\\\"mw-panel-toc-list\\\\\\\"\\\\u003E\\\\n\\\\t\\\\u003Cli id=\\\\\\\"toc-mw-content-text\\\\\\\"\\\\n\\\\t\\\\tclass=\\\\\\\"vector-toc-list-item vector-toc-level-1\\\\\\\"\\\\u003E\\\\n\\\\t\\\\t\\\\u003Ca href=\\\\\\\"#\\\\\\\" class=\\\\\\\"vector-toc-link\\\\\\\"\\\\u003E\\\\n\\\\t\\\\t\\\\t\\\\u003Cdiv class=\\\\\\\"vector-toc-text\\\\\\\"\\\\u003E{{ msg-vector-toc-beginning }}\\\\u003C/div\\\\u003E\\\\n\\\\t\\\\t\\\\u003C/a\\\\u003E\\\\n\\\\t\\\\u003C/li\\\\u003E\\\\n\\\\t{{#array-sections}}\\\\n\\\\t{{\\\\u003ETableOfContents__line}}\\\\n\\\\t{{/array-sections}}\\\\n\\\\u003C/ul\\\\u003E\\\\n\\\",\\\"resources/skins.vector.js/templates/TableOfContents__line.mustache\\\":\\n\\\"\\\\u003Cli id=\\\\\\\"toc-{{anchor}}\\\\\\\"\\\\n\\\\tclass=\\\\\\\"vector-toc-list-item vector-toc-level-{{toclevel}}{{#is-top-level-section}}{{^vector-is-collapse-sections-enabled}} vector-toc-list-item-expanded{{/vector-is-collapse-sections-enabled}}{{/is-top-level-section}}\\\\\\\"\\\\u003E\\\\n\\\\t\\\\u003Ca class=\\\\\\\"vector-toc-link\\\\\\\" href=\\\\\\\"#{{linkAnchor}}\\\\\\\"\\\\u003E\\\\n\\\\t\\\\t\\\\u003Cdiv class=\\\\\\\"vector-toc-text\\\\\\\"\\\\u003E\\\\n\\\\t\\\\t\\\\t\\\\u003Cspan class=\\\\\\\"vector-toc-numb\\\\\\\"\\\\u003E{{number}}\\\\u003C/span\\\\u003E\\\\n\\\\t\\\\t\\\\t\\\\u003Cspan\\\\u003E{{{line}}}\\\\u003C/span\\\\u003E\\\\n\\\\t\\\\t\\\\u003C/div\\\\u003E\\\\n\\\\t\\\\u003C/a\\\\u003E\\\\n\\\\t{{#extensionData.DiscussionTools-html-summary}}\\\\n\\\\t{{{.}}}\\\\n\\\\t{{/extensionData.DiscussionTools-html-summary}}\\\\n\\\\t{{#is-top-level-section}}{{#is-parent-section}}\\\\n\\\\t\\\\t\\\\u003Cbutton aria-controls=\\\\\\\"toc-{{anchor}}-sublist\\\\\\\" class=\\\\\\\"cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle\\\\\\\"\\\\u003E\\\\n\\\\t\\\\t\\\\t\\\\u003Cspan class=\\\\\\\"vector-icon mw-ui-icon-wikimedia-expand\\\\\\\"\\\\u003E\\\\u003C/span\\\\u003E\\\\n\\\\t\\\\t\\\\t\\\\u003Cspan\\\\u003E{{{vector-button-label}}}\\\\u003C/span\\\\u003E\\\\n\\\\t\\\\t\\\\u003C/button\\\\u003E\\\\n\\\\t{{/is-parent-section}}{{/is-top-level-section}}\\\\n\\\\t\\\\u003Cul id=\\\\\\\"toc-{{anchor}}-sublist\\\\\\\" class=\\\\\\\"vector-toc-list\\\\\\\"\\\\u003E\\\\n\\\\t\\\\t{{#array-sections}}\\\\n\\\\t\\\\t{{\\\\u003ETableOfContents__line}}\\\\n\\\\t\\\\t{{/array-sections}}\\\\n\\\\t\\\\u003C/ul\\\\u003E\\\\n\\\\u003C/li\\\\u003E\\\\n\\\",\\\"resources/skins.vector.js/watchstar.js\\\":function(require,module,exports){const updateWatchIcon=(watchIcon,isWatched,expiry)=>{watchIcon.classList.remove('mw-ui-icon-star','mw-ui-icon-unStar','mw-ui-icon-wikimedia-unStar','mw-ui-icon-wikimedia-star','mw-ui-icon-wikimedia-halfStar');if(isWatched){if(mw.util.isInfinity(expiry)){watchIcon.classList.add('mw-ui-icon-wikimedia-unStar');}else{watchIcon.classList.add('mw-ui-icon-wikimedia-halfStar');}}else{watchIcon.classList.add('mw-ui-icon-wikimedia-star');}};const init=()=>{mw.hook('wikipage.watchlistChange').add((isWatched,expiry)=>{const watchIcons=document.querySelectorAll('.mw-watchlink .vector-icon');if(!watchIcons){return;}Array.from(watchIcons).forEach((watchIcon)=>{updateWatchIcon((watchIcon),isWatched,expiry);});});};module.exports={updateWatchIcon,init};\\n},\\\"resources/skins.vector.js/portlets.js\\\":function(require,module,exports){const dropdownMenus=require('./dropdownMenus.js');function addDefaultPortlet(portlet,isDropdown){const ul=portlet.querySelector('ul');if(!ul){return portlet;}ul.classList.add('vector-menu-content-list');const label=portlet.querySelector('label');if(label){const labelDiv=document.createElement('div');labelDiv.classList.add('vector-menu-heading');if(!isDropdown){labelDiv.textContent=label.textContent||'';portlet.insertBefore(labelDiv,label);label.remove();}}let wrapper=portlet.querySelector('div:last-child');if(wrapper){ul.remove();wrapper.appendChild(ul);wrapper.classList.add('vector-menu-content');}else{wrapper=document.createElement('div');wrapper.classList.add('vector-menu-content');ul.remove();wrapper.appendChild(ul);portlet.appendChild(wrapper);}portlet.classList.add('vector-menu');return portlet;}function makeDropdown(content){const id=content.id;const label=content.querySelector('label');if(!content.parentNode||!label){return content;}label.id=`${id}-dropdown-label`;label.setAttribute('for',`${id}-dropdown-checkbox`);\\nlabel.classList.add('vector-dropdown-label');label.setAttribute('aria-hidden','true');const labelSpan=document.createElement('span');labelSpan.textContent=label.textContent;label.textContent='';labelSpan.classList.add('vector-dropdown-label-text');label.appendChild(labelSpan);const dropdown=document.createElement('div');const checkbox=document.createElement('input');const dropdownContent=document.createElement('div');dropdownContent.classList.add('vector-dropdown-content');checkbox.type='checkbox';checkbox.id=`${id}-dropdown-checkbox`;checkbox.setAttribute('role','button');checkbox.setAttribute('aria-haspopup','true');checkbox.setAttribute('data-event-name',`ui.dropdown-${id}-dropdown`);checkbox.classList.add('vector-dropdown-checkbox');checkbox.setAttribute('aria-label',label.textContent||'');dropdown.id=`${id}-dropdown`;dropdown.classList.add('vector-dropdown',`${id}-dropdown`);dropdown.appendChild(checkbox);dropdown.appendChild(label);dropdown.appendChild(dropdownContent);content.parentNode.insertBefore(dropdown,content);\\ndropdownContent.appendChild(content);dropdownMenus.dropdownMenus([dropdown]);return dropdown;}function addPortletHandler(portlet,before){const isDropdown=!!(before&&before==='#p-cactions');portlet.classList.remove('mw-portlet-js');const transformedPortlet=addDefaultPortlet(portlet,isDropdown);if(isDropdown){const pageToolsDropdown=document.querySelector('#vector-page-tools-dropdown');const pageToolsMarker=pageToolsDropdown?pageToolsDropdown.parentNode:null;if(pageToolsMarker===null||!pageToolsMarker.parentNode){throw new Error('Vector 2022 addPortletLink: No #vector-page-tools-dropdown element in the DOM.');}const dropdown=makeDropdown(transformedPortlet);pageToolsMarker.parentNode.insertBefore(dropdown,pageToolsMarker);return transformedPortlet;}return transformedPortlet;}function main(){mw.hook('util.addPortlet').add(addPortletHandler);const portlets=document.querySelectorAll('.mw-portlet-js');portlets.forEach((node)=>{const nextID=node&&node.nextElementSibling&&node.nextElementSibling.id;\\naddPortletHandler(node,nextID?`#${nextID}`:null);});return{addPortletHandler};}module.exports={main,addPortletHandler};\\n},\\\"resources/skins.vector.js/dropdownMenus.js\\\":function(require,module,exports){const checkboxHack=require(('mediawiki.page.ready')).checkboxHack,CHECKBOX_HACK_CONTAINER_SELECTOR='.vector-dropdown',CHECKBOX_HACK_CHECKBOX_SELECTOR='.vector-dropdown-checkbox',CHECKBOX_HACK_BUTTON_SELECTOR='.vector-dropdown-label',CHECKBOX_HACK_TARGET_SELECTOR='.vector-dropdown-content';function dropdownMenus(containers){containers=containers||document.querySelectorAll(CHECKBOX_HACK_CONTAINER_SELECTOR);Array.prototype.forEach.call(containers,(container)=>{const checkbox=container.querySelector(CHECKBOX_HACK_CHECKBOX_SELECTOR),button=container.querySelector(CHECKBOX_HACK_BUTTON_SELECTOR),target=container.querySelector(CHECKBOX_HACK_TARGET_SELECTOR);if(!(checkbox&&button&&target)){return;}checkboxHack.bind(window,checkbox,button,target);});}function createIconElement(menuElement,parentElement,id){const isIconCapable=menuElement&&['p-personal','p-personal-sticky-header'].includes(menuElement.getAttribute('id')||'p-unknown');if(!isIconCapable||!parentElement){return;}const iconElement=document.createElement('span');\\niconElement.classList.add('vector-icon');if(id){iconElement.classList.add('mw-ui-icon-vector-gadget-'+id);}return iconElement;}function getAvailableViewMenuWidth(){const toolbar=document.querySelector('.vector-page-toolbar-container'),leftToolbarItems=document.querySelector('#left-navigation > nav'),rightToolbarItems=document.getElementById('right-navigation');if(window.innerWidth<720){return 0;}if(!(toolbar&&leftToolbarItems&&rightToolbarItems)){return 0;}return Math.max(0,toolbar.clientWidth-leftToolbarItems.clientWidth-rightToolbarItems.clientWidth);}const handledLinks=[];function addPortletLinkHandler(item,data){const linkIsHandled=handledLinks.indexOf(item);let iconElement;if(linkIsHandled>=0){return;}else{handledLinks.push(item);}const link=item.querySelector('a');const menuElement=(item.closest('.vector-menu'));if(!menuElement){return;}if(data.id){iconElement=createIconElement(menuElement,link,data.id);}if(menuElement.id==='p-views'){const availableWidth=getAvailableViewMenuWidth();\\nconst moreDropdown=document.querySelector('#p-cactions ul');if(moreDropdown&&!availableWidth){moreDropdown.appendChild(item);mw.util.showPortlet('p-cactions');}}if(link&&iconElement){link.prepend(iconElement);}}Array.prototype.forEach.call(document.querySelectorAll('.mw-list-item-js'),(item)=>{addPortletLinkHandler(item,{id:item.getAttribute('id')});});mw.hook('util.addPortletLink').add(addPortletLinkHandler);module.exports={dropdownMenus,addPortletLinkHandler:addPortletLinkHandler};\\n},\\\"resources/skins.vector.js/tables.js\\\":function(require,module,exports){const config=require('./config.json');const init=()=>{if(!config.VectorWrapTablesTemporary){return;}const tables=document.querySelectorAll('.mw-parser-output > table.wikitable');let numberBigTables=0;Array.from(tables).forEach((table)=>{const styles=window.getComputedStyle(table);const isFloat=styles.getPropertyValue('float')==='right'||styles.getPropertyValue('float')==='left';const parent=table.parentElement;if(parent&&!parent.matches('.noresize')&&!parent.closest('table')&&!isFloat){const tableRect=table.getBoundingClientRect();const tableWidth=tableRect&&tableRect.width;const wrapper=document.createElement('div');wrapper.classList.add('noresize');parent.insertBefore(wrapper,table);wrapper.appendChild(table);if(tableWidth>948){numberBigTables++;}}});if(numberBigTables>0){mw.errorLogger.logError(new Error(`T374493: ${numberBigTables} tables wrapped`),'error.web-team');}};module.exports={init};\\n},\\\"resources/skins.vector.js/languageButton.js\\\":function(require,module,exports){function addInterwikiLinkToMainMenu(){const editLink=(document.querySelector('#p-lang-btn .wbc-editpage'));if(!editLink){return;}const title=editLink.getAttribute('title')||'';const addInterlanguageLink=mw.util.addPortletLink('p-tb',editLink.getAttribute('href')||'#',title,'wbc-editpage',title);if(addInterlanguageLink){addInterlanguageLink.addEventListener('click',(e)=>{e.preventDefault();editLink.click();});}}function checkIfULSDisabled(){const langModuleState=mw.loader.getState('ext.uls.interface');if(langModuleState===null||langModuleState==='registered'){document.documentElement.classList.add('vector-uls-disabled');}}module.exports=function(){checkIfULSDisabled();addInterwikiLinkToMainMenu();};\\n},\\\"resources/skins.vector.js/menuTabs.js\\\":function(require,module,exports){const TABS_SELECTOR='.vector-menu-tabs',LIST_ITEM_JS_SELECTOR='.mw-list-item-js',NO_ICON_CLASS='vector-tab-noicon';function addNoIconClass(item){item.classList.add(NO_ICON_CLASS);}function init(){Array.prototype.forEach.call(document.querySelectorAll(TABS_SELECTOR+' '+LIST_ITEM_JS_SELECTOR),addNoIconClass);mw.hook('util.addPortletLink').add((item)=>{if(item.closest(TABS_SELECTOR)){addNoIconClass(item);}});}module.exports=init;\\n},\\\"resources/skins.vector.js/disableNightModeIfGadget.js\\\":function(require,module,exports){const userPreferences=require('./userPreferences.js');function isNightModeGadgetEnabled(){return mw.msg('vector-night-mode-gadget-names').split('|').some((gadget)=>{const state=mw.loader.getState(`ext.gadget.${gadget}`);return state!==null&&state!=='registered';});}function disableNightModeForGadget(){document.documentElement.classList.remove('skin-theme-clientpref-night','skin-theme-clientpref-os');document.documentElement.classList.add('skin-theme-clientpref--excluded');}function alterDisableLink(container){const gadgetNames=mw.msg('vector-night-mode-gadget-names');const link=container.querySelector('a');if(!gadgetNames||!link){return;}link.removeAttribute('title');link.removeAttribute('href');link.style.display='inline';link.addEventListener('click',()=>{const disableOptions={};gadgetNames.split('|').forEach((gadgetName)=>{disableOptions[`gadget-${gadgetName}`]=0;});userPreferences.saveOptions(disableOptions).then(()=>{window.location.reload();});});}function removeBetaNotice(){\\nconst feedbackNoticeContainer=document.getElementById('skin-theme-beta-notice');if(feedbackNoticeContainer){feedbackNoticeContainer.remove();}}function alterExclusionMessage(){const noticeContainer=document.querySelector('#skin-client-prefs-skin-theme .exclusion-notice');if(!noticeContainer){return;}mw.loader.using('mediawiki.jqueryMsg').then(()=>{noticeContainer.textContent='';mw.message('vector-night-mode-gadget-warning').parseDom().appendTo(noticeContainer);alterDisableLink(noticeContainer);});}module.exports={isNightModeGadgetEnabled,disableNightModeForGadget,alterDisableLink,alterExclusionMessage,removeBetaNotice};\\n}}},{\\\"css\\\":[\\\".mw-ui-icon-wikimedia-expand{ width:calc(var(--font-size-medium,1rem) + 4px);height:calc(var(--font-size-medium,1rem) + 4px);min-width:10px;min-height:10px;width:calc(var(--font-size-medium,1rem) - 4px);height:calc(var(--font-size-medium,1rem) - 4px);display:inline-block;vertical-align:text-bottom}@supports not ((-webkit-mask-image:none) or (mask-image:none)){.mw-ui-icon-wikimedia-expand{background-position:center;background-repeat:no-repeat; background-size:calc(max(calc(var(--font-size-medium,1rem) + 4px),10px))}}@supports (-webkit-mask-image:none) or (mask-image:none){.mw-ui-icon-wikimedia-expand{ -webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:calc(max(calc(var(--font-size-medium,1rem) + 4px),10px));mask-size:calc(max(calc(var(--font-size-medium,1rem) + 4px),10px)); }}@supports not ((-webkit-mask-image:none) or (mask-image:none)){.mw-ui-icon-wikimedia-expand{background-image:url(\\\\\\\"data:image/svg+xml;utf8,\\\\u003Csvg xmlns=\\\\\\\\\\\\\\\"http://www.w3.org/2000/svg\\\\\\\\\\\\\\\" width=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" height=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" viewBox=\\\\\\\\\\\\\\\"0 0 20 20\\\\\\\\\\\\\\\" fill=\\\\\\\\\\\\\\\"%23000\\\\\\\\\\\\\\\"\\\\u003E\\\\u003Cpath d=\\\\\\\\\\\\\\\"m17.5 4.75-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z\\\\\\\\\\\\\\\"/\\\\u003E\\\\u003C/svg\\\\u003E\\\\\\\");filter:invert(var(--filter-invert-icon,0));opacity:var(--opacity-icon-base,0.87)}}@supports (-webkit-mask-image:none) or (mask-image:none){.mw-ui-icon-wikimedia-expand{ -webkit-mask-image:url(\\\\\\\"data:image/svg+xml;utf8,\\\\u003Csvg xmlns=\\\\\\\\\\\\\\\"http://www.w3.org/2000/svg\\\\\\\\\\\\\\\" width=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" height=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" viewBox=\\\\\\\\\\\\\\\"0 0 20 20\\\\\\\\\\\\\\\" fill=\\\\\\\\\\\\\\\"%23000\\\\\\\\\\\\\\\"\\\\u003E\\\\u003Cpath d=\\\\\\\\\\\\\\\"m17.5 4.75-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z\\\\\\\\\\\\\\\"/\\\\u003E\\\\u003C/svg\\\\u003E\\\\\\\"); mask-image:url(\\\\\\\"data:image/svg+xml;utf8,\\\\u003Csvg xmlns=\\\\\\\\\\\\\\\"http://www.w3.org/2000/svg\\\\\\\\\\\\\\\" width=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" height=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" viewBox=\\\\\\\\\\\\\\\"0 0 20 20\\\\\\\\\\\\\\\" fill=\\\\\\\\\\\\\\\"%23000\\\\\\\\\\\\\\\"\\\\u003E\\\\u003Cpath d=\\\\\\\\\\\\\\\"m17.5 4.75-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z\\\\\\\\\\\\\\\"/\\\\u003E\\\\u003C/svg\\\\u003E\\\\\\\");background-color:var(--color-base,#202122)}}@supports not ((-webkit-mask-image:none) or (mask-image:none)){.mw-ui-icon-wikimedia-expand{background-position:center;background-repeat:no-repeat; background-size:calc(max(calc(var(--font-size-medium,1rem) - 4px),10px))}}@supports (-webkit-mask-image:none) or (mask-image:none){.mw-ui-icon-wikimedia-expand{ -webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:calc(max(calc(var(--font-size-medium,1rem) - 4px),10px));mask-size:calc(max(calc(var(--font-size-medium,1rem) - 4px),10px)); }}.vector-popup-notification{font-size:var(--font-size-small,0.875rem)}.vector-popup-notification p{margin:0}.vector-popup-notification p:last-child{padding-bottom:0} .vector-sticky-header-container{position:fixed;top:0;left:0;right:0;z-index:3;transition:transform 250ms linear;display:none;transform:translateY(-100%);opacity:0}.vector-sticky-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--background-color-interactive,#eaecf0)}.vector-sticky-header-start,.vector-sticky-header-end,.vector-sticky-header-icons,.vector-sticky-header-buttons,.vector-sticky-header-context-bar{display:flex;align-items:center}.vector-sticky-header-start{flex-grow:1;min-width:0}.vector-sticky-header-context-bar-primary,.vector-sticky-header-end{white-space:nowrap}.vector-sticky-header-icon-start{border-right:1px solid var(--border-color-subtle,#c8ccd1);margin-right:calc(20px - 8px);padding-right:20px}.vector-sticky-header-context-bar{min-width:0}.vector-sticky-header-context-bar \\\\u003E *{padding-left:8px}.vector-sticky-header-context-bar \\\\u003E .vector-sticky-header-context-bar-primary{padding:0 8px}.vector-sticky-header .vector-sticky-header-toc{ margin:0 !important}.vector-sticky-header-context-bar-primary{overflow:hidden;font-family:'Linux Libertine','Georgia','Times','Source Serif 4',serif;font-size:1.5em;text-overflow:ellipsis}.vector-sticky-header-context-bar-primary wbr{display:none}.vector-sticky-header-buttons{font-size:0.875em}.vector-sticky-header-icons,.vector-sticky-header-buttons{column-gap:8px}.vector-sticky-header .vector-search-box{display:none}.vector-sticky-header.vector-header-search-toggled .vector-sticky-header-icon-start,.vector-sticky-header.vector-header-search-toggled .vector-sticky-header-context-bar{display:none}.vector-sticky-header.vector-header-search-toggled .vector-search-box{display:block;margin-left:4px}.vector-sticky-header.vector-header-search-toggled .vector-search-box-show-thumbnail{margin-left:-9px}@media (min-width:1120px){.client-js.vector-sticky-header-enabled .vector-sticky-header-container{display:flex}.client-js.vector-sticky-header-enabled .vector-sticky-header-visible .vector-sticky-header-container{opacity:1;transform:translateY(0)}.client-js.vector-sticky-header-enabled .vector-sticky-pinned-container{top:calc(3.125rem + 24px);max-height:calc(100vh - 3.125rem - (24px * 2))}.client-js.vector-sticky-header-enabled .mw-sticky-header-element,.client-js.vector-sticky-header-enabled .charts-stickyhead th{ top:3.125rem !important}} .client-js .mw-portlet-dock-bottom,.client-js .vector-settings{display:block;position:fixed;bottom:8px;right:8px;z-index:1}.client-js .mw-portlet-dock-bottom ul,.client-js .vector-settings ul{padding:0;list-style:none;display:flex;flex-direction:column-reverse;align-items:center;gap:8px 8px}\\\"]},{\\\"vector-appearance-unpinned-popup\\\":\\\"The appearance menu has moved here.\\\",\\\"vector-main-menu-unpinned-popup\\\":\\\"The main menu has moved here.\\\",\\\"vector-night-mode-gadget-names\\\":\\\"dark-mode|dark-mode-toggle|dark-mode-toggle-pagestyles\\\",\\\"vector-night-mode-gadget-warning\\\":\\\"You're using a dark mode gadget that interferes with this feature. [[Special:Preferences#mw-prefsection-gadgets|Disable the gadget]] to use dark mode.\\\",\\\"vector-page-tools-unpinned-popup\\\":\\\"The tools menu has moved here.\\\",\\\"vector-pin-element-label\\\":\\\"move to sidebar\\\",\\\"vector-toc-beginning\\\":\\\"Beginning\\\",\\\"vector-toc-label\\\":\\\"Contents\\\",\\\"vector-toc-unpinned-popup\\\":\\\"The table of contents has moved here.\\\",\\\"vector-unpin-element-label\\\":\\\"hide\\\"}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=skins.vector.js&skin=vector-2022&version=vhjh2\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=skins.vector.js&skin=vector-2022&sourcemap=1&version=vhjh2\",\"mmv.bootstrap@1tpmj\":\"mw.loader.impl(function(){return[\\\"mmv.bootstrap@1tpmj\\\",{\\\"main\\\":\\\"mmv.bootstrap/mmv.bootstrap.autostart.js\\\",\\\"files\\\":{\\\"mmv.bootstrap/config.json\\\":{\\\"extensions\\\":{\\\"djvu\\\":\\\"default\\\",\\\"jpg\\\":\\\"default\\\",\\\"jpeg\\\":\\\"default\\\",\\\"gif\\\":\\\"default\\\",\\\"svg\\\":\\\"default\\\",\\\"png\\\":\\\"default\\\",\\\"tiff\\\":\\\"default\\\",\\\"tif\\\":\\\"default\\\",\\\"webp\\\":\\\"default\\\",\\\"stl\\\":\\\"mmv.3d\\\"}},\\\"mmv.bootstrap/mmv.bootstrap.autostart.js\\\":function(require,module,exports){const Config=require('./mmv.Config.js');const MultimediaViewerBootstrap=require('./mmv.bootstrap.js');const LightboxImage=require('./mmv.lightboximage.js');const bootstrap=new MultimediaViewerBootstrap();$(bootstrap.setupEventHandlers.bind(bootstrap));module.exports={MultimediaViewerBootstrap,LightboxImage,Config};\\n},\\\"mmv.bootstrap/mmv.bootstrap.js\\\":function(require,module,exports){const Config=require('./mmv.Config.js');const LightboxImage=require('./mmv.lightboximage.js');const{extensions}=require('./config.json');const mwRouter=require('mediawiki.router');const MANAGED_STATE='MMV was here!';class MultimediaViewerBootstrap{constructor(){this.hoverWaitDuration=200;this.viewerIsBroken=false;this.viewerPromise=null;this.thumbsReadyDeferred=$.Deferred();this.thumbs=[];this.$thumbs=null;this.$parsoidThumbs=null;mw.hook('wikipage.content').add(this.processThumbs.bind(this));this.setupRouter(mwRouter);}route(fileName){this.viewerPromise=this.loadViewer();this.viewerPromise.then((viewer)=>{let fileTitle;viewer.comingFromHashChange=true;try{let position=fileName.match(Config.POSITION_REGEXP);if(position){position=+position[1];fileName=fileName.replace(Config.POSITION_REGEXP,'');}else{position=undefined;}fileName=decodeURIComponent(fileName);fileTitle=new mw.Title(fileName);viewer.loadImageByTitle(fileTitle,position);}catch(err){mw.log.warn(err);}viewer.comingFromHashChange=false;\\n});}setupRouter(router){router.addRoute(Config.ROUTE_REGEXP,this.route.bind(this));router.on('route',(ev)=>{if(ev.path.match(Config.ROUTE_REGEXP)){return;}if(this.viewerPromise){this.viewerPromise.then((viewer)=>{if(viewer.isOpen){viewer.comingFromHashChange=true;document.title=viewer.createDocumentTitle(null);if(viewer.ui){viewer.ui.unattach();}else{viewer.close();}}});}});this.router=router;}loadViewer(){if(mw.config.get('wgMediaViewer')!==true){return $.Deferred().reject();}if(history.scrollRestoration){history.scrollRestoration='manual';}this.setupOverlay();return mw.loader.using('mmv').then((require)=>{if(!this.viewer){const{MultimediaViewer}=require('mmv');this.viewer=new MultimediaViewer();this.viewer.setupEventHandlers();}return this.viewer;}).then((viewer)=>{if(!this.viewerInitialized){if(this.thumbs.length){viewer.initWithThumbs(this.thumbs);}this.viewerInitialized=true;}return viewer;},(error)=>{mw.log.warn(error);this.cleanupOverlay();this.viewerIsBroken=true;mw.notify(`Error loading MediaViewer: ${error.message}`);\\nthrow error;}).always(()=>{if(this.$loadBar){this.$loadBar.remove();}});}processThumbs($content){this.viewerInitialized=false;if($content&&$content.attr('id')==='mw-content-text'){this.thumbs=[];}this.$parsoidThumbs=$content.find('[typeof*=\\\"mw:File\\\"] a.mw-file-description img, '+'[typeof*=\\\"mw:Image\\\"] a.mw-file-description img');this.$thumbs=$content.find('.gallery .image img, '+'a.image img, '+'a.mw-file-description img, '+'#file a img').not(this.$parsoidThumbs);try{this.$thumbs.each((i,thumb)=>this.processThumb(thumb));this.$parsoidThumbs.each((i,thumb)=>this.processParsoidThumb(thumb));}finally{this.thumbsReadyDeferred.resolve();}}isAllowedThumb($thumb){const selectors=['.metadata','.noviewer','.noarticletext','#siteNotice','ul.mw-gallery-slideshow li.gallerybox'];return $thumb.closest(selectors.join(', ')).length===0;}isValidExtension(title){return title&&title.getExtension()&&(title.getExtension().toLowerCase()in extensions);}preloadAssets($thumbContainer){$thumbContainer.on({\\nmouseenter:()=>{if(!Config.isMediaViewerEnabledOnClick()){return;}this.preloadOnHoverTimer=setTimeout(()=>{mw.loader.load('mmv');},this.hoverWaitDuration);},mouseleave:()=>{if(this.preloadOnHoverTimer){clearTimeout(this.preloadOnHoverTimer);}}});}processThumb(thumb){let title;const $thumb=$(thumb);const $link=$thumb.closest('a.image, a.mw-file-description');const $thumbContainer=$link.closest('.thumb');const $enlarge=$thumbContainer.find('.magnify a');const isFilePageMainThumb=$thumb.closest('#file').length>0;if(isFilePageMainThumb){title=mw.Title.newFromText(mw.config.get('wgTitle'),mw.config.get('wgNamespaceNumber'));}else{title=mw.Title.newFromImg($thumb);}if(!this.isValidExtension(title)){return;}if(!this.isAllowedThumb($thumb)){return;}if($thumbContainer.length){this.preloadAssets($thumbContainer);}if(isFilePageMainThumb){this.processFilePageThumb($thumb,title);return;}const image=new LightboxImage($thumb.prop('src'),title,this.thumbs.length,this.thumbs.filter((t)=>t.filePageTitle.getPrefixedText()===title.getPrefixedText()).length+1,\\n$thumb[0],this.findCaption($thumbContainer,$link));this.thumbs.push(image);$link.add($enlarge).on('click',(e)=>this.click(e,image));}processParsoidThumb(thumb){const $thumb=$(thumb);const $link=$thumb.closest('a.mw-file-description');const $thumbContainer=$link.closest('[typeof*=\\\"mw:File\\\"], '+'[typeof*=\\\"mw:Image\\\"]');const title=mw.Title.newFromImg($thumb);let caption;if(!this.isValidExtension(title)){return;}if(!this.isAllowedThumb($thumb)){return;}if($thumbContainer.length){this.preloadAssets($thumbContainer);}if(($thumbContainer.prop('tagName')||'').toLowerCase()==='figure'){caption=$thumbContainer.find('figcaption').html()||'';}else{caption=$link.prop('title')||undefined;}const image=new LightboxImage($thumb.prop('src'),title,this.thumbs.length,this.thumbs.filter((t)=>t.filePageTitle.getPrefixedText()===title.getPrefixedText()).length+1,$thumb[0],caption);this.thumbs.push(image);$link.on('click',(e)=>this.click(e,image));}processFilePageThumb($thumb,title){$('.mw-mmv-view-expanded').remove();\\nconst $mmvButton=$('<button>').addClass('mw-mmv-view-expanded cdx-button').append($('<span>').addClass('cdx-button__icon')).append(' ').append(mw.message('multimediaviewer-view-expanded').escaped());$('.fullMedia').append($mmvButton);const image=new LightboxImage($thumb.prop('src'),title,this.thumbs.length,1,$thumb[0],'');this.thumbs.push(image);$mmvButton.on('click',()=>this.openImage(image));if(Config.shouldShowStatusInfo()){Config.disableStatusInfo();this.showStatusInfo();}}showStatusInfo(){mw.loader.using('oojs-ui-core').done(()=>{const content=document.createElement('div');content.textContent=mw.msg('multimediaviewer-disable-info');const popupWidget=new OO.ui.PopupWidget({label:mw.msg('multimediaviewer-disable-info-title'),$content:$(content),padded:true,head:true,anchor:true,align:'center',position:'above',autoFlip:false,horizontalPosition:'start',$floatableContainer:$('.mw-mmv-view-expanded')});popupWidget.$element.appendTo(document.body);popupWidget.toggleClipping(true);\\npopupWidget.toggle(true);});}findCaption($thumbContainer,$link){if(!$thumbContainer.length){return $link.prop('title')||undefined;}let $thumbCaption=$thumbContainer.find('.thumbcaption');if($thumbCaption.length>1){$thumbCaption=$link.closest(':has(> .thumbcaption)',$thumbContainer).find('> .thumbcaption');}if(!$thumbCaption.length){$thumbCaption=$thumbContainer.closest('.gallerybox').not(()=>$thumbContainer.closest('#mw-category-media').length).not(()=>{const $specialFileRelatedPages=$('.page-Special_NewFiles, '+'.page-Special_MostLinkedFiles,'+'.page-Special_MostGloballyLinkedFiles, '+'.page-Special_UncategorizedFiles, '+'.page-Special_UnusedFiles');return $thumbContainer.closest($specialFileRelatedPages).length;}).find('.gallerytext');}if($thumbCaption.find('.magnify').length){$thumbCaption=$thumbCaption.clone();$thumbCaption.find('.magnify').remove();}return $thumbCaption.html()||'';}openImage(image){this.ensureEventHandlersAreSetUp();const hash=Config.getMediaHash(image.filePageTitle,image.position);\\nlocation.hash=hash;history.replaceState(MANAGED_STATE,null,hash);}click(e,image){if((e.button!==0&&e.which!==1)||e.altKey||e.ctrlKey||e.shiftKey||e.metaKey){return true;}if(!Config.isMediaViewerEnabledOnClick()){return true;}if(this.viewerIsBroken){return true;}this.openImage(image);e.preventDefault();return false;}isViewerHash(){const path=location.hash.slice(1);return path.match(Config.ROUTE_REGEXP);}hash(){const isViewerHash=this.isViewerHash();if(!this.viewerInitialized&&!isViewerHash){return;}const hash=location.hash;if(window.history.state!==MANAGED_STATE){history.replaceState(null,null,'#');history.pushState(MANAGED_STATE,null,hash);}this.router.checkRoute();}setupEventHandlers(){this.eventHandlersHaveBeenSetUp=true;this.hash(true);$(document).on('mmv-setup-overlay',()=>{this.setupOverlay();}).on('mmv-cleanup-overlay',()=>{this.cleanupOverlay();});}cleanupEventHandlers(){$(document).off('mmv-setup-overlay mmv-cleanup-overlay');this.eventHandlersHaveBeenSetUp=false;}\\nensureEventHandlersAreSetUp(){if(!this.eventHandlersHaveBeenSetUp){this.setupEventHandlers();}}setupOverlay(){const $body=$(document.body);if($body.hasClass('mw-mmv-lightbox-open')){return;}if(!this.$overlay){this.$overlay=$('<div>').addClass('mw-mmv-overlay mw-no-invert');this.$loadBar=$('<div>').addClass('cdx-progress-bar').attr({role:'progressbar','aria-label':mw.msg('multimediaviewer-loading')}).append($('<div>').addClass('cdx-progress-bar__bar'));this.$overlay.append(this.$loadBar);}this.savedScrollTop=$(window).scrollTop();$body.addClass('mw-mmv-lightbox-open').append(this.$overlay);}cleanupOverlay(){$(document.body).removeClass('mw-mmv-lightbox-open');if(this.$overlay){this.$overlay.remove();}if(this.savedScrollTop!==undefined){setTimeout(()=>{$(window).scrollTop(this.savedScrollTop);this.savedScrollTop=undefined;});}}whenThumbsReady(){return this.thumbsReadyDeferred.promise();}}module.exports=MultimediaViewerBootstrap;\\n},\\\"mmv.bootstrap/mmv.lightboximage.js\\\":function(require,module,exports){class LightboxImage{constructor(fileLink,fileTitle,index,position,thumb,caption){this.src=fileLink;this.filePageTitle=fileTitle;this.index=index;this.position=position;this.thumbnail=thumb;this.caption=caption;this.alt=$(this.thumbnail).attr('alt');this.originalWidth=parseInt($(this.thumbnail).data('file-width'),10);this.originalHeight=parseInt($(this.thumbnail).data('file-height'),10);}}module.exports=LightboxImage;\\n},\\\"mmv.bootstrap/mmv.Config.js\\\":function(require,module,exports){const api=new mw.Api();class Config{static get ROUTE(){return'media';}static get ROUTE_REGEXP(){return/^\\\\/media\\\\/(.+)$/;}static get POSITION_REGEXP(){return/\\\\/(\\\\d+)$/;}static isMediaViewerEnabledOnClick(){return mw.config.get('wgMediaViewer')&&mw.config.get('wgMediaViewerOnClick')&&(mw.user.isNamed()||!mw.storage.get('wgMediaViewerOnClick')||mw.storage.get('wgMediaViewerOnClick')==='1');}static getMediaHash(imageFileTitle,position){return position>1?`#/${this.ROUTE}/${encodeURI(imageFileTitle)}/${position}`:`#/${this.ROUTE}/${encodeURI(imageFileTitle)}`;}static setMediaViewerEnabledOnClick(enabled){const defaultPrefValue=mw.config.get('wgMediaViewerEnabledByDefault');let deferred;let newPrefValue;let success=true;if(!mw.user.isNamed()){if(!enabled){success=mw.storage.set('wgMediaViewerOnClick','0');}else{success=mw.storage.remove('wgMediaViewerOnClick');}if(success){deferred=$.Deferred().resolve();}else{deferred=$.Deferred().reject();}}else{if(defaultPrefValue===true){newPrefValue=enabled?'1':'';\\n}else{newPrefValue=enabled?'1':undefined;}deferred=api.saveOption('multimediaviewer-enable',newPrefValue);}return deferred.done(()=>{mw.config.set('wgMediaViewerOnClick',enabled);if(!enabled){Config.maybeEnableStatusInfo();}});}static shouldShowStatusInfo(){return!this.isMediaViewerEnabledOnClick()&&mw.storage.get('mmv-showStatusInfo')==='1';}static maybeEnableStatusInfo(){const currentShowStatusInfo=mw.storage.get('mmv-showStatusInfo');if(currentShowStatusInfo===null){mw.storage.set('mmv-showStatusInfo','1');}}static disableStatusInfo(){mw.storage.set('mmv-showStatusInfo','0');}static language(){return mw.config.get('wgUserLanguage',false)||mw.config.get('wgContentLanguage','en');}}mw.mmv=Config;module.exports=Config;\\n}}},{\\\"css\\\":[\\\".mw-mmv-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;background-color:#000;display:flex;justify-items:center;align-items:center;align-content:center;justify-content:center}.mw-mmv-overlay .cdx-progress-bar{max-width:80vw;min-width:20vw;width:20rem}body.mw-mmv-lightbox-open{overflow-y:auto;background-color:#000}body.mw-mmv-lightbox-open \\\\u003E *:not(.mw-notification-area-overlay){display:none}body.mw-mmv-lightbox-open \\\\u003E .mw-mmv-overlay{display:flex}body.mw-mmv-lightbox-open \\\\u003E .mw-mmv-wrapper{display:block}.mw-mmv-view-expanded .cdx-button__icon{ min-width:10px;min-height:10px;width:var(--font-size-medium,1rem);height:var(--font-size-medium,1rem);display:inline-block;vertical-align:text-bottom}@supports not ((-webkit-mask-image:none) or (mask-image:none)){.mw-mmv-view-expanded .cdx-button__icon{background-position:center;background-repeat:no-repeat; background-size:calc(max(var(--font-size-medium,1rem),10px))}}@supports (-webkit-mask-image:none) or (mask-image:none){.mw-mmv-view-expanded .cdx-button__icon{ -webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:calc(max(var(--font-size-medium,1rem),10px));mask-size:calc(max(var(--font-size-medium,1rem),10px)); }}@supports not ((-webkit-mask-image:none) or (mask-image:none)){.mw-mmv-view-expanded .cdx-button__icon{background-image:url(\\\\\\\"data:image/svg+xml;utf8,\\\\u003Csvg xmlns=\\\\\\\\\\\\\\\"http://www.w3.org/2000/svg\\\\\\\\\\\\\\\" width=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" height=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" viewBox=\\\\\\\\\\\\\\\"0 0 20 20\\\\\\\\\\\\\\\" fill=\\\\\\\\\\\\\\\"%23000\\\\\\\\\\\\\\\"\\\\u003E\\\\u003Cpath d=\\\\\\\\\\\\\\\"M3 5a2 2 0 00-2 2v10a2 2 0 002 2h14a2 2 0 002-2V7a2 2 0 00-2-2zm0 11 3.5-4.5 2.5 3 3.5-4.5 4.5 6zM16 2a2 2 0 012 2H2a2 2 0 012-2z\\\\\\\\\\\\\\\"/\\\\u003E\\\\u003C/svg\\\\u003E\\\\\\\");filter:invert(var(--filter-invert-icon,0));opacity:var(--opacity-icon-base,0.87)}.cdx-button:not(.cdx-button--weight-quiet):disabled .mw-mmv-view-expanded .cdx-button__icon,.cdx-button--weight-primary.cdx-button--action-progressive .mw-mmv-view-expanded .cdx-button__icon,.cdx-button--weight-primary.cdx-button--action-destructive .mw-mmv-view-expanded .cdx-button__icon{filter:invert(var(--filter-invert-primary-button-icon,1))}}@supports (-webkit-mask-image:none) or (mask-image:none){.mw-mmv-view-expanded .cdx-button__icon{ -webkit-mask-image:url(\\\\\\\"data:image/svg+xml;utf8,\\\\u003Csvg xmlns=\\\\\\\\\\\\\\\"http://www.w3.org/2000/svg\\\\\\\\\\\\\\\" width=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" height=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" viewBox=\\\\\\\\\\\\\\\"0 0 20 20\\\\\\\\\\\\\\\" fill=\\\\\\\\\\\\\\\"%23000\\\\\\\\\\\\\\\"\\\\u003E\\\\u003Cpath d=\\\\\\\\\\\\\\\"M3 5a2 2 0 00-2 2v10a2 2 0 002 2h14a2 2 0 002-2V7a2 2 0 00-2-2zm0 11 3.5-4.5 2.5 3 3.5-4.5 4.5 6zM16 2a2 2 0 012 2H2a2 2 0 012-2z\\\\\\\\\\\\\\\"/\\\\u003E\\\\u003C/svg\\\\u003E\\\\\\\"); mask-image:url(\\\\\\\"data:image/svg+xml;utf8,\\\\u003Csvg xmlns=\\\\\\\\\\\\\\\"http://www.w3.org/2000/svg\\\\\\\\\\\\\\\" width=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" height=\\\\\\\\\\\\\\\"20\\\\\\\\\\\\\\\" viewBox=\\\\\\\\\\\\\\\"0 0 20 20\\\\\\\\\\\\\\\" fill=\\\\\\\\\\\\\\\"%23000\\\\\\\\\\\\\\\"\\\\u003E\\\\u003Cpath d=\\\\\\\\\\\\\\\"M3 5a2 2 0 00-2 2v10a2 2 0 002 2h14a2 2 0 002-2V7a2 2 0 00-2-2zm0 11 3.5-4.5 2.5 3 3.5-4.5 4.5 6zM16 2a2 2 0 012 2H2a2 2 0 012-2z\\\\\\\\\\\\\\\"/\\\\u003E\\\\u003C/svg\\\\u003E\\\\\\\");transition-property:background-color;transition-duration:100ms}}\\\"]},{\\\"multimediaviewer-disable-info\\\":\\\"You can still view individual files with Media Viewer.\\\",\\\"multimediaviewer-disable-info-title\\\":\\\"You have disabled Media Viewer\\\",\\\"multimediaviewer-loading\\\":\\\"Loading Media Viewer.\\\",\\\"multimediaviewer-view-config\\\":\\\"Configuration\\\",\\\"multimediaviewer-view-expanded\\\":\\\"Open in Media Viewer\\\"}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mmv.bootstrap&skin=vector-2022&version=3p2a9\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mmv.bootstrap&skin=vector-2022&sourcemap=1&version=3p2a9\",\"ext.visualEditor.tempWikitextEditorWidget@bm2az\":\"mw.loader.impl(function(){return[\\\"ext.visualEditor.tempWikitextEditorWidget@bm2az\\\",function($,jQuery,require,module){mw.libs.ve=mw.libs.ve||{};mw.libs.ve.MWTempWikitextEditorWidget=function VeUiMwTempWikitextEditorWidget(config){const conf=mw.config.get('wgVisualEditor'),dir=conf.pageLanguageDir,lang=conf.pageLanguageCode;this.$element=$('<textarea>').addClass('ve-init-mw-tempWikitextEditorWidget ').addClass('mw-editfont-'+mw.user.options.get('editfont')).addClass('mw-content-'+dir).attr({lang,dir}).val(config.value);};mw.libs.ve.MWTempWikitextEditorWidget.prototype.moveCursorToStart=function(){this.$element[0].setSelectionRange(0,0);this.focus();return this;};mw.libs.ve.MWTempWikitextEditorWidget.prototype.adjustSize=function(){this.$element.height(this.$element[0].scrollHeight);return this;};mw.libs.ve.MWTempWikitextEditorWidget.prototype.focus=function(){this.$element[0].focus();return this;};mw.libs.ve.MWTempWikitextEditorWidget.prototype.getValue=function(){return this.$element.val();};mw.libs.ve.MWTempWikitextEditorWidget.prototype.getRange=function(){const input=this.$element[0],start=input.selectionStart,\\nend=input.selectionEnd,isBackwards=input.selectionDirection==='backward';return{from:isBackwards?end:start,to:isBackwards?start:end};};\\n},{\\\"css\\\":[\\\".ve-init-mw-tempWikitextEditorWidget{border:0;padding:0;color:inherit;line-height:1.5em;width:100%;-moz-tab-size:4;tab-size:4;  }.ve-init-mw-tempWikitextEditorWidget:focus{outline:0;padding:0}.ve-init-mw-tempWikitextEditorWidget::selection{background:rgba(109,169,247,0.5)}\\\"]}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.tempWikitextEditorWidget&skin=vector-2022&version=o859z\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.tempWikitextEditorWidget&skin=vector-2022&sourcemap=1&version=o859z\",\"ext.uls.compactlinks@3arm7\":\"mw.loader.impl(function(){return[\\\"ext.uls.compactlinks@3arm7\\\",{\\\"main\\\":\\\"js/ext.uls.compactlinks.js\\\",\\\"files\\\":{\\\"js/ext.uls.compactlinks.js\\\":function(require,module,exports){(function(){'use strict';const DEFAULT_LIST_SIZE=9;function addMatchWithoutDuplicate(target,source,items){let i;if(items===undefined){return;}items=!Array.isArray(items)?[items]:items;for(i=0;i<items.length;i++){if(!target.includes(items[i])&&source.includes(items[i])){target.push(items[i]);}}}function getAssistantLanguages(){const assistantLanguages=mw.user.options.get('translate-editlangs');if(!assistantLanguages||assistantLanguages==='default'){return;}return assistantLanguages.split(/,\\\\s*/);}function getPreviousLanguages(){return mw.uls.getPreviousLanguages();}function getBabelLanguages(){return mw.config.get('wgULSBabelLanguages');}function getSitePicks(){return mw.config.get('wgULSCompactLinksPrepend');}function getCommonLanguages(){return mw.uls.getFrequentLanguageList();}function getExtraCommonLanguages(){return['zh','en','hi','ur','es','ar','ru','id','ms','pt','fr','de','bn','ja','pnb','pa','jv','te','ta','ko','mr','tr','vi','it','fa','sv','nl','pl'];}function getFinalFallback(languages){\\nreturn languages;}function CompactInterlanguageList(listElement,options){this.listElement=listElement;this.options=options||{};this.interlanguageList=mw.uls.getInterlanguageListFromNodes(listElement.querySelectorAll('.interlanguage-link-target'));this.compactList=null;this.$trigger=null;this.compactSize=0;this.listSize=0;}CompactInterlanguageList.prototype.init=function(){const max=this.options.max||DEFAULT_LIST_SIZE;this.listSize=Object.keys(this.interlanguageList).length;if(this.listSize<=max){mw.hook('mw.uls.compactlinks.initialized').fire(false);return;}this.compactSize=(this.listSize<=12)?7:max;this.compactList=this.getCompactList();this.hideOriginal();this.render();};CompactInterlanguageList.prototype.render=function(){for(const language in this.compactList){this.compactList[language].parentNode.style.display='';}mw.loader.using('@wikimedia/codex').then(()=>{this.addTrigger();});mw.hook('mw.uls.compactlinks.initialized').fire(true);};CompactInterlanguageList.prototype.getCompactList=function(){\\nconst compactedList={};const languages=Object.keys(this.interlanguageList);const compactLanguages=this.compact(languages);for(let i=0;i<compactLanguages.length;i++){const language=compactLanguages[i];compactedList[language]=this.interlanguageList[language];}return compactedList;};CompactInterlanguageList.prototype.getCompactStrategies=function(){return[getAssistantLanguages,getPreviousLanguages,getBabelLanguages,getSitePicks,getCommonLanguages,this.getLangsInText.bind(this),this.getLangsWithBadges.bind(this),getExtraCommonLanguages,getFinalFallback];};CompactInterlanguageList.prototype.compact=function(languages){let compactLanguages=[];const strategies=this.getCompactStrategies();for(let i=0;i<strategies.length;i++){const found=strategies[i](languages);addMatchWithoutDuplicate(compactLanguages,languages,found);if(compactLanguages.length>=this.compactSize){compactLanguages=compactLanguages.slice(0,this.compactSize);break;}}return compactLanguages;};CompactInterlanguageList.prototype.getLangsInText=function(){\\nconst languagesInText=[];Array.prototype.forEach.call(document.querySelectorAll('#mw-content-text [lang]'),(el)=>{const lang=mw.uls.convertMediaWikiLanguageCodeToULS(el.lang);if(!languagesInText.includes(lang)){languagesInText.push(lang);}});return languagesInText;};CompactInterlanguageList.prototype.getLangsWithBadges=function(){return Array.prototype.map.call(this.listElement.querySelectorAll('[class*=\\\"badge\\\"] a.interlanguage-link-target'),(el)=>mw.uls.convertMediaWikiLanguageCodeToULS(el.lang));};CompactInterlanguageList.prototype.hideOriginal=function(){const links=this.listElement.querySelectorAll('.interlanguage-link');let i=links.length;while(i--){links[i].style.display='none';}};CompactInterlanguageList.prototype.addTrigger=function(){const trigger=document.createElement('button');trigger.className='mw-interlanguage-selector cdx-button';trigger.title=mw.message('ext-uls-compact-link-info').plain();trigger.textContent=mw.message('ext-uls-compact-link-count',mw.language.convertNumber(this.listSize-this.compactSize)\\n).text();this.listElement.appendChild(trigger);this.$trigger=$(trigger);};function createCompactList(){const listElement=document.querySelector('.mw-portlet-lang ul, #p-lang ul');if(!listElement){return;}const compactList=new CompactInterlanguageList(listElement);compactList.init();}if(document.readyState==='interactive'){createCompactList();}else{$(createCompactList);}}());\\n}}},{\\\"css\\\":[\\\"#p-lang .body ul .uls-trigger,#p-lang .pBody ul .uls-trigger{background-image:none;padding:0}#p-lang .mw-interlanguage-selector,#p-lang .mw-interlanguage-selector:active{background-image:url(/w/extensions/UniversalLanguageSelector/resources/images/language-base20.svg?65418);background-position:left 4px center;background-repeat:no-repeat;background-size:16px;margin:4px 0 8px;padding:4px 8px 4px 26px;font-size:13px;font-weight:normal;text-align:left;cursor:pointer}#p-lang .mw-interlanguage-selector.selector-open{background-color:#c8ccd1}  .interlanguage-uls-menu::before,.interlanguage-uls-menu::after{border-top:10px solid var(--border-color-transparent,transparent);border-bottom:10px solid var(--border-color-transparent,transparent);display:inline-block; top:17px;position:absolute;content:''}.interlanguage-uls-menu.selector-right::before{ border-left:10px solid var(--border-color-subtle,#c8ccd1); right:-11px}.interlanguage-uls-menu.selector-right::after{ border-left:10px solid var(--border-color-inverted,#fff); right:-10px}.interlanguage-uls-menu.selector-left::before{ border-right:10px solid var(--border-color-subtle,#c8ccd1); left:-11px}.interlanguage-uls-menu.selector-left::after{ border-right:10px solid var(--border-color-inverted,#fff); left:-10px}.cdx-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;box-sizing:border-box;min-height:32px;max-width:28rem;margin:0;border-width:1px;border-style:solid;border-radius:2px;padding-right:11px;padding-left:11px;font-family:inherit;font-size:var(--font-size-medium,1rem);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:none;transition-property:background-color,color,border-color,box-shadow;transition-duration:.1s}.cdx-button--size-small{gap:4px;min-height:1.5rem;padding-right:5px;padding-left:5px}.cdx-button--size-large{min-height:44px;padding-right:15px;padding-left:15px}.cdx-button--icon-only{min-width:32px;padding-right:0;padding-left:0}.cdx-button--icon-only.cdx-button--size-small{min-width:1.5rem}.cdx-button--icon-only.cdx-button--size-large{min-width:44px}.cdx-button::-moz-focus-inner{border:0;padding:0}.cdx-button .cdx-button__icon,.cdx-button .cdx-icon{vertical-align:middle}.cdx-button .cdx-icon{color:inherit}.cdx-button--fake-button,.cdx-button--fake-button:hover,.cdx-button--fake-button:focus{text-decoration:none}.cdx-button:enabled,.cdx-button.cdx-button--fake-button--enabled{background-color:var(--background-color-interactive-subtle,#f8f9fa);color:var(--color-neutral,#404244);border-color:var(--border-color-interactive,#72777d)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled .cdx-button__icon{background-color:var(--color-neutral,#404244)}}.cdx-button:enabled:hover,.cdx-button.cdx-button--fake-button--enabled:hover{background-color:var(--background-color-interactive-subtle--hover,#eaecf0);border-color:var(--border-color-interactive--hover,#27292d);cursor:pointer}.cdx-button:enabled:active,.cdx-button.cdx-button--fake-button--enabled:active,.cdx-button:enabled.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--is-active{background-color:var(--background-color-interactive-subtle--active,#dadde3);border-color:var(--border-color-interactive--active,#202122)}.cdx-button:enabled:focus,.cdx-button.cdx-button--fake-button--enabled:focus{outline:1px solid transparent}.cdx-button:enabled:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-progressive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-progressive--focus,#36c)}.cdx-button:enabled.cdx-button--action-progressive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive{background-color:var(--background-color-progressive-subtle,#e8eeff);color:var(--color-progressive,#36c);border-color:var(--border-color-progressive,#6485d1)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-progressive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive .cdx-button__icon{background-color:var(--color-progressive,#36c)}}.cdx-button:enabled.cdx-button--action-progressive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive:hover{background-color:var(--background-color-progressive-subtle--hover,#d9e2ff);color:var(--color-progressive--hover,#3056a9);border-color:var(--border-color-progressive--hover,#3056a9)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-progressive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive:hover .cdx-button__icon{background-color:var(--color-progressive--hover,#3056a9)}}.cdx-button:enabled.cdx-button--action-progressive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive:active,.cdx-button:enabled.cdx-button--action-progressive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive.cdx-button--is-active{background-color:var(--background-color-progressive-subtle--active,#b6d4fb);color:var(--color-progressive--active,#233566);border-color:var(--border-color-progressive--active,#233566)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon{background-color:var(--color-progressive--active,#233566)}}.cdx-button:enabled.cdx-button--action-destructive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive{background-color:var(--background-color-destructive-subtle,#ffe9e5);color:var(--color-destructive,#bf3c2c);border-color:var(--border-color-destructive,#f54739)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-destructive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive .cdx-button__icon{background-color:var(--color-destructive,#bf3c2c)}}.cdx-button:enabled.cdx-button--action-destructive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:hover{background-color:var(--background-color-destructive-subtle--hover,#ffdad3);color:var(--color-destructive--hover,#9f3526);border-color:var(--border-color-destructive--hover,#9f3526)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-destructive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:hover .cdx-button__icon{background-color:var(--color-destructive--hover,#9f3526)}}.cdx-button:enabled.cdx-button--action-destructive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:active,.cdx-button:enabled.cdx-button--action-destructive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive.cdx-button--is-active{background-color:var(--background-color-destructive-subtle--active,#ffc8bd);color:var(--color-destructive--active,#612419);border-color:var(--border-color-destructive--active,#612419)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon{background-color:var(--color-destructive--active,#612419)}}.cdx-button:enabled.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-destructive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-destructive--focus,#36c)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive{background-color:var(--background-color-progressive,#36c);color:var(--color-inverted-fixed,#fff);border-color:var(--border-color-transparent,transparent)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive:hover{background-color:var(--background-color-progressive--hover,#3056a9)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive:active,.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive.cdx-button--is-active{background-color:var(--background-color-progressive--active,#233566)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-progressive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-progressive--focus,#36c),inset 0 0 0 2px var(--box-shadow-color-inverted,#fff)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive .cdx-button__icon{background-color:var(--color-inverted-fixed,#fff)}}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive{background-color:var(--background-color-destructive,#bf3c2c);color:var(--color-inverted-fixed,#fff);border-color:var(--border-color-transparent,transparent)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive:hover{background-color:var(--background-color-destructive--hover,#9f3526)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive:active,.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive.cdx-button--is-active{background-color:var(--background-color-destructive--active,#612419)}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-destructive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-destructive--focus,#36c),inset 0 0 0 2px var(--box-shadow-color-inverted,#fff)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive .cdx-button__icon{background-color:var(--color-inverted-fixed,#fff)}}.cdx-button:enabled.cdx-button--weight-quiet,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet{background-color:var(--background-color-transparent,transparent);border-color:var(--border-color-transparent,transparent)}.cdx-button:enabled.cdx-button--weight-quiet:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet:hover{background-color:var(--background-color-interactive-subtle--hover,#eaecf0);mix-blend-mode:var(--mix-blend-mode-blend,multiply)}.cdx-button:enabled.cdx-button--weight-quiet:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet:active,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--is-active{background-color:var(--background-color-interactive-subtle--active,#dadde3)}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive{color:var(--color-progressive,#36c)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive .cdx-button__icon{background-color:var(--color-progressive,#36c)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:hover{background-color:var(--background-color-progressive-subtle--hover,#d9e2ff);color:var(--color-progressive--hover,#3056a9);border-color:var(--border-color-transparent,transparent)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:hover .cdx-button__icon{background-color:var(--color-progressive--hover,#3056a9)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:active,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive.cdx-button--is-active{background-color:var(--background-color-progressive-subtle--active,#b6d4fb);color:var(--color-progressive--active,#233566);border-color:var(--border-color-transparent,transparent)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon{background-color:var(--color-progressive--active,#233566)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-progressive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-progressive--focus,#36c)}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive{color:var(--color-destructive,#bf3c2c)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive .cdx-button__icon{background-color:var(--color-destructive,#bf3c2c)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:hover{background-color:var(--background-color-destructive-subtle--hover,#ffdad3);color:var(--color-destructive--hover,#9f3526);border-color:var(--border-color-transparent,transparent)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:hover .cdx-button__icon{background-color:var(--color-destructive--hover,#9f3526)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:active,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive.cdx-button--is-active{background-color:var(--background-color-destructive-subtle--active,#ffc8bd);color:var(--color-destructive--active,#612419);border-color:var(--border-color-transparent,transparent)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon{background-color:var(--color-destructive--active,#612419)}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active){border-color:var(--border-color-destructive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-destructive--focus,#36c)}.cdx-button:disabled,.cdx-button.cdx-button--fake-button--disabled{background-color:var(--background-color-disabled,#dadde3);color:var(--color-disabled-emphasized,#a2a9b1);border-color:var(--border-color-transparent,transparent)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:disabled .cdx-button__icon,.cdx-button.cdx-button--fake-button--disabled .cdx-button__icon{background-color:var(--color-inverted,#fff)}}.cdx-button:disabled.cdx-button--weight-quiet,.cdx-button.cdx-button--fake-button--disabled.cdx-button--weight-quiet{background-color:var(--background-color-transparent,transparent);color:var(--color-disabled,#a2a9b1)}@supports ((-webkit-mask-image:none) or (mask-image:none)){.cdx-button:disabled.cdx-button--weight-quiet .cdx-button__icon,.cdx-button.cdx-button--fake-button--disabled.cdx-button--weight-quiet .cdx-button__icon{background-color:var(--color-disabled,#a2a9b1)}}.cdx-icon{color:var(--color-base,#202122);display:inline-flex;align-items:center;justify-content:center;vertical-align:text-bottom}.cdx-icon svg{fill:currentcolor;width:100%;height:100%}.cdx-icon--x-small{min-width:10px;min-height:10px;width:calc(var(--font-size-medium,1rem) - 4px);height:calc(var(--font-size-medium,1rem) - 4px)}.cdx-icon--small{min-width:14px;min-height:14px;width:var(--font-size-medium,1rem);height:var(--font-size-medium,1rem)}.cdx-icon--medium{min-width:18px;min-height:18px;width:calc(var(--font-size-medium,1rem) + 4px);height:calc(var(--font-size-medium,1rem) + 4px)}.cdx-icon--flipped svg{transform:scaleX(-1)}.cdx-label{display:flex;flex-direction:column;font-size:var(--font-size-medium,1rem);line-height:var(--line-height-small,1.375rem)}.cdx-label__label__icon.cdx-icon{color:var(--color-subtle,#54595d);margin-right:4px}.cdx-label__label__text{font-weight:700}legend.cdx-label{padding:0}fieldset label.cdx-label__label .cdx-label__label__text{font-weight:400}.cdx-label:not(.cdx-label--disabled) .cdx-label__label__optional-flag,.cdx-label:not(.cdx-label--disabled) .cdx-label__description{color:var(--color-subtle,#54595d)}.cdx-label--disabled,.cdx-label--disabled .cdx-label__label__icon{color:var(--color-disabled,#a2a9b1)}.cdx-label--visually-hidden{display:block;clip:rect(1px,1px,1px,1px);position:absolute!important;width:1px;height:1px;margin:-1px;border:0;padding:0;overflow:hidden}.cdx-label:not(.cdx-label--visually-hidden){padding-bottom:4px}.cdx-radio{position:relative;min-width:20px;min-height:20px}.cdx-radio__wrapper{display:flex}.cdx-radio:not(.cdx-radio--inline){display:flex;flex-direction:column;margin-bottom:6px}.cdx-radio:not(.cdx-radio--inline):last-child{margin-bottom:0}.cdx-radio--inline{display:inline-flex;margin-right:16px;white-space:nowrap}.cdx-radio--inline:last-child{margin-right:0}.cdx-radio__label,.cdx-radio__label.cdx-label{display:inline-flex;position:relative;z-index:0;padding-left:calc(var(--font-size-medium,1rem) + 10px)}.cdx-radio__label.cdx-label{padding-bottom:0}.cdx-radio__label.cdx-label .cdx-label__label__text{font-weight:400}.cdx-radio--inline .cdx-radio__label{display:inline}.cdx-radio__icon{background-color:var(--background-color-base-fixed,#fff);position:absolute;left:0;box-sizing:border-box;min-width:18px;min-height:18px;width:calc(var(--font-size-medium,1rem) + 4px);height:calc(var(--font-size-medium,1rem) + 4px);margin-top:1px;border-width:1px;border-style:solid;transition-property:background-color,color,border-color,box-shadow;transition-duration:.1s}.cdx-radio__input{opacity:0;position:absolute;left:0;z-index:1;min-width:20px;min-height:20px;width:calc(var(--font-size-medium,1rem) + 4px);height:calc(var(--font-size-medium,1rem) + 4px);margin:1px 0 0;font-size:var(--font-size-medium,1rem);cursor:inherit}.cdx-radio__wrapper:hover\\\\u003E.cdx-radio__input:enabled,.cdx-radio__wrapper:hover\\\\u003E.cdx-radio__input:enabled~.cdx-label .cdx-label__label,.cdx-radio__wrapper:hover\\\\u003E.cdx-radio__input:enabled~.cdx-radio__label:not(.cdx-label){cursor:pointer}.cdx-radio__custom-input:not(.cdx-radio__custom-input--inline){padding-top:6px;padding-left:calc(var(--font-size-medium,1rem) + 10px)}.cdx-radio__icon{border-radius:50%}.cdx-radio__icon:before{content:\\\\\\\" \\\\\\\";position:absolute;top:-.25rem;right:-.25rem;bottom:-.25rem;left:-.25rem;border:1px solid var(--border-color-transparent,transparent);border-radius:50%}.cdx-radio__input:enabled+.cdx-radio__icon{background-color:var(--background-color-base,#fff);border-color:var(--border-color-interactive,#72777d)}.cdx-radio__input:enabled:hover+.cdx-radio__icon{background-color:var(--background-color-interactive-subtle--hover,#eaecf0);border-color:var(--border-color-interactive--hover,#27292d)}.cdx-radio__input:enabled:active+.cdx-radio__icon{background-color:var(--background-color-interactive-subtle--active,#dadde3);border-color:var(--border-color-interactive--active,#202122)}.cdx-radio__input:enabled:focus:not(:active)+.cdx-radio__icon{border-color:var(--border-color-progressive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-progressive--focus,#36c)}.cdx-radio__input:enabled:checked+.cdx-radio__icon{background-color:var(--background-color-base-fixed,#fff);border-width:6px;border-color:var(--background-color-progressive,#36c)}.cdx-radio__input:enabled:checked:hover+.cdx-radio__icon{border-color:var(--background-color-progressive--hover,#3056a9)}.cdx-radio__input:enabled:checked:focus+.cdx-radio__icon:before{border-color:var(--border-color-inverted,#fff)}.cdx-radio__input:enabled:checked:active+.cdx-radio__icon{background-color:var(--background-color-base-fixed,#fff);border-color:var(--background-color-progressive--active,#233566)}.cdx-radio__input:enabled:checked:active+.cdx-radio__icon:before{border-color:var(--background-color-progressive--active,#233566)}.cdx-radio--status-error .cdx-radio__input:enabled~.cdx-radio__label{color:var(--color-error,#bf3c2c)}.cdx-radio--status-error .cdx-radio__input:enabled+.cdx-radio__icon{background-color:var(--background-color-error-subtle,#ffe9e5);border-color:var(--border-color-error,#f54739)}.cdx-radio--status-error .cdx-radio__input:enabled:hover+.cdx-radio__icon{background-color:var(--background-color-error-subtle--hover,#ffdad3);border-color:var(--border-color-error--hover,#9f3526)}.cdx-radio--status-error .cdx-radio__input:enabled:focus+.cdx-radio__icon{border-color:var(--border-color-progressive--focus,#36c)}.cdx-radio--status-error .cdx-radio__input:enabled:active+.cdx-radio__icon{background-color:var(--background-color-error-subtle--active,#ffc8bd);border-color:var(--border-color-error--active,#612419);box-shadow:none}.cdx-radio--status-error .cdx-radio__input:enabled:checked+.cdx-radio__icon{background-color:var(--background-color-base-fixed,#fff);border-color:var(--background-color-error,#f54739)}.cdx-radio--status-error .cdx-radio__input:enabled:checked:hover+.cdx-radio__icon{border-color:var(--background-color-error--hover,#d74032)}.cdx-radio--status-error .cdx-radio__input:enabled:checked:focus:not(.cdx-radio--status-error .cdx-radio__input:enabled:checked:active)+.cdx-radio__icon{border-width:1px}.cdx-radio--status-error .cdx-radio__input:enabled:checked:focus:not(.cdx-radio--status-error .cdx-radio__input:enabled:checked:active)+.cdx-radio__icon:before{top:2px;right:2px;bottom:2px;left:2px;border-width:4px;border-color:var(--border-color-error,#f54739)}.cdx-radio--status-error .cdx-radio__input:enabled:checked:active+.cdx-radio__icon{border-color:var(--background-color-error--active,#bf3c2c);box-shadow:none}.cdx-radio--status-error .cdx-radio__input:enabled:checked:active+.cdx-radio__icon:before{border-color:var(--border-color-transparent,transparent)}.cdx-radio__input:disabled~.cdx-radio__label,.cdx-radio__input:disabled~.cdx-radio__label.cdx-label{color:var(--color-disabled,#a2a9b1)}.cdx-radio__input:disabled+.cdx-radio__icon{background-color:var(--background-color-disabled-subtle,#eaecf0);border-color:var(--border-color-disabled,#c8ccd1)}.cdx-radio__input:disabled:checked+.cdx-radio__icon{background-color:var(--color-disabled-emphasized,#a2a9b1);border-width:6px;border-color:var(--background-color-disabled,#dadde3)}.uls-dialog-sticky .uls-menu{position:fixed}.uls-dialog-sticky.uls-dialog-sticky-hide .uls-menu{ display:none !important}\\\"]},{\\\"ext-uls-compact-link-count\\\":\\\"{{PLURAL:$1|One more|$1 more}}\\\",\\\"ext-uls-compact-link-info\\\":\\\"All languages (initial selection from common choices by you and others)\\\",\\\"ext-uls-compact-no-results\\\":\\\"This page is not available in the language you searched for.\\\"}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.uls.compactlinks&skin=vector-2022&version=1gkzk\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.uls.compactlinks&skin=vector-2022&sourcemap=1&version=1gkzk\",\"ext.visualEditor.desktopArticleTarget.init@6rmfu\":\"mw.loader.impl(function(){return[\\\"ext.visualEditor.desktopArticleTarget.init@6rmfu\\\",{\\\"main\\\":\\\"modules/ve-mw/preinit/ve.init.mw.DesktopArticleTarget.init.js\\\",\\\"files\\\":{\\\"modules/ve-mw/preinit/ve.init.mw.DesktopArticleTarget.init.js\\\":function(require,module,exports){(function(){const configData=require('./data.json'),veactionToMode={edit:'visual',editsource:'source'};let init=null,conf=null,tabMessages=null,pageExists=null,viewUrl=null,veEditUrl=null,tabPreference=null;let veEditSourceUrl,targetPromise,currentUrl,initialWikitext,oldId,isLoading,tempWikitextEditor,tempWikitextEditorData,$toolbarPlaceholder,$toolbarPlaceholderBar,active=false,targetLoaded=false,plugins=[],welcomeDialogDisabled=false,educationPopupsDisabled=false,$targetContainer=null;if(mw.config.get('wgMFMode')){mw.log.warn('Attempted to load desktop target on mobile.');return;}function showLoading(){if(isLoading){return;}isLoading=true;$('html').addClass('ve-activated ve-loading');if(!init.$loading){init.progressBar=new mw.libs.ve.ProgressBarWidget();init.$loading=$('<div>').addClass('ve-init-mw-desktopArticleTarget-loading-overlay').append(init.progressBar.$element);}$(document).on('keydown',onDocumentKeyDown);$toolbarPlaceholderBar.append(init.$loading);}function incrementLoadingProgress(){\\ninit.progressBar.incrementLoadingProgress();}function clearLoading(){init.progressBar.clearLoading();isLoading=false;$(document).off('keydown',onDocumentKeyDown);$('html').removeClass('ve-loading');if(init.$loading){init.$loading.detach();}if(tempWikitextEditor){teardownTempWikitextEditor();}hideToolbarPlaceholder();}function showToolbarPlaceholder(){if(!$toolbarPlaceholder){$toolbarPlaceholder=$('<div>').addClass('ve-init-mw-desktopArticleTarget-toolbarPlaceholder');$toolbarPlaceholderBar=$('<div>').addClass('ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar');$toolbarPlaceholder.append($toolbarPlaceholderBar);}$targetContainer.prepend($toolbarPlaceholder);setTimeout(()=>{$toolbarPlaceholder.addClass('ve-init-mw-desktopArticleTarget-toolbarPlaceholder-open');});}function hideToolbarPlaceholder(){if($toolbarPlaceholder){$toolbarPlaceholder.detach();$toolbarPlaceholder.removeClass('ve-init-mw-desktopArticleTarget-toolbarPlaceholder-open');}}function setupTempWikitextEditor(data){\\nlet wikitext=data.content;if(wikitext){wikitext+='\\\\n';}tempWikitextEditor=new mw.libs.ve.MWTempWikitextEditorWidget({value:wikitext});tempWikitextEditorData=data;$('.ve-init-mw-desktopArticleTarget-targetContainer #firstHeading').addClass('ve-init-mw-desktopArticleTarget-uneditableContent');$('#mw-content-text').before(tempWikitextEditor.$element).addClass('oo-ui-element-hidden');$('html').addClass('ve-tempSourceEditing').removeClass('ve-loading');tempWikitextEditor.adjustSize().moveCursorToStart();ve.track('editAttemptStep',{action:'ready',mode:'source',platform:'desktop'});mw.libs.ve.tempWikitextEditor=tempWikitextEditor;mw.hook('ve.wikitextInteractive').fire();}function syncTempWikitextEditor(){let wikitext=tempWikitextEditor.getValue();if(wikitext.endsWith('\\\\n')){wikitext=wikitext.slice(0,-1);}if(wikitext!==tempWikitextEditorData.content){tempWikitextEditorData.content=wikitext;tempWikitextEditorData.fromEditedState=true;}tempWikitextEditorData.initialSourceRange=tempWikitextEditor.getRange();\\ntempWikitextEditor.$element.prop('readonly',true);}function teardownTempWikitextEditor(){tempWikitextEditor.$element.remove();mw.libs.ve.tempWikitextEditor=tempWikitextEditor=null;tempWikitextEditorData=null;$('#mw-content-text').removeClass('oo-ui-element-hidden');$('html').removeClass('ve-tempSourceEditing');}function abortLoading(){$('html').removeClass('ve-activated');active=false;updateTabs(false);if($('#ca-view a').length){history.pushState({tag:'visualeditor'},'',$('#ca-view a').attr('href'));}clearLoading();}function onDocumentKeyDown(e){if(e.which===27){abortLoading();e.preventDefault();}}function getSectionFromUrl(url){const section=url.searchParams.get('section');if(section&&/^(new|\\\\d+|T-\\\\d+)$/.test(section)){return section;}return null;}function getTarget(mode,section){if(!targetPromise){mw.libs.ve.targetLoader.addPlugin(()=>mw.loader.using(conf.preloadModules).catch(()=>$.Deferred().resolve()));['ext.visualEditor.desktopArticleTarget',...plugins].forEach(mw.libs.ve.targetLoader.addPlugin);\\nplugins=[];targetPromise=mw.libs.ve.targetLoader.loadModules(mode).then(()=>{if(!active){targetPromise=null;return $.Deferred().reject().promise();}const target=ve.init.mw.targetFactory.create(conf.contentModels[mw.config.get('wgPageContentModel')],{modes:getAvailableModes(),defaultMode:mode});target.on('deactivate',()=>{active=false;updateTabs(false);});target.on('reactivate',()=>{currentUrl=new URL(location.href);activateTarget(getEditModeFromUrl(currentUrl),getSectionFromUrl(currentUrl));});target.setContainer($targetContainer);targetLoaded=true;return target;},(e)=>{mw.log.warn('VisualEditor failed to load: '+e);return $.Deferred().reject(e).promise();});}targetPromise.then((target)=>{target.section=section;});return targetPromise;}function trackActivateStart(initData,url=currentUrl){if(url.searchParams.get('wvprov')==='sticky-header'){initData.mechanism+='-sticky-header';}ve.track('trace.activate.enter',{mode:initData.mode});initData.action='init';initData.integration='page';ve.track('editAttemptStep',initData);\\nmw.libs.ve.activationStart=ve.now();}function getTabMessage(tabMsg){let tabMsgKey=tabMessages[tabMsg];const skinMsgKeys={edit:'edit',create:'create',editlocaldescription:'edit-local',createlocaldescription:'create-local'};const key=skinMsgKeys[tabMsg];if(!tabMsgKey&&key){tabMsgKey=mw.config.get('skin')+'-view-'+key;if(!mw.message(tabMsgKey).exists()){tabMsgKey='skin-view-'+key;}}const msg=mw.message(tabMsgKey);if(!msg.isParseable()){mw.log.warn('VisualEditor: MediaWiki:'+tabMsgKey+' contains unsupported syntax. '+'https://www.mediawiki.org/wiki/Manual:Messages_API#Feature_support_in_JavaScript');return undefined;}return msg.text();}function setEditorPreference(editor){if(!init.isVisualAvailable()){return $.Deferred().resolve().promise();}if(editor!=='visualeditor'&&editor!=='wikitext'){throw new Error('setEditorPreference called with invalid option: ',editor);}let key=pageExists?'edit':'create',sectionKey='editsection';if(mw.config.get('wgVisualEditorConfig').useSingleEditTab&&\\ntabPreference==='remember-last'){if($('#ca-view-foreign').length){key+='localdescription';}if(editor==='wikitext'){key+='source';sectionKey+='source';}const fallbackSelector=function(selector,fallback){const $result=$(selector);return $result.length>0?$result:$(fallback);};fallbackSelector('#ca-edit a span','#ca-edit a').text(getTabMessage(key));fallbackSelector('.mw-editsection a span','.mw-editsection a').text(getTabMessage(sectionKey));}mw.cookie.set('VEE',editor,{path:'/',expires:30*86400,prefix:''});if(mw.user.isNamed()&&mw.user.options.get('visualeditor-editor')!==editor){return new mw.Api().saveOption('visualeditor-editor',editor).then(()=>{mw.user.options.set('visualeditor-editor',editor);});}return $.Deferred().resolve().promise();}function updateTabs(editing,mode,isNewSection){let $tab;if(editing){if(isNewSection){$tab=$('#ca-addsection');}else if($('#ca-ve-edit').length){if(!mode||mode==='visual'){$tab=$('#ca-ve-edit');}else{$tab=$('#ca-edit');}}else{$tab=$('#ca-edit');}}else{\\n$tab=$('#ca-view');}$('#p-views').find('li.selected').removeClass('selected');$('#ca-edit, #ca-ve-edit, #ca-addsection').not($tab).removeClass('selected');$tab.addClass('selected');}function scrollToSection(section){if(section==='0'||section==='new'){return;}let $heading;$('#mw-content-text .mw-editsection a:not( .mw-editsection-visualeditor )').each((i,el)=>{const linkUrl=new URL(el.href);if(section===getSectionFromUrl(linkUrl)){$heading=$(el).closest('.mw-heading');return false;}});if(!$heading||!$heading.length){return;}let offset=0;const enableVisualSectionEditing=mw.config.get('wgVisualEditorConfig').enableVisualSectionEditing;if(enableVisualSectionEditing===true||enableVisualSectionEditing==='desktop'){offset=$('#mw-content-text').offset().top;}else{offset=parseInt($heading.css('margin-top'))+$toolbarPlaceholder.outerHeight();}mw.libs.ve.smoothScrollTo($heading.offset().top-offset);}function activateTarget(mode,section,tPromise,modified){let dataPromise;updateTabs(true,mode,section==='new');\\nif(!targetLoaded){dataPromise=mw.libs.ve.targetLoader.requestPageData(mode,mw.config.get('wgRelevantPageName'),{sessionStore:true,section,oldId,targetName:'mwTarget',modified,editintro:currentUrl.searchParams.get('editintro'),preload:currentUrl.searchParams.get('preload'),preloadparams:mw.util.getArrayParam('preloadparams',currentUrl.searchParams),wikitext:mode==='visual'&&modified?$('#wpTextbox1').textSelection('getContents'):undefined});dataPromise.then((response)=>{if(isLoading&&mode==='source'&&section!=='new'&&!(response.visualeditor&&response.visualeditor.recovered)){setupTempWikitextEditor(response.visualeditor);}}).then(incrementLoadingProgress);}showToolbarPlaceholder();mw.hook('ve.activationStart').fire();let visibleSection=null;let visibleSectionOffset=null;if(section===null){let firstVisibleEditSection=null;$('#firstHeading, #mw-content-text .mw-editsection').each((i,el)=>{const top=el.getBoundingClientRect().top;if(top>0){firstVisibleEditSection=el;return false;}});if(firstVisibleEditSection&&firstVisibleEditSection.id!=='firstHeading'){\\nconst firstVisibleSectionLink=firstVisibleEditSection.querySelector('a');const linkUrl=new URL(firstVisibleSectionLink.href);visibleSection=getSectionFromUrl(linkUrl);const firstVisibleHeading=$(firstVisibleEditSection).closest('.mw-heading')[0];visibleSectionOffset=firstVisibleHeading.getBoundingClientRect().top;}}else if(mode==='visual'){scrollToSection(section);}showLoading(mode);incrementLoadingProgress();active=true;tPromise=tPromise||getTarget(mode,section);tPromise.then((target)=>{target.visibleSection=visibleSection;target.visibleSectionOffset=visibleSectionOffset;incrementLoadingProgress();target.setDefaultMode(mode);if(tempWikitextEditor){syncTempWikitextEditor();}const deactivating=target.deactivatingDeferred||$.Deferred().resolve();return deactivating.then(()=>{target.currentUrl=new URL(location.href);const activatePromise=target.activate(dataPromise);target.toolbarSetupDeferred.then(()=>{hideToolbarPlaceholder();});return activatePromise;});}).then(()=>{if(mode==='visual'){\\nve.track('editAttemptStep',{action:'ready',mode});}else if(!tempWikitextEditor){ve.track('editAttemptStep',{action:'ready',mode});mw.hook('ve.wikitextInteractive').fire();}ve.track('editAttemptStep',{action:'loaded',mode});}).always(clearLoading);}function activatePageTarget(mode,section,modified,linkUrl){trackActivateStart({type:'page',mechanism:mw.config.get('wgArticleId')?'click':'new',mode},linkUrl);if(!active){history.replaceState({tag:'visualeditor'},'',currentUrl);history.pushState({tag:'visualeditor'},'',linkUrl||(mode==='source'?veEditSourceUrl:veEditUrl));currentUrl=linkUrl||veEditUrl;activateTarget(mode,section,undefined,modified);}}function getLastEditor(){let editor=mw.cookie.get('VEE','');if(mw.user.isNamed()||!editor||!(editor==='visualeditor'||editor==='wikitext')){editor=mw.user.options.get('visualeditor-editor');}return editor;}function getEditPageEditor(){const isRedLink=!!+currentUrl.searchParams.get('redlink');if(!mw.config.get('wgVisualEditorConfig').useSingleEditTab&&!isRedLink){\\nreturn'wikitext';}if(currentUrl.searchParams.get('section')==='new'){return'wikitext';}if(currentUrl.searchParams.has('veswitched')){return'wikitext';}switch(tabPreference){case'prefer-ve':return'visualeditor';case'prefer-wt':return'wikitext';case'multi-tab':return isRedLink?getLastEditor():'wikitext';case'remember-last':default:return getLastEditor();}}function getAvailableEditPageEditor(){switch(getEditPageEditor()){case'visualeditor':if(init.isVisualAvailable()){return'visual';}if(init.isWikitextAvailable()){return'source';}return null;case'wikitext':default:return init.isWikitextAvailable()?'source':null;}}function checkPreferenceOrStorage(prefName,storageKey,cookieName){storageKey=storageKey||prefName;cookieName=cookieName||storageKey;return!!(mw.user.options.get(prefName)||(!mw.user.isNamed()&&(mw.storage.get(storageKey)||mw.cookie.get(cookieName,''))));}function setPreferenceOrStorage(prefName,storageKey,cookieName){storageKey=storageKey||prefName;cookieName=cookieName||storageKey;\\nif(!mw.user.isNamed()){if(!mw.storage.set(storageKey,1)){mw.cookie.set(cookieName,1,{path:'/',expires:30*86400,prefix:''});}}else{new mw.Api().saveOption(prefName,'1');mw.user.options.set(prefName,'1');}}conf=mw.config.get('wgVisualEditorConfig');tabMessages=conf.tabMessages;viewUrl=new URL(mw.util.getUrl(mw.config.get('wgRelevantPageName')),location.href);currentUrl=new URL(location.href);oldId=mw.config.get('wgRevisionId')||$('input[name=parentRevId]').val();if(oldId===mw.config.get('wgCurRevisionId')||mw.config.get('wgEditLatestRevision')){oldId=undefined;}pageExists=!!mw.config.get('wgRelevantArticleId');const isViewPage=mw.config.get('wgIsArticle')&&!currentUrl.searchParams.has('diff');const wgAction=mw.config.get('wgAction');const isEditPage=wgAction==='edit'||wgAction==='submit';const pageCanLoadEditor=isViewPage||isEditPage;const pageIsProbablyEditable=mw.config.get('wgIsProbablyEditable')||mw.config.get('wgRelevantPageIsProbablyEditable');const enable=!!+mw.user.options.get('visualeditor-enable');\\nconst tempdisable=!!+mw.user.options.get('visualeditor-betatempdisable');const autodisable=!!+mw.user.options.get('visualeditor-autodisable');tabPreference=mw.user.options.get('visualeditor-tabs');function isOnlyTabVE(){const visibleModes=getVisibleModes();return visibleModes.length===1&&visibleModes[0]==='visual';}function isOnlyTabWikitext(){const visibleModes=getVisibleModes();return visibleModes.length===1&&visibleModes[0]==='source';}init={addPlugin:function(plugin){plugins.push(plugin);},setupEditLinks:function(){if(init.isWikitextAvailable()&&!isOnlyTabVE()){$('.mw-editsection a:not( .mw-editsection-visualeditor ),'+'#ca-edit a,'+'#ca-addsection a').each((i,el)=>{if(!el.href){return;}const linkUrl=new URL(el.href);if(linkUrl.searchParams.has('action')){linkUrl.searchParams.delete('action');linkUrl.searchParams.set('veaction','editsource');$(el).attr('href',linkUrl.toString());}});}if(init.isAvailable){if(!init.isSingleEditTab&&init.isVisualAvailable()&&!(conf.disableForAnons&&mw.user.isAnon())\\n){init.setupMultiTabSkin();}else if(pageCanLoadEditor&&((init.isVisualAvailable()&&isOnlyTabVE())||(init.isWikitextAvailable()&&isOnlyTabWikitext()))){$('.mw-editsection a').off('.ve-target').on('click.ve-target',(e)=>{init.onEditSectionLinkClick(isOnlyTabVE()?'visual':'source',e);});$('#ca-edit').off('.ve-target').on('click.ve-target',(e)=>{init.onEditTabClick(isOnlyTabVE()?'visual':'source',e);});}if(!mw.user.isAnon()&&pageCanLoadEditor&&init.isVisualAvailable()&&(!init.isSingleEditTab||isOnlyTabVE())){$('#catlinks').prepend($('<span>').addClass('ve-init-mw-desktopArticleTarget-categoryEdit mw-editsection-like').on('click',init.onCategoryEditLinkClick).append($('<span>').addClass('mw-editsection-bracket').text('['),$('<a>').text(mw.msg('editsection')),$('<span>').addClass('mw-editsection-bracket').text(']')));}}},setupMultiTabSkin:function(){init.setupMultiTabs();init.setupMultiSectionLinks();},setupMultiTabs:function(){const $caEdit=$('#ca-edit');const $caVeEdit=$('#ca-ve-edit');if(pageCanLoadEditor){\\n$caVeEdit.off('.ve-target').on('click.ve-target',init.onEditTabClick.bind(init,'visual'));}if(pageCanLoadEditor){$caEdit.off('.ve-target').on('click.ve-target',init.onEditTabClick.bind(init,'source'));}if(pageCanLoadEditor&&init.isWikitextAvailable()){$('#ca-addsection').off('.ve-target').on('click.ve-target',init.onEditTabClick.bind(init,'source'));}if(init.isVisualAvailable()){if(conf.tabPosition==='before'){$caEdit.addClass('collapsible');}else{$caVeEdit.addClass('collapsible');}}},setupMultiSectionLinks:function(){if(pageCanLoadEditor){const $editsections=$('#mw-content-text .mw-editsection');$editsections.find('.mw-editsection-visualeditor').off('.ve-target').on('click.ve-target',init.onEditSectionLinkClick.bind(init,'visual'));if(init.isWikitextAvailable()){$editsections.find('a:not( .mw-editsection-visualeditor )').off('.ve-target').on('click.ve-target',init.onEditSectionLinkClick.bind(init,'source'));}}},isUnmodifiedLeftClick:function(e){return e&&((e.which&&e.which===1&&!(e.shiftKey||e.altKey||e.ctrlKey||e.metaKey)\\n)||e.isTrigger);},onEditTabClick:function(mode,e){if(!init.isUnmodifiedLeftClick(e)){return;}if(!active&&mode==='source'&&!init.isWikitextAvailable()){return;}e.preventDefault();if(isLoading){return;}const section=$(e.target).closest('#ca-addsection').length?'new':null;if(active){targetPromise.then((target)=>{if(target.getDefaultMode()==='source'){if(mode==='visual'){target.switchToVisualEditor();}else if(mode==='source'){target.switchToWikitextSection(section);}}else if(target.getDefaultMode()==='visual'){if(mode==='source'){if(section){target.switchToWikitextSection(section);}else{target.editSource();}}}});}else{const link=$(e.target).closest('a')[0];const linkUrl=link&&link.href?new URL(link.href):undefined;if(section!==null){init.activateVe(mode,linkUrl,section);}else{init.activateVe(mode,linkUrl);}}},activateVe:function(mode,linkUrl,section){const wikitext=$('#wpTextbox1').textSelection('getContents'),modified=mw.config.get('wgAction')==='submit'||(mw.config.get('wgAction')==='edit'&&\\nwikitext!==initialWikitext);if(section===undefined){const sectionVal=$('input[name=wpSection]').val();section=sectionVal!==''&&sectionVal!==undefined?sectionVal:null;}if($.fn.dialog){$('.ui-dialog-content').dialog('close');}$(window).off('beforeunload.editwarning');activatePageTarget(mode,section,modified,linkUrl);},onEditSectionLinkClick:function(mode,e,section){const link=$(e.target).closest('a')[0];if(!link||!link.href){return;}const linkUrl=new URL(link.href);const title=mw.Title.newFromText(linkUrl.searchParams.get('title')||'');if(!init.isUnmodifiedLeftClick(e)||!(linkUrl.searchParams.has('action')||linkUrl.searchParams.has('veaction'))||linkUrl.host!==location.host||title&&title.getPrefixedText()!==new mw.Title(mw.config.get('wgRelevantPageName')).getPrefixedText()){return;}e.preventDefault();if(isLoading){return;}trackActivateStart({type:'section',mechanism:section==='new'?'new':'click',mode},linkUrl);if(!active){history.replaceState({tag:'visualeditor'},'',currentUrl);history.pushState({tag:'visualeditor'},'',linkUrl);\\ncurrentUrl=linkUrl;if(section===undefined){section=getSectionFromUrl(linkUrl);}const tPromise=getTarget(mode,section);activateTarget(mode,section,tPromise);}},onCategoryEditLinkClick:function(e){if(!init.isUnmodifiedLeftClick(e)){return;}e.preventDefault();if(isLoading){return;}trackActivateStart({type:'page',mechanism:'click',mode:'visual'});if(currentUrl.searchParams.get('action')!=='edit'&&!(currentUrl.searchParams.get('veaction')in veactionToMode)){if(history.pushState){history.replaceState({tag:'visualeditor'},document.title,currentUrl);history.pushState({tag:'visualeditor'},document.title,veEditUrl);}currentUrl=veEditUrl;}init.disableWelcomeDialog();activateTarget('visual',null,getTarget('visual',null).then((target)=>{target.once('surfaceReady',()=>{const windowAction=ve.ui.actionFactory.create('window',target.getSurface());windowAction.open('meta',{page:'categories'});});return target;}));},shouldShowWelcomeDialog:function(){return!(!mw.config.get('wgVisualEditorConfig').showBetaWelcome||\\nthis.isWelcomeDialogSuppressed()||currentUrl.searchParams.has('collabSession')||checkPreferenceOrStorage('visualeditor-hidebetawelcome','ve-beta-welcome-dialog'));},isWelcomeDialogSuppressed:function(){return!!(welcomeDialogDisabled||new URL(location.href).searchParams.has('vehidebetadialog')||new URL(location.href).searchParams.has('hidewelcomedialog'));},stopShowingWelcomeDialog:function(){setPreferenceOrStorage('visualeditor-hidebetawelcome','ve-beta-welcome-dialog');},disableWelcomeDialog:function(){welcomeDialogDisabled=true;},shouldShowEducationPopups:function(){return!(educationPopupsDisabled||checkPreferenceOrStorage('visualeditor-hideusered','ve-hideusered'));},stopShowingEducationPopups:function(){setPreferenceOrStorage('visualeditor-hideusered','ve-hideusered');},disableEducationPopups:function(){educationPopupsDisabled=true;}};function isSupportedEditPage(url){return configData.unsupportedEditParams.every((param)=>!url.searchParams.has(param));}init.isSingleEditTab=conf.useSingleEditTab&&tabPreference!=='multi-tab';\\nveEditUrl=new URL(pageCanLoadEditor?currentUrl:viewUrl);if(oldId){veEditUrl.searchParams.set('oldid',oldId);}veEditUrl.searchParams.delete('veaction');veEditUrl.searchParams.delete('action');if(init.isSingleEditTab){veEditUrl.searchParams.set('action','edit');veEditSourceUrl=veEditUrl;}else{veEditSourceUrl=new URL(veEditUrl);veEditUrl.searchParams.set('veaction','edit');veEditSourceUrl.searchParams.set('veaction','editsource');}init.isAvailable=VisualEditorSupportCheck();const enabledForUser=((conf.enableBetaFeature?enable:!tempdisable)&&!autodisable);init.isVisualAvailable=(url=currentUrl)=>(init.isAvailable&&(url.searchParams.get('veaction')==='edit'||(conf.namespaces.includes(new mw.Title(mw.config.get('wgRelevantPageName')).getNamespaceId())&&enabledForUser))&&isSupportedEditPage(url)&&Object.prototype.hasOwnProperty.call(conf.contentModels,mw.config.get('wgPageContentModel'))&&getSectionFromUrl(url)!=='new');init.isWikitextAvailable=(url=currentUrl)=>(init.isAvailable&&(url.searchParams.get('veaction')==='editsource'||(\\nconf.enableWikitext&&mw.user.options.get('visualeditor-newwikitext')))&&mw.config.get('wgPageContentModel')==='wikitext');function getAvailableModes(){const availableModes=[];if(init.isVisualAvailable()){availableModes.push('visual');}if(init.isWikitextAvailable()){availableModes.push('source');}return availableModes;}function getVisibleModes(){if(init.isSingleEditTab){const preferredEditor=getAvailableEditPageEditor();return preferredEditor?[preferredEditor]:[];}else{return getAvailableModes();}}init.setEditorPreference=setEditorPreference;init.updateTabs=updateTabs;mw.libs.ve=$.extend(mw.libs.ve||{},init);if(init.isVisualAvailable()){$('html').addClass('ve-available');}else{$('html').addClass('ve-not-available');}function getEditModeFromUrl(url){if(mw.config.get('wgDiscussionToolsStartNewTopicTool')){return null;}if(isViewPage&&init.isAvailable){const mode=veactionToMode[url.searchParams.get('veaction')]||(url.searchParams.has('collabSession')?'visual':null);if(mode&&getAvailableModes().includes(mode)){\\nreturn mode;}}if(isEditPage&&isSupportedEditPage(url)){if(!enabledForUser||$('#ca-viewsource').length||mw.config.get('wgAction')==='submit'){return null;}return getAvailableEditPageEditor();}return null;}$(()=>{$targetContainer=$(document.querySelector('[data-mw-ve-target-container]')||document.getElementById('content'));if(pageCanLoadEditor){$targetContainer.addClass('ve-init-mw-desktopArticleTarget-targetContainer');}let showWikitextWelcome=true;const numEditButtons=$('#ca-edit, #ca-ve-edit').length,section=getSectionFromUrl(currentUrl);const requiredSkinElements=$targetContainer.length&&$('#mw-content-text').length&&(isEditPage||numEditButtons);if(currentUrl.searchParams.get('action')==='edit'&&$('#wpTextbox1').length){initialWikitext=$('#wpTextbox1').textSelection('getContents');}if((init.isVisualAvailable()||init.isWikitextAvailable())&&pageCanLoadEditor&&pageIsProbablyEditable&&!requiredSkinElements){mw.log.warn('Your skin is incompatible with VisualEditor. '+\\n'See https://www.mediawiki.org/wiki/Extension:VisualEditor/Skin_requirements for the requirements.');if(numEditButtons>0){const err=new Error('Incompatible with VisualEditor');err.name='VeIncompatibleSkinWarning';mw.errorLogger.logError(err,'error.visualeditor');}}else if(init.isAvailable){const mode=getEditModeFromUrl(currentUrl);if(mode){showWikitextWelcome=false;trackActivateStart({type:section===null?'page':'section',mechanism:(section==='new'||!mw.config.get('wgArticleId'))?'url-new':'url',mode});activateTarget(mode,section);}else if(init.isVisualAvailable()&&pageCanLoadEditor&&init.isSingleEditTab){$(document.body).append($('<a>').attr({accesskey:mw.msg('accesskey-ca-ve-edit'),href:veEditUrl}).on('click.ve-target',init.onEditTabClick.bind(init,'visual')).addClass('oo-ui-element-hidden'));}if(init.isVisualAvailable()&&isEditPage&&$('#wpTextbox1').length){mw.loader.load('ext.visualEditor.switching');mw.hook('wikiEditor.toolbarReady').add(($textarea)=>{mw.loader.using('ext.visualEditor.switching').then(()=>{\\nconst showPopup=currentUrl.searchParams.has('veswitched')&&!mw.user.options.get('visualeditor-hidesourceswitchpopup'),toolFactory=new OO.ui.ToolFactory(),toolGroupFactory=new OO.ui.ToolGroupFactory();toolFactory.register(mw.libs.ve.MWEditModeVisualTool);toolFactory.register(mw.libs.ve.MWEditModeSourceTool);const switchToolbar=new OO.ui.Toolbar(toolFactory,toolGroupFactory,{classes:['ve-init-mw-editSwitch']});switchToolbar.on('switchEditor',(m)=>{if(m==='visual'){$('#wpTextbox1').trigger('wikiEditor-switching-visualeditor');init.activateVe('visual');}});switchToolbar.setup([{name:'editMode',type:'list',icon:'edit',title:mw.msg('visualeditor-mweditmode-tooltip'),label:mw.msg('visualeditor-mweditmode-tooltip'),invisibleLabel:true,include:['editModeVisual','editModeSource']}]);const popup=new mw.libs.ve.SwitchPopupWidget('source');switchToolbar.tools.editModeVisual.toolGroup.$element.append(popup.$element);switchToolbar.emit('updateState');$textarea.wikiEditor('addToToolbar',{section:'secondary',\\ngroup:'default',tools:{veEditSwitch:{type:'element',element:switchToolbar.$element}}});popup.toggle(showPopup);if($('#ca-edit').hasClass('visualeditor-showtabdialog')){$('#ca-edit').removeClass('visualeditor-showtabdialog');const windowManager=new OO.ui.WindowManager();$(OO.ui.getTeleportTarget()).append(windowManager.$element);const editingTabDialog=new mw.libs.ve.EditingTabDialog();windowManager.addWindows([editingTabDialog]);windowManager.openWindow(editingTabDialog).closed.then((data)=>{windowManager.destroy();if(data&&data.action==='prefer-ve'){location.href=veEditUrl;}else if(data&&data.action==='multi-tab'){location.reload();}});}});});mw.libs.ve.setEditorPreference('wikitext');mw.storage.session.remove('ve-docstate');}init.setupEditLinks();}if(pageCanLoadEditor&&showWikitextWelcome&&(init.isVisualAvailable()||init.isWikitextAvailable()||$('#wpTextbox1').length)&&isEditPage&&init.shouldShowWelcomeDialog()&&pageIsProbablyEditable){mw.loader.using('ext.visualEditor.welcome').then(()=>{\\nif(!init.shouldShowWelcomeDialog()){return;}const windowManager=new OO.ui.WindowManager();const welcomeDialog=new mw.libs.ve.WelcomeDialog();$(OO.ui.getTeleportTarget()).append(windowManager.$element);windowManager.addWindows([welcomeDialog]);windowManager.openWindow(welcomeDialog,{switchable:init.isVisualAvailable(),editor:'source'}).closed.then((data)=>{windowManager.destroy();if(data&&data.action==='switch-ve'){init.activateVe('visual');}});init.stopShowingWelcomeDialog();});}if(currentUrl.searchParams.has('venotify')){currentUrl.searchParams.delete('venotify');history.replaceState(null,'',currentUrl);}});}());\\n},\\\"modules/ve-mw/preinit/data.json\\\":{\\\"unsupportedEditParams\\\":[\\\"undo\\\",\\\"undoafter\\\",\\\"preview\\\"]}}},{\\\"css\\\":[\\\".ve-active .ve-init-mw-desktopArticleTarget-targetContainer #siteNotice,.ve-active .mw-indicators,.ve-active #t-print,.ve-active #t-permalink,.ve-active #p-coll-print_export,.ve-active #t-cite,.ve-active .ve-init-mw-desktopArticleTarget-editableContent,.ve-active .ve-init-mw-tempWikitextEditorWidget{display:none}.ve-deactivating .ve-ui-surface{display:none}.ve-activating{ }.ve-activating .ve-ui-surface{height:0;padding:0 !important; overflow:hidden} .ve-loading .ve-init-mw-desktopArticleTarget-targetContainer \\\\u003E :not(.ve-init-mw-desktopArticleTarget-toolbarPlaceholder):not(.ve-init-mw-desktopArticleTarget),.ve-loading .ve-init-mw-desktopArticleTarget-originalContent,.ve-activated:not(.ve-loading) .ve-init-mw-desktopArticleTarget-uneditableContent{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:0.5}.ve-activated .ve-init-mw-desktopArticleTarget-targetContainer #firstHeading{ -webkit-user-select:text;-moz-user-select:text;user-select:text;pointer-events:auto;cursor:text}.ve-activated .ve-init-mw-desktopArticleTarget-targetContainer #firstHeading a{ pointer-events:none}.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks{cursor:pointer}.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover{ background:rgba(109,169,247,0.15)}.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks a{opacity:1} .ve-init-mw-desktopArticleTarget-loading-overlay{z-index:2;position:absolute;width:100%;top:1em}.ve-init-mw-desktopArticleTarget-toolbarPlaceholder{-webkit-position:sticky;position:sticky;top:0;z-index:2;overflow:hidden;transition:height 250ms ease;height:0;padding-bottom:2px; }.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar{background:var(--background-color-base,#fff);transform:translateY(-100%);transition:transform 250ms ease}.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-open .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar{transform:translateY(0)} .oo-ui-element-hidden{display:none !important; } .ve-init-mw-desktopArticleTarget-categoryEdit{float:right;margin-top:1ex} .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar{height:42px;border-bottom:1px solid #c8ccd1;box-shadow:0 1px 1px 0 rgba(0,0,0,0.1)}.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-open{height:42px} .ve-activated .vector-toc,.ve-activated .vector-page-titlebar-toc{display:none}.ve-init-mw-desktopArticleTarget-toolbar,.ve-init-mw-desktopArticleTarget-toolbarPlaceholder,.ve-ui-overlay-local,.ve-ui-overlay-global,.ve-ui-sidebarDialogWindowManager,.ve-ce-surface-interface{font-size:0.875rem}.ve-ce-surface-interface{font-family:sans-serif}.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar,.ve-init-mw-desktopArticleTarget-toolbar.ve-ui-toolbar \\\\u003E .oo-ui-toolbar-bar{box-shadow:0 2px 1px -1px rgba(0,0,0,0.1)}.ve-ui-mwSaveDialog-preview .mw-body{ }.ve-ui-mwSaveDialog-preview .mw-body .firstHeading{grid-area:titlebar}.ve-ui-mwSaveDialog-preview .mw-body .mw-body-content{grid-area:content;font-size:var(--font-size-medium);line-height:var(--line-height-content)}.ve-ui-mwSaveDialog-preview .mw-content-container{max-width:960px;margin:0 auto}.ve-init-mw-desktopArticleTarget .ve-init-mw-target-surface \\\\u003E .ve-ce-surface .ve-ce-attachedRootNode{min-height:15em}.ve-init-mw-desktopArticleTarget-toolbar .ve-ui-toolbarDialog-position-above.ve-ui-toolbarDialog-padded .oo-ui-window-body,.ve-init-mw-desktopArticleTarget-toolbar .ve-ui-toolbarDialog-position-below.ve-ui-toolbarDialog-padded .oo-ui-window-body{padding-left:0;padding-right:0}.ve-init-mw-desktopArticleTarget-toolbar .ve-ui-toolbarDialog-position-side.ve-ui-toolbarDialog-padded .oo-ui-window-body{padding-right:0}\\\"]},{\\\"accesskey-ca-ve-edit\\\":\\\"v\\\",\\\"editsection\\\":\\\"edit\\\",\\\"visualeditor-mweditmode-tooltip\\\":\\\"Switch editor\\\",\\\"visualeditor-ca-editsource\\\":\\\"Edit source\\\",\\\"visualeditor-ca-createsource\\\":\\\"Create source\\\",\\\"visualeditor-ca-editlocaldescriptionsource\\\":\\\"Edit local description source\\\",\\\"visualeditor-ca-createlocaldescriptionsource\\\":\\\"Add local description source\\\",\\\"editsectionhint\\\":\\\"Edit section: $1\\\",\\\"visualeditor-ca-editsource-section\\\":\\\"edit source\\\",\\\"visualeditor-ca-editsource-section-hint\\\":\\\"Edit section's source code: $1\\\",\\\"skin-view-edit\\\":\\\"Edit\\\",\\\"vector-view-edit\\\":\\\"Edit\\\",\\\"skin-view-create\\\":\\\"Create\\\",\\\"vector-view-create\\\":\\\"Create\\\",\\\"skin-view-edit-local\\\":\\\"Edit local description\\\",\\\"skin-view-create-local\\\":\\\"Add local description\\\"}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.desktopArticleTarget.init&skin=vector-2022&version=q2ehr\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.desktopArticleTarget.init&skin=vector-2022&sourcemap=1&version=q2ehr\",\"mediawiki.tempUserCreated@117j0\":\"mw.loader.impl(function(){return[\\\"mediawiki.tempUserCreated@117j0\\\",{\\\"main\\\":\\\"mediawiki.tempUserCreated.js\\\",\\\"files\\\":{\\\"mediawiki.tempUserCreated.js\\\":function(require,module,exports){(function(){'use strict';const contLangMessages=require('./contLangMessages.json');mw.tempUserCreated={};mw.tempUserCreated.showPopup=function(){const title=mw.message('postedit-temp-created-label').text();const $content=mw.message('postedit-temp-created',mw.util.getUrl('Special:CreateAccount'),contLangMessages['tempuser-helppage']).parseDom();mw.notify($content,{title:title,classes:['postedit-tempuserpopup'],autoHide:true,autoHideSeconds:'long'});};}());\\n},\\\"contLangMessages.json\\\":{\\\"tempuser-helppage\\\":\\\"mw:Special:MyLanguage/Help:Temporary_accounts\\\"}}}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.tempUserCreated&skin=vector-2022&version=1oe2q\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.tempUserCreated&skin=vector-2022&sourcemap=1&version=1oe2q\",\"mediawiki.notification@m2pxb\":\"mw.loader.impl(function(){return[\\\"mediawiki.notification@m2pxb\\\",function($,jQuery,require,module){(function(){'use strict';let notification=null,$area,openNotificationCount=0,isPageReady=false;const preReadyNotifQueue=[];function announceToAriaLive($notificationContent,options){const ariaLiveRegion=document.getElementById('mw-aria-live-region');if(!ariaLiveRegion){return;}let announcementText;if(options.ariaText){announcementText=options.ariaText;}else{if($notificationContent[0].classList.contains('mw-notification-complex-content')){return;}announcementText=$notificationContent[0].textContent.trim();}if(!announcementText){return;}if(options.type==='error'){ariaLiveRegion.setAttribute('aria-live','assertive');}ariaLiveRegion.textContent='';ariaLiveRegion.textContent=announcementText;if(options.type==='error'){ariaLiveRegion.setAttribute('aria-live','polite');}}function Notification(message,options){const $notification=$('<div>').data('mw-notification',this).addClass(['mw-notification',options.autoHide?'mw-notification-autohide':'mw-notification-noautohide']);if(options.tag){options.tag=options.tag.replace(/[ _-]+/g,'-').replace(/[^-a-z0-9]+/ig,'');\\nif(options.tag){$notification.addClass('mw-notification-tag-'+options.tag);}else{delete options.tag;}}if(options.type){options.type=options.type.replace(/[ _-]+/g,'-').replace(/[^-a-z0-9]+/ig,'');$notification.addClass('mw-notification-type-'+options.type);}if(options.title){$('<div>').addClass('mw-notification-title').text(options.title).appendTo($notification);}if(options.id){$notification.attr('id',options.id);}if(options.classes){$notification.addClass(options.classes);}const $notificationContent=$('<div>').addClass('mw-notification-content');if(typeof message==='object'){if(message instanceof mw.Message){$notificationContent.append(message.parseDom());}else{$notificationContent.append(message);$notificationContent.addClass('mw-notification-complex-content');}}else{$notificationContent.text(message);}$notificationContent.appendTo($notification);this.autoHideSeconds=options.autoHideSeconds&&notification.autoHideSeconds[options.autoHideSeconds]||notification.autoHideSeconds.short;\\nthis.isOpen=false;this.isPaused=true;this.message=message;this.options=options;this.$notification=$notification;if(options.visibleTimeout){this.timeout=require('mediawiki.visibleTimeout');}else{this.timeout={set:setTimeout,clear:clearTimeout};}}Notification.prototype.start=function(){$area.css('display','');if(this.isOpen){return;}this.isOpen=true;openNotificationCount++;announceToAriaLive(this.$notification.find('.mw-notification-content'),this.options);const options=this.options;const $notification=this.$notification;let $tagMatches;if(options.tag){$tagMatches=$area.find('.mw-notification-tag-'+options.tag);}if(options.tag&&$tagMatches.length){$tagMatches.each(function(){const notif=$(this).data('mw-notification');if(notif&&notif.isOpen){notif.$notification.css({position:'absolute',width:notif.$notification.width()}).css(notif.$notification.position()).addClass('mw-notification-replaced');notif.close();}});$notification.insertBefore($tagMatches.first()).addClass('mw-notification-visible');\\n}else{$area.append($notification);requestAnimationFrame(()=>{requestAnimationFrame(()=>{$notification.addClass('mw-notification-visible');});});}const autohideCount=$area.find('.mw-notification-autohide').length;if(autohideCount<=notification.autoHideLimit){this.resume();}};Notification.prototype.pause=function(){if(this.isPaused){return;}this.isPaused=true;if(this.timeoutId){this.timeout.clear(this.timeoutId);delete this.timeoutId;}};Notification.prototype.resume=function(){if(!this.isPaused){return;}if(this.options.autoHide){this.isPaused=false;this.timeoutId=this.timeout.set(()=>{delete this.timeoutId;this.close();},this.autoHideSeconds*1000);}};Notification.prototype.close=function(){if(!this.isOpen){return;}this.isOpen=false;openNotificationCount--;this.pause();this.$notification.removeClass('mw-notification-autohide');notification.resume();requestAnimationFrame(()=>{this.$notification.removeClass('mw-notification-visible');setTimeout(()=>{if(openNotificationCount===0){$area.css('display','none');\\nthis.$notification.remove();}else{this.$notification.slideUp('fast',function(){$(this).remove();});}},500);});};function callEachNotification($notifications,fn){$notifications.each(function(){const notif=$(this).data('mw-notification');if(notif){notif[fn]();}});}function init(){let offset,$overlay,isFloating=false;function updateAreaMode(){const shouldFloat=window.pageYOffset>offset.top;if(isFloating===shouldFloat){return;}isFloating=shouldFloat;$area.toggleClass('mw-notification-area-floating',isFloating).toggleClass('mw-notification-area-layout',!isFloating);}$area=$('.mw-notification-area[data-mw-interface]').first();if(!$area.length){$area=$('<div>').addClass('mw-notification-area');$overlay=$('<div>').addClass('mw-notification-area-overlay');$overlay.append($area);$(document.body).append($overlay);}$area.addClass('mw-notification-area-layout').attr('id','mw-notification-area').on({mouseenter:notification.pause,mouseleave:notification.resume}).on('click','.mw-notification',function(){\\nconst notif=$(this).data('mw-notification');if(notif){notif.close();}}).on('click','a, select, .oo-ui-dropdownInputWidget',(e)=>{e.stopPropagation();});requestAnimationFrame(()=>{let notif;offset=$area.offset();updateAreaMode();$area.css('display','none');$(window).on('scroll',updateAreaMode);isPageReady=true;while(preReadyNotifQueue.length){notif=preReadyNotifQueue.shift();notif.start();}});}notification={pause:function(){callEachNotification($area.children('.mw-notification'),'pause');},resume:function(){callEachNotification($area.children('.mw-notification-autohide').slice(0,notification.autoHideLimit),'resume');},notify:function(message,options){options=Object.assign({},notification.defaults,options);const notif=new Notification(message,options);if(isPageReady){notif.start();}else{preReadyNotifQueue.push(notif);}return notif;},defaults:{autoHide:true,autoHideSeconds:'short',tag:null,title:null,type:null,ariaText:null,visibleTimeout:true,id:false,classes:false},autoHideSeconds:{\\nshort:5,long:30},autoHideLimit:3};if(window.QUnit){$area=$(document.body);}else{$(init);}mw.notification=notification;}());\\n},{\\\"css\\\":[\\\".mw-aria-live-region{display:block;position:absolute !important; clip:rect(1px,1px,1px,1px);width:1px;height:1px;margin:-1px;border:0;padding:0;overflow:hidden}.mw-notification-area{position:absolute}.mw-notification-area-floating{position:fixed}   .mw-notification-area-overlay{position:absolute;top:0;right:0;height:100%;width:100%; overflow:hidden;pointer-events:none;z-index:9999}.mw-notification-area{top:0;right:0; padding:1em;width:20em;line-height:1.35;z-index:10000}.mw-notification{padding:0.75em 1.5em;margin-bottom:0.5em;border:1px solid var(--border-color-notice,#72777d);background-color:var(--background-color-base,#fff);color:var(--color-emphasized,#101418); cursor:pointer;opacity:0;transform:translateX(35px);transition:opacity 0.35s ease-in-out,transform 0.35s ease-in-out;pointer-events:auto;word-break:break-word}.mw-notification-visible{opacity:1;transform:translateX(0)}.mw-notification-replaced{opacity:0;transform:translateY(-35px);pointer-events:none}.mw-notification-title{font-weight:bold}.mw-notification.mw-notification-type-warn{background-color:var(--background-color-warning-subtle,#fdf2d5);border-color:var(--border-color-warning,#ab7f2a)}.mw-notification.mw-notification-type-error{background-color:var(--background-color-error-subtle,#ffe9e5);border-color:var(--border-color-error,#f54739)}.mw-notification.mw-notification-type-success{background-color:var(--background-color-success-subtle,#dff2eb);border-color:var(--border-color-success,#099979)}.mw-notification.mw-notification-type-notice{background-color:var(--background-color-notice-subtle,#eaecf0);border-color:var(--border-color-notice,#72777d)}     .mw-notification-area{font-size:0.8em;width:100%;box-sizing:border-box;left:50%;transform:translateX(-50%)}.vector-feature-limited-width-clientpref-1 .mw-notification-area{max-width:124.6875rem}.mw-notification-area-layout{top:3.5em}.mw-notification{border:1px solid var(--border-color-base,#a2a9b1);border-radius:2px;box-shadow:0 2px 2px 0 rgba(0,0,0,0.25);width:20em;box-sizing:border-box;margin-left:auto}.vector-sticky-header-enabled .mw-notification-area{transition:transform 250ms linear} .vector-sticky-header-visible .mw-notification-area-overlay \\\\u003E .mw-notification-area-floating{transform:translate(-50%,3.125rem)}\\\",\\\"@media print {\\\\n\\\\t.mw-notification-area{display:none}}\\\"]}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.notification&skin=vector-2022&version=zmx9s\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.notification&skin=vector-2022&sourcemap=1&version=zmx9s\",\"oojs-ui.styles.icons-interactions@12bd4\":\"mw.loader.impl(function(){return[\\\"oojs-ui.styles.icons-interactions@12bd4\\\",null,{\\\"css\\\":[\\\".oo-ui-icon-add,.mw-ui-icon-add:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E add %3C/title%3E%3Cpath d=%22M11 9V4H9v5H4v2h5v5h2v-5h5V9z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-add,.mw-ui-icon-add-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E add %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M11 9V4H9v5H4v2h5v5h2v-5h5V9z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-add,.mw-ui-icon-add-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E add %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M11 9V4H9v5H4v2h5v5h2v-5h5V9z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-browser,.mw-ui-icon-browser:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E browser %3C/title%3E%3Cpath d=%22M2 2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm2 1.5A1.5 1.5 0 1 1 2.5 5 1.5 1.5 0 0 1 4 3.5M18 16H2V8h16z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-browser,.mw-ui-icon-browser-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E browser %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M2 2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm2 1.5A1.5 1.5 0 1 1 2.5 5 1.5 1.5 0 0 1 4 3.5M18 16H2V8h16z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-browser,.mw-ui-icon-browser-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E browser %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M2 2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm2 1.5A1.5 1.5 0 1 1 2.5 5 1.5 1.5 0 0 1 4 3.5M18 16H2V8h16z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-cancel,.mw-ui-icon-cancel:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E cancel %3C/title%3E%3Cpath d=%22M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0M2 10a8 8 0 0 1 1.69-4.9L14.9 16.31A8 8 0 0 1 2 10m14.31 4.9L5.1 3.69A8 8 0 0 1 16.31 14.9%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-cancel,.mw-ui-icon-cancel-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E cancel %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0M2 10a8 8 0 0 1 1.69-4.9L14.9 16.31A8 8 0 0 1 2 10m14.31 4.9L5.1 3.69A8 8 0 0 1 16.31 14.9%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-cancel,.mw-ui-icon-cancel-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E cancel %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0M2 10a8 8 0 0 1 1.69-4.9L14.9 16.31A8 8 0 0 1 2 10m14.31 4.9L5.1 3.69A8 8 0 0 1 16.31 14.9%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-destructive.oo-ui-icon-cancel,.mw-ui-icon-cancel-destructive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E cancel %3C/title%3E%3Cg fill=%22%23d73333%22%3E%3Cpath d=%22M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0M2 10a8 8 0 0 1 1.69-4.9L14.9 16.31A8 8 0 0 1 2 10m14.31 4.9L5.1 3.69A8 8 0 0 1 16.31 14.9%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-check,.mw-ui-icon-check:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E check %3C/title%3E%3Cpath d=%22M7 14.2 2.8 10l-1.4 1.4L7 17 19 5l-1.4-1.4z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-check,.mw-ui-icon-check-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E check %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M7 14.2 2.8 10l-1.4 1.4L7 17 19 5l-1.4-1.4z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-check,.mw-ui-icon-check-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E check %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M7 14.2 2.8 10l-1.4 1.4L7 17 19 5l-1.4-1.4z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-destructive.oo-ui-icon-check,.mw-ui-icon-check-destructive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E check %3C/title%3E%3Cg fill=%22%23d73333%22%3E%3Cpath d=%22M7 14.2 2.8 10l-1.4 1.4L7 17 19 5l-1.4-1.4z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-success.oo-ui-icon-check,.mw-ui-icon-check-success:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E check %3C/title%3E%3Cg fill=%22%2314866d%22%3E%3Cpath d=%22M7 14.2 2.8 10l-1.4 1.4L7 17 19 5l-1.4-1.4z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-checkAll,.mw-ui-icon-checkAll:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E check all %3C/title%3E%3Cpath d=%22m.29 12.71 1.42-1.42 2.22 2.22 8.3-10.14 1.54 1.26-9.7 11.86zM12 10h5v2h-5zm-3 4h5v2H9zm6-8h5v2h-5z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-checkAll,.mw-ui-icon-checkAll-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E check all %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22m.29 12.71 1.42-1.42 2.22 2.22 8.3-10.14 1.54 1.26-9.7 11.86zM12 10h5v2h-5zm-3 4h5v2H9zm6-8h5v2h-5z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-checkAll,.mw-ui-icon-checkAll-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E check all %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22m.29 12.71 1.42-1.42 2.22 2.22 8.3-10.14 1.54 1.26-9.7 11.86zM12 10h5v2h-5zm-3 4h5v2H9zm6-8h5v2h-5z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-clear,.mw-ui-icon-clear:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E clear %3C/title%3E%3Cpath d=%22M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0m5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-clear,.mw-ui-icon-clear-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E clear %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0m5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-clear,.mw-ui-icon-clear-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E clear %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0m5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-clock,.mw-ui-icon-clock:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E clock %3C/title%3E%3Cpath d=%22M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0m2.5 14.5L9 11V4h2v6l3 3z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-clock,.mw-ui-icon-clock-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E clock %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0m2.5 14.5L9 11V4h2v6l3 3z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-clock,.mw-ui-icon-clock-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E clock %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0m2.5 14.5L9 11V4h2v6l3 3z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-close,.mw-ui-icon-close:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E close %3C/title%3E%3Cpath d=%22m4.3 2.9 12.8 12.8-1.4 1.4L2.9 4.3z%22/%3E%3Cpath d=%22M17.1 4.3 4.3 17.1l-1.4-1.4L15.7 2.9z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-close,.mw-ui-icon-close-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E close %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22m4.3 2.9 12.8 12.8-1.4 1.4L2.9 4.3z%22/%3E%3Cpath d=%22M17.1 4.3 4.3 17.1l-1.4-1.4L15.7 2.9z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-close,.mw-ui-icon-close-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E close %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22m4.3 2.9 12.8 12.8-1.4 1.4L2.9 4.3z%22/%3E%3Cpath d=%22M17.1 4.3 4.3 17.1l-1.4-1.4L15.7 2.9z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-ellipsis,.mw-ui-icon-ellipsis:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E ellipsis %3C/title%3E%3Ccircle cx=%2210%22 cy=%2210%22 r=%222%22/%3E%3Ccircle cx=%223%22 cy=%2210%22 r=%222%22/%3E%3Ccircle cx=%2217%22 cy=%2210%22 r=%222%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-ellipsis,.mw-ui-icon-ellipsis-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E ellipsis %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Ccircle cx=%2210%22 cy=%2210%22 r=%222%22/%3E%3Ccircle cx=%223%22 cy=%2210%22 r=%222%22/%3E%3Ccircle cx=%2217%22 cy=%2210%22 r=%222%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-ellipsis,.mw-ui-icon-ellipsis-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E ellipsis %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Ccircle cx=%2210%22 cy=%2210%22 r=%222%22/%3E%3Ccircle cx=%223%22 cy=%2210%22 r=%222%22/%3E%3Ccircle cx=%2217%22 cy=%2210%22 r=%222%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-verticalEllipsis,.mw-ui-icon-verticalEllipsis:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E vertical ellipsis %3C/title%3E%3Ccircle cx=%2210%22 cy=%2210%22 r=%222%22/%3E%3Ccircle cx=%2210%22 cy=%223%22 r=%222%22/%3E%3Ccircle cx=%2210%22 cy=%2217%22 r=%222%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-verticalEllipsis,.mw-ui-icon-verticalEllipsis-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E vertical ellipsis %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Ccircle cx=%2210%22 cy=%2210%22 r=%222%22/%3E%3Ccircle cx=%2210%22 cy=%223%22 r=%222%22/%3E%3Ccircle cx=%2210%22 cy=%2217%22 r=%222%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-verticalEllipsis,.mw-ui-icon-verticalEllipsis-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E vertical ellipsis %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Ccircle cx=%2210%22 cy=%2210%22 r=%222%22/%3E%3Ccircle cx=%2210%22 cy=%223%22 r=%222%22/%3E%3Ccircle cx=%2210%22 cy=%2217%22 r=%222%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-feedback,.mw-ui-icon-feedback:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E feedback %3C/title%3E%3Cpath d=%22M19 16 2 12a3.83 3.83 0 0 1-1-2.5A3.83 3.83 0 0 1 2 7l17-4z%22/%3E%3Crect width=%224%22 height=%228%22 x=%224%22 y=%229%22 rx=%222%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-feedback,.mw-ui-icon-feedback-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E feedback %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M19 16 2 12a3.83 3.83 0 0 1-1-2.5A3.83 3.83 0 0 1 2 7l17-4z%22/%3E%3Crect width=%224%22 height=%228%22 x=%224%22 y=%229%22 rx=%222%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-feedback,.mw-ui-icon-feedback-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E feedback %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M19 16 2 12a3.83 3.83 0 0 1-1-2.5A3.83 3.83 0 0 1 2 7l17-4z%22/%3E%3Crect width=%224%22 height=%228%22 x=%224%22 y=%229%22 rx=%222%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-funnel,.mw-ui-icon-funnel:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E funnel %3C/title%3E%3Cpath d=%22M10 13 1 1h18z%22/%3E%3Cpath d=%22M8 9v8l4 2V9z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-funnel,.mw-ui-icon-funnel-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E funnel %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M10 13 1 1h18z%22/%3E%3Cpath d=%22M8 9v8l4 2V9z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-funnel,.mw-ui-icon-funnel-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E funnel %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M10 13 1 1h18z%22/%3E%3Cpath d=%22M8 9v8l4 2V9z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-destructive.oo-ui-icon-funnel,.mw-ui-icon-funnel-destructive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E funnel %3C/title%3E%3Cg fill=%22%23d73333%22%3E%3Cpath d=%22M10 13 1 1h18z%22/%3E%3Cpath d=%22M8 9v8l4 2V9z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-hand,.mw-ui-icon-hand:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E hand %3C/title%3E%3Cpath d=%22M18 4.6V17c0 1.9-.5 3-2.4 3H9.5c-.9 0-1.8-.4-2.4-1l-4.6-5-.5-1c0-1 .5-1 .5-1 .3 0 .6 0 1 .2L7 14V3.3C7 2.6 7.3 2 8 2c.6 0 1 .7 1 1.4V9h1V1.2c0-.6.3-1.2 1-1.2s1 .6 1 1.3V9h1V2c0-.7.3-1.3 1-1.3s1 .6 1 1.3v7h1V4.6c0-.7.3-1.3 1-1.3s1 .6 1 1.3%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-hand,.mw-ui-icon-hand-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E hand %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M18 4.6V17c0 1.9-.5 3-2.4 3H9.5c-.9 0-1.8-.4-2.4-1l-4.6-5-.5-1c0-1 .5-1 .5-1 .3 0 .6 0 1 .2L7 14V3.3C7 2.6 7.3 2 8 2c.6 0 1 .7 1 1.4V9h1V1.2c0-.6.3-1.2 1-1.2s1 .6 1 1.3V9h1V2c0-.7.3-1.3 1-1.3s1 .6 1 1.3v7h1V4.6c0-.7.3-1.3 1-1.3s1 .6 1 1.3%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-hand,.mw-ui-icon-hand-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E hand %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M18 4.6V17c0 1.9-.5 3-2.4 3H9.5c-.9 0-1.8-.4-2.4-1l-4.6-5-.5-1c0-1 .5-1 .5-1 .3 0 .6 0 1 .2L7 14V3.3C7 2.6 7.3 2 8 2c.6 0 1 .7 1 1.4V9h1V1.2c0-.6.3-1.2 1-1.2s1 .6 1 1.3V9h1V2c0-.7.3-1.3 1-1.3s1 .6 1 1.3v7h1V4.6c0-.7.3-1.3 1-1.3s1 .6 1 1.3%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-destructive.oo-ui-icon-hand,.mw-ui-icon-hand-destructive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E hand %3C/title%3E%3Cg fill=%22%23d73333%22%3E%3Cpath d=%22M18 4.6V17c0 1.9-.5 3-2.4 3H9.5c-.9 0-1.8-.4-2.4-1l-4.6-5-.5-1c0-1 .5-1 .5-1 .3 0 .6 0 1 .2L7 14V3.3C7 2.6 7.3 2 8 2c.6 0 1 .7 1 1.4V9h1V1.2c0-.6.3-1.2 1-1.2s1 .6 1 1.3V9h1V2c0-.7.3-1.3 1-1.3s1 .6 1 1.3v7h1V4.6c0-.7.3-1.3 1-1.3s1 .6 1 1.3%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-heart,.mw-ui-icon-heart:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E heart %3C/title%3E%3Cpath d=%22M14.75 1A5.24 5.24 0 0 0 10 4 5.24 5.24 0 0 0 0 6.25C0 11.75 10 19 10 19s10-7.25 10-12.75A5.25 5.25 0 0 0 14.75 1%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-heart,.mw-ui-icon-heart-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E heart %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M14.75 1A5.24 5.24 0 0 0 10 4 5.24 5.24 0 0 0 0 6.25C0 11.75 10 19 10 19s10-7.25 10-12.75A5.25 5.25 0 0 0 14.75 1%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-heart,.mw-ui-icon-heart-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E heart %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M14.75 1A5.24 5.24 0 0 0 10 4 5.24 5.24 0 0 0 0 6.25C0 11.75 10 19 10 19s10-7.25 10-12.75A5.25 5.25 0 0 0 14.75 1%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-help,.mw-ui-icon-help:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E help %3C/title%3E%3Cpath d=%22M10.06 1C13 1 15 2.89 15 5.53a4.59 4.59 0 0 1-2.29 4.08c-1.42.92-1.82 1.53-1.82 2.71V13H8.38v-.81a3.84 3.84 0 0 1 2-3.84c1.34-.9 1.79-1.53 1.79-2.71a2.1 2.1 0 0 0-2.08-2.14h-.17a2.3 2.3 0 0 0-2.38 2.22v.17H5A4.71 4.71 0 0 1 9.51 1a5 5 0 0 1 .55 0%22/%3E%3Ccircle cx=%2210%22 cy=%2217%22 r=%222%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-help,.mw-ui-icon-help-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E help %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M10.06 1C13 1 15 2.89 15 5.53a4.59 4.59 0 0 1-2.29 4.08c-1.42.92-1.82 1.53-1.82 2.71V13H8.38v-.81a3.84 3.84 0 0 1 2-3.84c1.34-.9 1.79-1.53 1.79-2.71a2.1 2.1 0 0 0-2.08-2.14h-.17a2.3 2.3 0 0 0-2.38 2.22v.17H5A4.71 4.71 0 0 1 9.51 1a5 5 0 0 1 .55 0%22/%3E%3Ccircle cx=%2210%22 cy=%2217%22 r=%222%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-help,.mw-ui-icon-help-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E help %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M10.06 1C13 1 15 2.89 15 5.53a4.59 4.59 0 0 1-2.29 4.08c-1.42.92-1.82 1.53-1.82 2.71V13H8.38v-.81a3.84 3.84 0 0 1 2-3.84c1.34-.9 1.79-1.53 1.79-2.71a2.1 2.1 0 0 0-2.08-2.14h-.17a2.3 2.3 0 0 0-2.38 2.22v.17H5A4.71 4.71 0 0 1 9.51 1a5 5 0 0 1 .55 0%22/%3E%3Ccircle cx=%2210%22 cy=%2217%22 r=%222%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-helpNotice,.mw-ui-icon-helpNotice:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E help %3C/title%3E%3Cpath d=%22M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0m1 16H9v-2h2zm2.71-7.6a2.6 2.6 0 0 1-.33.74 3.2 3.2 0 0 1-.48.55l-.54.48c-.21.18-.41.35-.58.52a2.5 2.5 0 0 0-.47.56A2.3 2.3 0 0 0 11 12a3.8 3.8 0 0 0-.11 1H9.08a9 9 0 0 1 .07-1.25 3.3 3.3 0 0 1 .25-.9 2.8 2.8 0 0 1 .41-.67 4 4 0 0 1 .58-.58c.17-.16.34-.3.51-.44a3 3 0 0 0 .43-.44 1.8 1.8 0 0 0 .3-.55 2 2 0 0 0 .11-.72 2.1 2.1 0 0 0-.17-.86 1.7 1.7 0 0 0-1-.9 1.7 1.7 0 0 0-.5-.1 1.77 1.77 0 0 0-1.53.68 3 3 0 0 0-.5 1.82H6.16a4.7 4.7 0 0 1 .28-1.68 3.6 3.6 0 0 1 .8-1.29 3.9 3.9 0 0 1 1.28-.83A4.6 4.6 0 0 1 10.18 4a4.4 4.4 0 0 1 1.44.23 3.5 3.5 0 0 1 1.15.65 3.1 3.1 0 0 1 .78 1.06 3.5 3.5 0 0 1 .29 1.45 3.4 3.4 0 0 1-.13 1.01%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-helpNotice,.mw-ui-icon-helpNotice-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E help %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0m1 16H9v-2h2zm2.71-7.6a2.6 2.6 0 0 1-.33.74 3.2 3.2 0 0 1-.48.55l-.54.48c-.21.18-.41.35-.58.52a2.5 2.5 0 0 0-.47.56A2.3 2.3 0 0 0 11 12a3.8 3.8 0 0 0-.11 1H9.08a9 9 0 0 1 .07-1.25 3.3 3.3 0 0 1 .25-.9 2.8 2.8 0 0 1 .41-.67 4 4 0 0 1 .58-.58c.17-.16.34-.3.51-.44a3 3 0 0 0 .43-.44 1.8 1.8 0 0 0 .3-.55 2 2 0 0 0 .11-.72 2.1 2.1 0 0 0-.17-.86 1.7 1.7 0 0 0-1-.9 1.7 1.7 0 0 0-.5-.1 1.77 1.77 0 0 0-1.53.68 3 3 0 0 0-.5 1.82H6.16a4.7 4.7 0 0 1 .28-1.68 3.6 3.6 0 0 1 .8-1.29 3.9 3.9 0 0 1 1.28-.83A4.6 4.6 0 0 1 10.18 4a4.4 4.4 0 0 1 1.44.23 3.5 3.5 0 0 1 1.15.65 3.1 3.1 0 0 1 .78 1.06 3.5 3.5 0 0 1 .29 1.45 3.4 3.4 0 0 1-.13 1.01%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-helpNotice,.mw-ui-icon-helpNotice-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E help %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0m1 16H9v-2h2zm2.71-7.6a2.6 2.6 0 0 1-.33.74 3.2 3.2 0 0 1-.48.55l-.54.48c-.21.18-.41.35-.58.52a2.5 2.5 0 0 0-.47.56A2.3 2.3 0 0 0 11 12a3.8 3.8 0 0 0-.11 1H9.08a9 9 0 0 1 .07-1.25 3.3 3.3 0 0 1 .25-.9 2.8 2.8 0 0 1 .41-.67 4 4 0 0 1 .58-.58c.17-.16.34-.3.51-.44a3 3 0 0 0 .43-.44 1.8 1.8 0 0 0 .3-.55 2 2 0 0 0 .11-.72 2.1 2.1 0 0 0-.17-.86 1.7 1.7 0 0 0-1-.9 1.7 1.7 0 0 0-.5-.1 1.77 1.77 0 0 0-1.53.68 3 3 0 0 0-.5 1.82H6.16a4.7 4.7 0 0 1 .28-1.68 3.6 3.6 0 0 1 .8-1.29 3.9 3.9 0 0 1 1.28-.83A4.6 4.6 0 0 1 10.18 4a4.4 4.4 0 0 1 1.44.23 3.5 3.5 0 0 1 1.15.65 3.1 3.1 0 0 1 .78 1.06 3.5 3.5 0 0 1 .29 1.45 3.4 3.4 0 0 1-.13 1.01%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-home,.mw-ui-icon-home:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E home %3C/title%3E%3Cpath d=%22M10 1 0 10h3v9h4v-4.6c0-1.47 1.31-2.66 3-2.66s3 1.19 3 2.66V19h4v-9h3z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-home,.mw-ui-icon-home-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E home %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M10 1 0 10h3v9h4v-4.6c0-1.47 1.31-2.66 3-2.66s3 1.19 3 2.66V19h4v-9h3z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-home,.mw-ui-icon-home-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E home %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M10 1 0 10h3v9h4v-4.6c0-1.47 1.31-2.66 3-2.66s3 1.19 3 2.66V19h4v-9h3z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-key,.mw-ui-icon-key:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E key %3C/title%3E%3Cpath d=%22M15 6a1.54 1.54 0 0 1-1.5-1.5 1.5 1.5 0 0 1 3 0A1.54 1.54 0 0 1 15 6m-1.5-5A5.55 5.55 0 0 0 8 6.5a6.8 6.8 0 0 0 .7 2.8L1 17v2h4v-2h2v-2h2l3.2-3.2a6 6 0 0 0 1.3.2A5.55 5.55 0 0 0 19 6.5 5.55 5.55 0 0 0 13.5 1%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-key,.mw-ui-icon-key-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E key %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M15 6a1.54 1.54 0 0 1-1.5-1.5 1.5 1.5 0 0 1 3 0A1.54 1.54 0 0 1 15 6m-1.5-5A5.55 5.55 0 0 0 8 6.5a6.8 6.8 0 0 0 .7 2.8L1 17v2h4v-2h2v-2h2l3.2-3.2a6 6 0 0 0 1.3.2A5.55 5.55 0 0 0 19 6.5 5.55 5.55 0 0 0 13.5 1%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-key,.mw-ui-icon-key-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E key %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M15 6a1.54 1.54 0 0 1-1.5-1.5 1.5 1.5 0 0 1 3 0A1.54 1.54 0 0 1 15 6m-1.5-5A5.55 5.55 0 0 0 8 6.5a6.8 6.8 0 0 0 .7 2.8L1 17v2h4v-2h2v-2h2l3.2-3.2a6 6 0 0 0 1.3.2A5.55 5.55 0 0 0 19 6.5 5.55 5.55 0 0 0 13.5 1%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-keyboard,.mw-ui-icon-keyboard:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E keyboard %3C/title%3E%3Cpath d=%22M0 15a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2zm9-9h2v2H9zm0 3h2v2H9zM6 6h2v2H6zm0 3h2v2H6zm-1 5H3v-2h2zm0-3H3V9h2zm0-3H3V6h2zm9 6H6v-2h8zm0-3h-2V9h2zm0-3h-2V6h2zm3 6h-2v-2h2zm0-3h-2V9h2zm0-3h-2V6h2z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-keyboard,.mw-ui-icon-keyboard-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E keyboard %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M0 15a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2zm9-9h2v2H9zm0 3h2v2H9zM6 6h2v2H6zm0 3h2v2H6zm-1 5H3v-2h2zm0-3H3V9h2zm0-3H3V6h2zm9 6H6v-2h8zm0-3h-2V9h2zm0-3h-2V6h2zm3 6h-2v-2h2zm0-3h-2V9h2zm0-3h-2V6h2z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-keyboard,.mw-ui-icon-keyboard-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E keyboard %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M0 15a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2zm9-9h2v2H9zm0 3h2v2H9zM6 6h2v2H6zm0 3h2v2H6zm-1 5H3v-2h2zm0-3H3V9h2zm0-3H3V6h2zm9 6H6v-2h8zm0-3h-2V9h2zm0-3h-2V6h2zm3 6h-2v-2h2zm0-3h-2V9h2zm0-3h-2V6h2z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-lightbulb,.mw-ui-icon-lightbulb:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E lightbulb %3C/title%3E%3Cpath d=%22M8 19a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-1H8zm9-12a7 7 0 1 0-12 4.9S7 14 7 15v1a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1v-1c0-1 2-3.1 2-3.1A7 7 0 0 0 17 7%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-lightbulb,.mw-ui-icon-lightbulb-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E lightbulb %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M8 19a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-1H8zm9-12a7 7 0 1 0-12 4.9S7 14 7 15v1a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1v-1c0-1 2-3.1 2-3.1A7 7 0 0 0 17 7%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-lightbulb,.mw-ui-icon-lightbulb-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E lightbulb %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M8 19a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-1H8zm9-12a7 7 0 1 0-12 4.9S7 14 7 15v1a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1v-1c0-1 2-3.1 2-3.1A7 7 0 0 0 17 7%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-logIn,.mw-ui-icon-logIn:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E log in %3C/title%3E%3Cpath d=%22M1 11v6c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2H3c-1.1 0-2 .9-2 2v6h8V5l4.75 5L9 15v-4z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-logIn,.mw-ui-icon-logIn-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E log in %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M1 11v6c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2H3c-1.1 0-2 .9-2 2v6h8V5l4.75 5L9 15v-4z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-logIn,.mw-ui-icon-logIn-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E log in %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M1 11v6c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2H3c-1.1 0-2 .9-2 2v6h8V5l4.75 5L9 15v-4z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-logOut,.mw-ui-icon-logOut:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E log out %3C/title%3E%3Cpath d=%22M3 3h8V1H3a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v-2H3z%22/%3E%3Cpath d=%22M13 5v4H5v2h8v4l6-5z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-logOut,.mw-ui-icon-logOut-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E log out %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M3 3h8V1H3a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v-2H3z%22/%3E%3Cpath d=%22M13 5v4H5v2h8v4l6-5z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-logOut,.mw-ui-icon-logOut-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E log out %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M3 3h8V1H3a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v-2H3z%22/%3E%3Cpath d=%22M13 5v4H5v2h8v4l6-5z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-network,.mw-ui-icon-network:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E network %3C/title%3E%3Ccircle cx=%2210%22 cy=%2215%22 r=%222%22/%3E%3Cpath d=%22M1 7.4a12 13 0 0 1 18 0l-1.5 1.4a10 11.1 0 0 0-15 0zm3.7 3.2a7 7.3 0 0 1 10.7 0L14 12a5 5.3 0 0 0-7.8 0z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-network,.mw-ui-icon-network-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E network %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Ccircle cx=%2210%22 cy=%2215%22 r=%222%22/%3E%3Cpath d=%22M1 7.4a12 13 0 0 1 18 0l-1.5 1.4a10 11.1 0 0 0-15 0zm3.7 3.2a7 7.3 0 0 1 10.7 0L14 12a5 5.3 0 0 0-7.8 0z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-network,.mw-ui-icon-network-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E network %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Ccircle cx=%2210%22 cy=%2215%22 r=%222%22/%3E%3Cpath d=%22M1 7.4a12 13 0 0 1 18 0l-1.5 1.4a10 11.1 0 0 0-15 0zm3.7 3.2a7 7.3 0 0 1 10.7 0L14 12a5 5.3 0 0 0-7.8 0z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-networkOff,.mw-ui-icon-networkOff:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E network off %3C/title%3E%3Ccircle cx=%2210%22 cy=%2216%22 r=%222%22/%3E%3Cpath d=%22M16.4 11.6A7.1 7.1 0 0 0 12 9.1l3.4 3.4zM19 8.4A12.2 14 0 0 0 8.2 4.2L10 6a9.9 9.9 0 0 1 7.4 3.7zM3.5 2 2 3.4l2.2 2.2A13.1 13.1 0 0 0 1 8.4l1.5 1.3a10.7 10.7 0 0 1 3.2-2.6L8 9.3a7.3 7.3 0 0 0-3.3 2.3L6.1 13a5.2 5.2 0 0 1 3.6-2l6.8 7 1.5-1.5z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-networkOff,.mw-ui-icon-networkOff-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E network off %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Ccircle cx=%2210%22 cy=%2216%22 r=%222%22/%3E%3Cpath d=%22M16.4 11.6A7.1 7.1 0 0 0 12 9.1l3.4 3.4zM19 8.4A12.2 14 0 0 0 8.2 4.2L10 6a9.9 9.9 0 0 1 7.4 3.7zM3.5 2 2 3.4l2.2 2.2A13.1 13.1 0 0 0 1 8.4l1.5 1.3a10.7 10.7 0 0 1 3.2-2.6L8 9.3a7.3 7.3 0 0 0-3.3 2.3L6.1 13a5.2 5.2 0 0 1 3.6-2l6.8 7 1.5-1.5z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-networkOff,.mw-ui-icon-networkOff-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E network off %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Ccircle cx=%2210%22 cy=%2216%22 r=%222%22/%3E%3Cpath d=%22M16.4 11.6A7.1 7.1 0 0 0 12 9.1l3.4 3.4zM19 8.4A12.2 14 0 0 0 8.2 4.2L10 6a9.9 9.9 0 0 1 7.4 3.7zM3.5 2 2 3.4l2.2 2.2A13.1 13.1 0 0 0 1 8.4l1.5 1.3a10.7 10.7 0 0 1 3.2-2.6L8 9.3a7.3 7.3 0 0 0-3.3 2.3L6.1 13a5.2 5.2 0 0 1 3.6-2l6.8 7 1.5-1.5z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-newWindow,.mw-ui-icon-newWindow:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E new window %3C/title%3E%3Cpath d=%22M17 17H3V3h5V1H3a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-5h-2z%22/%3E%3Cpath d=%22m11 1 3.3 3.3L8.6 10l1.4 1.4 5.7-5.7L19 9V1z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-newWindow,.mw-ui-icon-newWindow-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E new window %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M17 17H3V3h5V1H3a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-5h-2z%22/%3E%3Cpath d=%22m11 1 3.3 3.3L8.6 10l1.4 1.4 5.7-5.7L19 9V1z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-newWindow,.mw-ui-icon-newWindow-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E new window %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M17 17H3V3h5V1H3a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-5h-2z%22/%3E%3Cpath d=%22m11 1 3.3 3.3L8.6 10l1.4 1.4 5.7-5.7L19 9V1z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-pageSettings,.mw-ui-icon-pageSettings:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E page settings %3C/title%3E%3Ccircle cx=%2210%22 cy=%2210%22 r=%221.75%22/%3E%3Cpath d=%22M15 1H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2m0 9.75-1.37.25a3.7 3.7 0 0 1-.38.93l.82 1.07L13 14.07l-1.12-.82a3.7 3.7 0 0 1-.93.38l-.2 1.37h-1.5L9 13.63a3.7 3.7 0 0 1-.93-.38L7 14.07 5.93 13l.82-1.12a3.7 3.7 0 0 1-.38-.88L5 10.75v-1.5L6.37 9a3.7 3.7 0 0 1 .38-.93L5.93 7 7 5.93l1.12.82A3.7 3.7 0 0 1 9 6.37L9.25 5h1.5L11 6.37a3.7 3.7 0 0 1 .93.38L13 5.93 14.07 7l-.82 1.12a3.7 3.7 0 0 1 .38.93l1.37.2z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-pageSettings,.mw-ui-icon-pageSettings-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E page settings %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Ccircle cx=%2210%22 cy=%2210%22 r=%221.75%22/%3E%3Cpath d=%22M15 1H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2m0 9.75-1.37.25a3.7 3.7 0 0 1-.38.93l.82 1.07L13 14.07l-1.12-.82a3.7 3.7 0 0 1-.93.38l-.2 1.37h-1.5L9 13.63a3.7 3.7 0 0 1-.93-.38L7 14.07 5.93 13l.82-1.12a3.7 3.7 0 0 1-.38-.88L5 10.75v-1.5L6.37 9a3.7 3.7 0 0 1 .38-.93L5.93 7 7 5.93l1.12.82A3.7 3.7 0 0 1 9 6.37L9.25 5h1.5L11 6.37a3.7 3.7 0 0 1 .93.38L13 5.93 14.07 7l-.82 1.12a3.7 3.7 0 0 1 .38.93l1.37.2z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-pageSettings,.mw-ui-icon-pageSettings-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E page settings %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Ccircle cx=%2210%22 cy=%2210%22 r=%221.75%22/%3E%3Cpath d=%22M15 1H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2m0 9.75-1.37.25a3.7 3.7 0 0 1-.38.93l.82 1.07L13 14.07l-1.12-.82a3.7 3.7 0 0 1-.93.38l-.2 1.37h-1.5L9 13.63a3.7 3.7 0 0 1-.93-.38L7 14.07 5.93 13l.82-1.12a3.7 3.7 0 0 1-.38-.88L5 10.75v-1.5L6.37 9a3.7 3.7 0 0 1 .38-.93L5.93 7 7 5.93l1.12.82A3.7 3.7 0 0 1 9 6.37L9.25 5h1.5L11 6.37a3.7 3.7 0 0 1 .93.38L13 5.93 14.07 7l-.82 1.12a3.7 3.7 0 0 1 .38.93l1.37.2z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-power,.mw-ui-icon-power:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E power %3C/title%3E%3Cpath d=%22M11 1H9v10h2zm4.835 2.165C17.765 4.815 19 7.26 19 10a9 9 0 1 1-18 0c0-2.74 1.235-5.185 3.165-6.835L5.58 4.58A6.99 6.99 0 0 0 3 10c0 3.865 3.135 7 7 7s7-3.135 7-7a6.99 6.99 0 0 0-2.58-5.42z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-power,.mw-ui-icon-power-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E power %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M11 1H9v10h2zm4.835 2.165C17.765 4.815 19 7.26 19 10a9 9 0 1 1-18 0c0-2.74 1.235-5.185 3.165-6.835L5.58 4.58A6.99 6.99 0 0 0 3 10c0 3.865 3.135 7 7 7s7-3.135 7-7a6.99 6.99 0 0 0-2.58-5.42z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-power,.mw-ui-icon-power-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E power %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M11 1H9v10h2zm4.835 2.165C17.765 4.815 19 7.26 19 10a9 9 0 1 1-18 0c0-2.74 1.235-5.185 3.165-6.835L5.58 4.58A6.99 6.99 0 0 0 3 10c0 3.865 3.135 7 7 7s7-3.135 7-7a6.99 6.99 0 0 0-2.58-5.42z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-printer,.mw-ui-icon-printer:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E printer %3C/title%3E%3Cpath d=%22M5 1h10v4H5zM3 6a2 2 0 0 0-2 2v7h4v4h10v-4h4V8a2 2 0 0 0-2-2zm11 12H6v-6h8zm2-8a1 1 0 1 1 1-1 1 1 0 0 1-1 1%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-printer,.mw-ui-icon-printer-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E printer %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M5 1h10v4H5zM3 6a2 2 0 0 0-2 2v7h4v4h10v-4h4V8a2 2 0 0 0-2-2zm11 12H6v-6h8zm2-8a1 1 0 1 1 1-1 1 1 0 0 1-1 1%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-printer,.mw-ui-icon-printer-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E printer %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M5 1h10v4H5zM3 6a2 2 0 0 0-2 2v7h4v4h10v-4h4V8a2 2 0 0 0-2-2zm11 12H6v-6h8zm2-8a1 1 0 1 1 1-1 1 1 0 0 1-1 1%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-reload,.mw-ui-icon-reload:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E reload %3C/title%3E%3Cpath d=%22M15.65 4.35A8 8 0 1 0 17.4 13h-2.22a6 6 0 1 1-1-7.22L11 9h7V2z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-reload,.mw-ui-icon-reload-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E reload %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M15.65 4.35A8 8 0 1 0 17.4 13h-2.22a6 6 0 1 1-1-7.22L11 9h7V2z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-reload,.mw-ui-icon-reload-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E reload %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M15.65 4.35A8 8 0 1 0 17.4 13h-2.22a6 6 0 1 1-1-7.22L11 9h7V2z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-search,.mw-ui-icon-search:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E search %3C/title%3E%3Cpath d=%22M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4zM3 8a5 5 0 1 0 10 0A5 5 0 0 0 3 8%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-search,.mw-ui-icon-search-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E search %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4zM3 8a5 5 0 1 0 10 0A5 5 0 0 0 3 8%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-search,.mw-ui-icon-search-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E search %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4zM3 8a5 5 0 1 0 10 0A5 5 0 0 0 3 8%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-settings,.mw-ui-icon-settings:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E settings %3C/title%3E%3Cg transform=%22translate%2810 10%29%22%3E%3Cpath id=%22a%22 d=%22M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3%22/%3E%3Cuse xlink:href=%22%23a%22 transform=%22rotate%2845%29%22/%3E%3Cuse xlink:href=%22%23a%22 transform=%22rotate%2890%29%22/%3E%3Cuse xlink:href=%22%23a%22 transform=%22rotate%28135%29%22/%3E%3C/g%3E%3Cpath d=%22M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-settings,.mw-ui-icon-settings-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E settings %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cg xmlns:xlink=%22http://www.w3.org/1999/xlink%22 transform=%22translate%2810 10%29%22%3E%3Cpath id=%22a%22 d=%22M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3%22/%3E%3Cuse xlink:href=%22%23a%22 transform=%22rotate%2845%29%22/%3E%3Cuse xlink:href=%22%23a%22 transform=%22rotate%2890%29%22/%3E%3Cuse xlink:href=%22%23a%22 transform=%22rotate%28135%29%22/%3E%3C/g%3E%3Cpath d=%22M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-settings,.mw-ui-icon-settings-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E settings %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cg xmlns:xlink=%22http://www.w3.org/1999/xlink%22 transform=%22translate%2810 10%29%22%3E%3Cpath id=%22a%22 d=%22M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3%22/%3E%3Cuse xlink:href=%22%23a%22 transform=%22rotate%2845%29%22/%3E%3Cuse xlink:href=%22%23a%22 transform=%22rotate%2890%29%22/%3E%3Cuse xlink:href=%22%23a%22 transform=%22rotate%28135%29%22/%3E%3C/g%3E%3Cpath d=%22M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-subtract,.mw-ui-icon-subtract:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E subtract %3C/title%3E%3Cpath d=%22M4 9h12v2H4z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-subtract,.mw-ui-icon-subtract-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E subtract %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M4 9h12v2H4z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-subtract,.mw-ui-icon-subtract-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E subtract %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M4 9h12v2H4z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-destructive.oo-ui-icon-subtract,.mw-ui-icon-subtract-destructive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E subtract %3C/title%3E%3Cg fill=%22%23d73333%22%3E%3Cpath d=%22M4 9h12v2H4z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}\\\"]}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs-ui.styles.icons-interactions&skin=vector-2022&version=1hno1\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs-ui.styles.icons-interactions&skin=vector-2022&sourcemap=1&version=1hno1\",\"mediawiki.action.view.postEdit@gdyu2\":\"mw.loader.impl(function(){return[\\\"mediawiki.action.view.postEdit@gdyu2\\\",{\\\"main\\\":\\\"mediawiki.action.view.postEdit.js\\\",\\\"files\\\":{\\\"mediawiki.action.view.postEdit.js\\\":function(require,module,exports){(function(){'use strict';const config=require('./config.json');const storageKey='mw-PostEdit'+mw.config.get('wgPageName');function showConfirmation(data){data=data||{};const label=data.message||mw.message(config.EditSubmitButtonLabelPublish?'postedit-confirmation-published':'postedit-confirmation-saved',data.user||mw.user,mw.config.get('wgRevisionId')).parseDom();data.message=new OO.ui.MessageWidget({type:'success',inline:true,label:label}).$element[0];mw.notify(data.message,{classes:['postedit']});mw.hook('postEdit.afterRemoval').fire();if(data.tempUserCreated){mw.tempUserCreated.showPopup();}}function init(){if(!mw.config.get('wgPostEditConfirmationDisabled')){mw.hook('postEdit').add(showConfirmation);}let action=mw.storage.session.get(storageKey)||mw.config.get('wgPostEdit');if(action){let tempUserCreated=false;const plusPos=action.indexOf('+');if(plusPos>-1){action=action.slice(0,plusPos);tempUserCreated=true;}mw.config.set('wgPostEdit',action);module.exports.fireHook(action,tempUserCreated);\\n}mw.storage.session.remove(storageKey);}module.exports={fireHook:(action,tempUserCreated)=>{if(!action){action='saved';}if(action==='saved'&&config.EditSubmitButtonLabelPublish){action='published';}mw.hook('postEdit').fire({message:mw.message('postedit-confirmation-'+action,mw.user,mw.config.get('wgRevisionId')).parseDom(),tempUserCreated:tempUserCreated});},fireHookOnPageReload:(action,tempUserCreated)=>{if(!action){action='saved';}if(tempUserCreated){action+='+tempuser';}mw.storage.session.set(storageKey,action,1200);}};init();}());\\n},\\\"config.json\\\":{\\\"EditSubmitButtonLabelPublish\\\":true}}},{},{\\\"postedit-confirmation-created\\\":\\\"The page has been [[Special:Diff\\\\/$2|created]].\\\",\\\"postedit-confirmation-published\\\":\\\"[[Special:Diff\\\\/$2|Your edit]] was published.\\\",\\\"postedit-confirmation-restored\\\":\\\"The page has been [[Special:Diff\\\\/$2|restored]].\\\",\\\"postedit-confirmation-saved\\\":\\\"[[Special:Diff\\\\/$2|Your edit]] was saved.\\\",\\\"postedit-temp-created\\\":\\\"An [[$2|auto-generated account]] has been created for you by adding a cookie to your browser. To pick a name of your choice and get more features, consider [$1 creating an account].\\\",\\\"postedit-temp-created-label\\\":\\\"Temporary account\\\"}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.action.view.postEdit&skin=vector-2022&version=1whr7\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.action.view.postEdit&skin=vector-2022&sourcemap=1&version=1whr7\",\"oojs-ui-widgets.icons@10lqi\":\"mw.loader.impl(function(){return[\\\"oojs-ui-widgets.icons@10lqi\\\",null,{\\\"css\\\":[\\\".oo-ui-icon-upload,.mw-ui-icon-upload:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E upload %3C/title%3E%3Cpath d=%22M17 12v5H3v-5H1v5a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-5z%22/%3E%3Cpath d=%22M10 1 5 7h4v8h2V7h4z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-upload,.mw-ui-icon-upload-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E upload %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M17 12v5H3v-5H1v5a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-5z%22/%3E%3Cpath d=%22M10 1 5 7h4v8h2V7h4z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-upload,.mw-ui-icon-upload-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E upload %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M17 12v5H3v-5H1v5a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-5z%22/%3E%3Cpath d=%22M10 1 5 7h4v8h2V7h4z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-attachment,.mw-ui-icon-attachment:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E attachment %3C/title%3E%3Cpath d=%22M9.5 19.75a4.25 4.25 0 0 1-4.25-4.25V9a2.75 2.75 0 0 1 5.5 0v6h-1.5V9a1.25 1.25 0 0 0-2.5 0v6.5a2.75 2.75 0 0 0 5.5 0V4a2.25 2.25 0 0 0-4.5 0v1h-1.5V4a3.75 3.75 0 0 1 7.5 0v11.5a4.25 4.25 0 0 1-4.25 4.25%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-attachment,.mw-ui-icon-attachment-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E attachment %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M9.5 19.75a4.25 4.25 0 0 1-4.25-4.25V9a2.75 2.75 0 0 1 5.5 0v6h-1.5V9a1.25 1.25 0 0 0-2.5 0v6.5a2.75 2.75 0 0 0 5.5 0V4a2.25 2.25 0 0 0-4.5 0v1h-1.5V4a3.75 3.75 0 0 1 7.5 0v11.5a4.25 4.25 0 0 1-4.25 4.25%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-attachment,.mw-ui-icon-attachment-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E attachment %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M9.5 19.75a4.25 4.25 0 0 1-4.25-4.25V9a2.75 2.75 0 0 1 5.5 0v6h-1.5V9a1.25 1.25 0 0 0-2.5 0v6.5a2.75 2.75 0 0 0 5.5 0V4a2.25 2.25 0 0 0-4.5 0v1h-1.5V4a3.75 3.75 0 0 1 7.5 0v11.5a4.25 4.25 0 0 1-4.25 4.25%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-trash,.mw-ui-icon-trash:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E trash %3C/title%3E%3Cpath d=%22M17 2h-3.5l-1-1h-5l-1 1H3v2h14zM4 17a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V5H4z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-trash,.mw-ui-icon-trash-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E trash %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M17 2h-3.5l-1-1h-5l-1 1H3v2h14zM4 17a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V5H4z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-trash,.mw-ui-icon-trash-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E trash %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M17 2h-3.5l-1-1h-5l-1 1H3v2h14zM4 17a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V5H4z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-destructive.oo-ui-icon-trash,.mw-ui-icon-trash-destructive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E trash %3C/title%3E%3Cg fill=%22%23d73333%22%3E%3Cpath d=%22M17 2h-3.5l-1-1h-5l-1 1H3v2h14zM4 17a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V5H4z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-collapse,.mw-ui-icon-collapse:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E collapse %3C/title%3E%3Cpath d=%22m2.5 15.25 7.5-7.5 7.5 7.5 1.5-1.5-9-9-9 9z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-collapse,.mw-ui-icon-collapse-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E collapse %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22m2.5 15.25 7.5-7.5 7.5 7.5 1.5-1.5-9-9-9 9z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-collapse,.mw-ui-icon-collapse-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E collapse %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22m2.5 15.25 7.5-7.5 7.5 7.5 1.5-1.5-9-9-9 9z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-expand,.mw-ui-icon-expand:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E expand %3C/title%3E%3Cpath d=%22m17.5 4.75-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-expand,.mw-ui-icon-expand-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E expand %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22m17.5 4.75-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-expand,.mw-ui-icon-expand-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E expand %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22m17.5 4.75-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}\\\"]}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs-ui-widgets.icons&skin=vector-2022&version=zcvhb\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs-ui-widgets.icons&skin=vector-2022&sourcemap=1&version=zcvhb\",\"oojs-ui.styles.icons-editing-core@35xji\":\"mw.loader.impl(function(){return[\\\"oojs-ui.styles.icons-editing-core@35xji\\\",null,{\\\"css\\\":[\\\".oo-ui-icon-edit,.mw-ui-icon-edit:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E edit %3C/title%3E%3Cpath d=%22m16.77 8 1.94-2a1 1 0 0 0 0-1.41l-3.34-3.3a1 1 0 0 0-1.41 0L12 3.23zM1 14.25V19h4.75l9.96-9.96-4.75-4.75z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-edit,.mw-ui-icon-edit-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E edit %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22m16.77 8 1.94-2a1 1 0 0 0 0-1.41l-3.34-3.3a1 1 0 0 0-1.41 0L12 3.23zM1 14.25V19h4.75l9.96-9.96-4.75-4.75z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-edit,.mw-ui-icon-edit-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E edit %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22m16.77 8 1.94-2a1 1 0 0 0 0-1.41l-3.34-3.3a1 1 0 0 0-1.41 0L12 3.23zM1 14.25V19h4.75l9.96-9.96-4.75-4.75z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-editLock,.mw-ui-icon-editLock:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E edit lock %3C/title%3E%3Cpath d=%22M12 12a2 2 0 0 1-2-2V5.25l-9 9V19h4.75l7-7zm7-8h-.5V2.5a2.5 2.5 0 0 0-5 0V4H13a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1m-3 4a1 1 0 1 1 1-1 1 1 0 0 1-1 1m1.5-4h-3V2.75C14.5 2 14.5 1 16 1s1.5 1 1.5 1.75z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-editLock,.mw-ui-icon-editLock-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E edit lock %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M12 12a2 2 0 0 1-2-2V5.25l-9 9V19h4.75l7-7zm7-8h-.5V2.5a2.5 2.5 0 0 0-5 0V4H13a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1m-3 4a1 1 0 1 1 1-1 1 1 0 0 1-1 1m1.5-4h-3V2.75C14.5 2 14.5 1 16 1s1.5 1 1.5 1.75z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-editLock,.mw-ui-icon-editLock-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E edit lock %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M12 12a2 2 0 0 1-2-2V5.25l-9 9V19h4.75l7-7zm7-8h-.5V2.5a2.5 2.5 0 0 0-5 0V4H13a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1m-3 4a1 1 0 1 1 1-1 1 1 0 0 1-1 1m1.5-4h-3V2.75C14.5 2 14.5 1 16 1s1.5 1 1.5 1.75z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-editUndo,.mw-ui-icon-editUndo:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E undo edit %3C/title%3E%3Cpath d=%22M1 14.25V19h4.75l8.33-8.33-5.27-4.23zM13 2.86V0L8 4l5 4V5h.86c2.29 0 4 1.43 4 4.29H20a6.51 6.51 0 0 0-6.14-6.43z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-editUndo,.mw-ui-icon-editUndo-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E undo edit %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M1 14.25V19h4.75l8.33-8.33-5.27-4.23zM13 2.86V0L8 4l5 4V5h.86c2.29 0 4 1.43 4 4.29H20a6.51 6.51 0 0 0-6.14-6.43z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-editUndo,.mw-ui-icon-editUndo-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E undo edit %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M1 14.25V19h4.75l8.33-8.33-5.27-4.23zM13 2.86V0L8 4l5 4V5h.86c2.29 0 4 1.43 4 4.29H20a6.51 6.51 0 0 0-6.14-6.43z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-link,.mw-ui-icon-link:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E link %3C/title%3E%3Cpath d=%22M4.83 15h2.91a4.9 4.9 0 0 1-1.55-2H5a3 3 0 1 1 0-6h3a3 3 0 0 1 2.82 4h2.1a5 5 0 0 0 .08-.83v-.34A4.83 4.83 0 0 0 8.17 5H4.83A4.83 4.83 0 0 0 0 9.83v.34A4.83 4.83 0 0 0 4.83 15%22/%3E%3Cpath d=%22M15.17 5h-2.91a4.9 4.9 0 0 1 1.55 2H15a3 3 0 1 1 0 6h-3a3 3 0 0 1-2.82-4h-2.1a5 5 0 0 0-.08.83v.34A4.83 4.83 0 0 0 11.83 15h3.34A4.83 4.83 0 0 0 20 10.17v-.34A4.83 4.83 0 0 0 15.17 5%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-link,.mw-ui-icon-link-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E link %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M4.83 15h2.91a4.9 4.9 0 0 1-1.55-2H5a3 3 0 1 1 0-6h3a3 3 0 0 1 2.82 4h2.1a5 5 0 0 0 .08-.83v-.34A4.83 4.83 0 0 0 8.17 5H4.83A4.83 4.83 0 0 0 0 9.83v.34A4.83 4.83 0 0 0 4.83 15%22/%3E%3Cpath d=%22M15.17 5h-2.91a4.9 4.9 0 0 1 1.55 2H15a3 3 0 1 1 0 6h-3a3 3 0 0 1-2.82-4h-2.1a5 5 0 0 0-.08.83v.34A4.83 4.83 0 0 0 11.83 15h3.34A4.83 4.83 0 0 0 20 10.17v-.34A4.83 4.83 0 0 0 15.17 5%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-link,.mw-ui-icon-link-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E link %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M4.83 15h2.91a4.9 4.9 0 0 1-1.55-2H5a3 3 0 1 1 0-6h3a3 3 0 0 1 2.82 4h2.1a5 5 0 0 0 .08-.83v-.34A4.83 4.83 0 0 0 8.17 5H4.83A4.83 4.83 0 0 0 0 9.83v.34A4.83 4.83 0 0 0 4.83 15%22/%3E%3Cpath d=%22M15.17 5h-2.91a4.9 4.9 0 0 1 1.55 2H15a3 3 0 1 1 0 6h-3a3 3 0 0 1-2.82-4h-2.1a5 5 0 0 0-.08.83v.34A4.83 4.83 0 0 0 11.83 15h3.34A4.83 4.83 0 0 0 20 10.17v-.34A4.83 4.83 0 0 0 15.17 5%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-unLink,.mw-ui-icon-unLink:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E unlink %3C/title%3E%3Cpath d=%22M4.83 5A4.83 4.83 0 0 0 0 9.83v.34A4.83 4.83 0 0 0 4.83 15h2.91a4.9 4.9 0 0 1-1.55-2H5c-4 0-4-6 0-6h3q.113.002.225.012L6.215 5zm7.43 0a4.9 4.9 0 0 1 1.55 2H15c3.179.003 4.17 4.3 1.314 5.695l1.508 1.508A4.83 4.83 0 0 0 20 10.17v-.34A4.83 4.83 0 0 0 15.17 5zm-3.612.03 4.329 4.327A4.83 4.83 0 0 0 8.648 5.03M7.227 8.411C7.17 8.595 7.08 9 7.08 9c-.045.273-.08.584-.08.83v.34A4.83 4.83 0 0 0 11.83 15h3.34q.475 0 .941-.094L14.205 13H12c-2.067-.006-3.51-2.051-2.82-4zm3.755 1.36A3 3 0 0 1 10.82 11h1.389z%22/%3E%3Cpath d=%22M1.22 0 0 1.22 18.8 20l1.2-1.22z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-unLink,.mw-ui-icon-unLink-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E unlink %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M4.83 5A4.83 4.83 0 0 0 0 9.83v.34A4.83 4.83 0 0 0 4.83 15h2.91a4.9 4.9 0 0 1-1.55-2H5c-4 0-4-6 0-6h3q.113.002.225.012L6.215 5zm7.43 0a4.9 4.9 0 0 1 1.55 2H15c3.179.003 4.17 4.3 1.314 5.695l1.508 1.508A4.83 4.83 0 0 0 20 10.17v-.34A4.83 4.83 0 0 0 15.17 5zm-3.612.03 4.329 4.327A4.83 4.83 0 0 0 8.648 5.03M7.227 8.411C7.17 8.595 7.08 9 7.08 9c-.045.273-.08.584-.08.83v.34A4.83 4.83 0 0 0 11.83 15h3.34q.475 0 .941-.094L14.205 13H12c-2.067-.006-3.51-2.051-2.82-4zm3.755 1.36A3 3 0 0 1 10.82 11h1.389z%22/%3E%3Cpath d=%22M1.22 0 0 1.22 18.8 20l1.2-1.22z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-unLink,.mw-ui-icon-unLink-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E unlink %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M4.83 5A4.83 4.83 0 0 0 0 9.83v.34A4.83 4.83 0 0 0 4.83 15h2.91a4.9 4.9 0 0 1-1.55-2H5c-4 0-4-6 0-6h3q.113.002.225.012L6.215 5zm7.43 0a4.9 4.9 0 0 1 1.55 2H15c3.179.003 4.17 4.3 1.314 5.695l1.508 1.508A4.83 4.83 0 0 0 20 10.17v-.34A4.83 4.83 0 0 0 15.17 5zm-3.612.03 4.329 4.327A4.83 4.83 0 0 0 8.648 5.03M7.227 8.411C7.17 8.595 7.08 9 7.08 9c-.045.273-.08.584-.08.83v.34A4.83 4.83 0 0 0 11.83 15h3.34q.475 0 .941-.094L14.205 13H12c-2.067-.006-3.51-2.051-2.82-4zm3.755 1.36A3 3 0 0 1 10.82 11h1.389z%22/%3E%3Cpath d=%22M1.22 0 0 1.22 18.8 20l1.2-1.22z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-destructive.oo-ui-icon-unLink,.mw-ui-icon-unLink-destructive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E unlink %3C/title%3E%3Cg fill=%22%23d73333%22%3E%3Cpath d=%22M4.83 5A4.83 4.83 0 0 0 0 9.83v.34A4.83 4.83 0 0 0 4.83 15h2.91a4.9 4.9 0 0 1-1.55-2H5c-4 0-4-6 0-6h3q.113.002.225.012L6.215 5zm7.43 0a4.9 4.9 0 0 1 1.55 2H15c3.179.003 4.17 4.3 1.314 5.695l1.508 1.508A4.83 4.83 0 0 0 20 10.17v-.34A4.83 4.83 0 0 0 15.17 5zm-3.612.03 4.329 4.327A4.83 4.83 0 0 0 8.648 5.03M7.227 8.411C7.17 8.595 7.08 9 7.08 9c-.045.273-.08.584-.08.83v.34A4.83 4.83 0 0 0 11.83 15h3.34q.475 0 .941-.094L14.205 13H12c-2.067-.006-3.51-2.051-2.82-4zm3.755 1.36A3 3 0 0 1 10.82 11h1.389z%22/%3E%3Cpath d=%22M1.22 0 0 1.22 18.8 20l1.2-1.22z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-linkExternal,.mw-ui-icon-linkExternal:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E external link %3C/title%3E%3Cpath d=%22M19 1h-8l3.286 3.286L6 12l1.371 1.472 8.332-7.77.007.008L19 9zM2 5h4v2H3v10h10v-4.004h2V18a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-linkExternal,.mw-ui-icon-linkExternal-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E external link %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M19 1h-8l3.286 3.286L6 12l1.371 1.472 8.332-7.77.007.008L19 9zM2 5h4v2H3v10h10v-4.004h2V18a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-linkExternal,.mw-ui-icon-linkExternal-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E external link %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M19 1h-8l3.286 3.286L6 12l1.371 1.472 8.332-7.77.007.008L19 9zM2 5h4v2H3v10h10v-4.004h2V18a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-linkSecure,.mw-ui-icon-linkSecure:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E secure link %3C/title%3E%3Cpath d=%22M16.07 8H15V5s0-5-5-5-5 5-5 5v3H3.93A1.93 1.93 0 0 0 2 9.93v8.15A1.93 1.93 0 0 0 3.93 20h12.14A1.93 1.93 0 0 0 18 18.07V9.93A1.93 1.93 0 0 0 16.07 8M7 5.5C7 4 7 2 10 2s3 2 3 3.5V8H7zM10 16a2 2 0 1 1 2-2 2 2 0 0 1-2 2%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-linkSecure,.mw-ui-icon-linkSecure-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E secure link %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M16.07 8H15V5s0-5-5-5-5 5-5 5v3H3.93A1.93 1.93 0 0 0 2 9.93v8.15A1.93 1.93 0 0 0 3.93 20h12.14A1.93 1.93 0 0 0 18 18.07V9.93A1.93 1.93 0 0 0 16.07 8M7 5.5C7 4 7 2 10 2s3 2 3 3.5V8H7zM10 16a2 2 0 1 1 2-2 2 2 0 0 1-2 2%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-linkSecure,.mw-ui-icon-linkSecure-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E secure link %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M16.07 8H15V5s0-5-5-5-5 5-5 5v3H3.93A1.93 1.93 0 0 0 2 9.93v8.15A1.93 1.93 0 0 0 3.93 20h12.14A1.93 1.93 0 0 0 18 18.07V9.93A1.93 1.93 0 0 0 16.07 8M7 5.5C7 4 7 2 10 2s3 2 3 3.5V8H7zM10 16a2 2 0 1 1 2-2 2 2 0 0 1-2 2%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-redo,.mw-ui-icon-redo:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E redo %3C/title%3E%3Cpath d=%22M19 8.5 12 3v11zM12 7v3h-1c-4 0-7 2-7 6v1H1v-1c0-6 5-9 10-9z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-redo,.mw-ui-icon-redo-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E redo %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M19 8.5 12 3v11zM12 7v3h-1c-4 0-7 2-7 6v1H1v-1c0-6 5-9 10-9z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-redo,.mw-ui-icon-redo-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E redo %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M19 8.5 12 3v11zM12 7v3h-1c-4 0-7 2-7 6v1H1v-1c0-6 5-9 10-9z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-icon-undo,.mw-ui-icon-undo:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E undo %3C/title%3E%3Cpath d=%22M1 8.5 8 14v-4h1c4 0 7 2 7 6v1h3v-1c0-6-5-9-10-9H8V3z%22/%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-invert.oo-ui-icon-undo,.mw-ui-icon-undo-invert:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E undo %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M1 8.5 8 14v-4h1c4 0 7 2 7 6v1h3v-1c0-6-5-9-10-9H8V3z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}.oo-ui-image-progressive.oo-ui-icon-undo,.mw-ui-icon-undo-progressive:before{background-image:url(\\\\\\\"data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E undo %3C/title%3E%3Cg fill=%22%2336c%22%3E%3Cpath d=%22M1 8.5 8 14v-4h1c4 0 7 2 7 6v1h3v-1c0-6-5-9-10-9H8V3z%22/%3E%3C/g%3E%3C/svg%3E\\\\\\\")}\\\"]}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs-ui.styles.icons-editing-core&skin=vector-2022&version=1tj1m\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs-ui.styles.icons-editing-core&skin=vector-2022&sourcemap=1&version=1tj1m\",\"oojs-ui-widgets@1bml7\":\"mw.loader.impl(function(){return[\\\"oojs-ui-widgets@1bml7\\\",function($,jQuery,require,module){(function(OO){'use strict';OO.ui.mixin.DraggableElement=function OoUiMixinDraggableElement(config){config=config||{};this.index=null;this.$handle=config.$handle||this.$element;this.wasHandleUsed=null;this.$element.addClass('oo-ui-draggableElement').on({mousedown:this.onDragMouseDown.bind(this),dragstart:this.onDragStart.bind(this),dragover:this.onDragOver.bind(this),dragend:this.onDragEnd.bind(this),drop:this.onDrop.bind(this)});this.$handle.addClass('oo-ui-draggableElement-handle');this.toggleDraggable(config.draggable===undefined?true:!!config.draggable);};OO.initClass(OO.ui.mixin.DraggableElement);OO.ui.mixin.DraggableElement.static.cancelButtonMouseDownEvents=false;OO.ui.mixin.DraggableElement.prototype.toggleDraggable=function(isDraggable){isDraggable=isDraggable!==undefined?!!isDraggable:!this.draggable;if(this.draggable!==isDraggable){this.draggable=isDraggable;this.$handle.toggleClass('oo-ui-draggableElement-undraggable',!this.draggable);this.$element.prop('draggable',this.draggable);\\n}};OO.ui.mixin.DraggableElement.prototype.isDraggable=function(){return this.draggable;};OO.ui.mixin.DraggableElement.prototype.onDragMouseDown=function(e){if(!this.isDraggable()){return;}this.wasHandleUsed=this.$handle[0]===this.$element[0]||OO.ui.contains(this.$handle[0],e.target,true);};OO.ui.mixin.DraggableElement.prototype.onDragStart=function(e){if(!this.wasHandleUsed||!this.isDraggable()){return false;}const dataTransfer=e.originalEvent.dataTransfer;dataTransfer.dropEffect='none';dataTransfer.effectAllowed='move';try{dataTransfer.setData('application-x/OOUI-draggable',this.getIndex());}catch(err){}if(!dataTransfer.getData('text')){try{dataTransfer.setData('text',' ');}catch(err){}}this.$element.addClass('oo-ui-draggableElement-clone');setTimeout(()=>{this.$element.removeClass('oo-ui-draggableElement-clone').addClass('oo-ui-draggableElement-placeholder');});this.emit('dragstart',this);return true;};OO.ui.mixin.DraggableElement.prototype.onDragEnd=function(){this.$element.removeClass('oo-ui-draggableElement-placeholder');\\nthis.emit('dragend');};OO.ui.mixin.DraggableElement.prototype.onDrop=function(e){e.preventDefault();this.emit('drop',e);};OO.ui.mixin.DraggableElement.prototype.onDragOver=function(e){e.preventDefault();};OO.ui.mixin.DraggableElement.prototype.setIndex=function(index){if(this.index!==index){this.index=index;this.$element.data('index',index);}};OO.ui.mixin.DraggableElement.prototype.getIndex=function(){return this.index;};OO.ui.mixin.DraggableGroupElement=function OoUiMixinDraggableGroupElement(config){config=config||{};OO.ui.mixin.GroupElement.call(this,config);this.orientation=config.orientation||'vertical';this.dragItem=null;this.itemKeys={};this.dir=null;this.itemsOrder=null;this.draggable=config.draggable===undefined?true:!!config.draggable;this.aggregate({dragstart:'itemDragStart',dragend:'itemDragEnd',drop:'itemDrop'});this.connect(this,{itemDragStart:'onItemDragStart',itemDrop:'onItemDropOrDragEnd',itemDragEnd:'onItemDropOrDragEnd'});this.addItems(config.items||[]);this.$element\\n.addClass('oo-ui-draggableGroupElement').toggleClass('oo-ui-draggableGroupElement-horizontal',this.orientation==='horizontal');};OO.mixinClass(OO.ui.mixin.DraggableGroupElement,OO.ui.mixin.GroupElement);OO.ui.mixin.DraggableGroupElement.prototype.toggleDraggable=function(isDraggable){isDraggable=isDraggable!==undefined?!!isDraggable:!this.draggable;if(this.draggable!==isDraggable){this.draggable=isDraggable;this.getItems().forEach((item)=>{item.toggleDraggable(this.draggable);});this.emit('draggable',this.draggable);}};OO.ui.mixin.DraggableGroupElement.prototype.isDraggable=function(){return this.draggable;};OO.ui.mixin.DraggableGroupElement.prototype.onItemDragStart=function(item){if(!this.isDraggable()){return;}this.itemsOrder=this.items.slice();this.updateIndexes();if(this.orientation==='horizontal'){this.dir=this.$element.css('direction');}this.setDragItem(item);};OO.ui.mixin.DraggableGroupElement.prototype.updateIndexes=function(){for(let i=0,len=this.itemsOrder.length;i<len;i++){\\nthis.itemsOrder[i].setIndex(i);}};OO.ui.mixin.DraggableGroupElement.prototype.onItemDropOrDragEnd=function(){const item=this.getDragItem();if(item){const originalIndex=this.items.indexOf(item);const targetIndex=item.getIndex()+(item.getIndex()>originalIndex?1:0);if(targetIndex!==originalIndex){this.reorder(this.getDragItem(),targetIndex);this.emit('reorder',this.getDragItem(),targetIndex);}this.updateIndexes();}this.unsetDragItem();return false;};OO.ui.mixin.DraggableGroupElement.prototype.onDragOver=function(e){const item=this.getDragItem(),dragItemIndex=item.getIndex();const overIndex=$(e.target).closest('.oo-ui-draggableElement').data('index');if(overIndex!==undefined&&overIndex!==dragItemIndex){const targetIndex=overIndex+(overIndex>dragItemIndex?1:0);if(targetIndex>0){this.$group.children().eq(targetIndex-1).after(item.$element);}else{this.$group.prepend(item.$element);}this.itemsOrder.splice(overIndex,0,this.itemsOrder.splice(dragItemIndex,1)[0]);this.updateIndexes();this.emit('drag',item,targetIndex);\\n}e.preventDefault();};OO.ui.mixin.DraggableGroupElement.prototype.reorder=function(item,newIndex){this.addItems([item],newIndex);};OO.ui.mixin.DraggableGroupElement.prototype.setDragItem=function(item){if(this.dragItem!==item){this.dragItem=item;this.$element.on('dragover',this.onDragOver.bind(this));this.$element.addClass('oo-ui-draggableGroupElement-dragging');}};OO.ui.mixin.DraggableGroupElement.prototype.unsetDragItem=function(){if(this.dragItem){this.dragItem=null;this.$element.off('dragover');this.$element.removeClass('oo-ui-draggableGroupElement-dragging');}};OO.ui.mixin.DraggableGroupElement.prototype.getDragItem=function(){return this.dragItem;};OO.ui.mixin.RequestManager=function OoUiMixinRequestManager(config){this.requestCache={};this.requestQuery=null;this.requestRequest=null;this.showPendingRequest=!!this.pushPending&&config.showPendingRequest!==false;};OO.initClass(OO.ui.mixin.RequestManager);OO.ui.mixin.RequestManager.prototype.getRequestData=function(){const value=this.getRequestQuery(),\\ndeferred=$.Deferred();this.abortRequest();if(Object.prototype.hasOwnProperty.call(this.requestCache,value)){deferred.resolve(this.requestCache[value]);}else{if(this.showPendingRequest){this.pushPending();}this.requestQuery=value;const ourRequest=this.requestRequest=this.getRequest();ourRequest.always(()=>{if(this.showPendingRequest){this.popPending();}}).done((response)=>{if(ourRequest===this.requestRequest){this.requestQuery=null;this.requestRequest=null;this.requestCache[value]=this.getRequestCacheDataFromResponse(response);deferred.resolve(this.requestCache[value]);}}).fail(()=>{if(ourRequest===this.requestRequest){this.requestQuery=null;this.requestRequest=null;deferred.reject();}});}return deferred.promise();};OO.ui.mixin.RequestManager.prototype.abortRequest=function(){const oldRequest=this.requestRequest;if(oldRequest){this.requestRequest=null;this.requestQuery=null;oldRequest.abort();}};OO.ui.mixin.RequestManager.prototype.getRequestQuery=null;OO.ui.mixin.RequestManager.prototype.getRequest=null;\\nOO.ui.mixin.RequestManager.prototype.getRequestCacheDataFromResponse=null;OO.ui.mixin.LookupElement=function OoUiMixinLookupElement(config){config=Object.assign({highlightFirst:true},config);OO.ui.mixin.RequestManager.call(this,config);this.$overlay=(config.$overlay===true?OO.ui.getDefaultOverlay():config.$overlay)||this.$element;this.lookupMenu=new OO.ui.MenuSelectWidget(Object.assign({widget:this,input:this,$floatableContainer:config.$container||this.$element},config.menu));this.allowSuggestionsWhenEmpty=config.allowSuggestionsWhenEmpty||false;this.lookupsDisabled=false;this.lookupInputFocused=false;this.lookupHighlightFirstItem=config.highlightFirst;this.showSuggestionsOnFocus=config.showSuggestionsOnFocus!==false;this.$input.on({focus:this.onLookupInputFocus.bind(this),blur:this.onLookupInputBlur.bind(this),mousedown:this.onLookupInputMouseDown.bind(this)});this.connect(this,{change:'onLookupInputChange'});this.lookupMenu.connect(this,{toggle:'onLookupMenuToggle',choose:'onLookupMenuChoose'\\n});this.$input.attr({role:'combobox','aria-owns':this.lookupMenu.getElementId(),'aria-autocomplete':'list'});this.$element.addClass('oo-ui-lookupElement');this.lookupMenu.$element.addClass('oo-ui-lookupElement-menu');this.$overlay.append(this.lookupMenu.$element);};OO.mixinClass(OO.ui.mixin.LookupElement,OO.ui.mixin.RequestManager);OO.ui.mixin.LookupElement.prototype.onLookupInputFocus=function(){this.lookupInputFocused=true;if(this.showSuggestionsOnFocus){this.populateLookupMenu();}};OO.ui.mixin.LookupElement.prototype.onLookupInputBlur=function(){this.closeLookupMenu();this.lookupInputFocused=false;};OO.ui.mixin.LookupElement.prototype.onLookupInputMouseDown=function(){if(!this.lookupMenu.isVisible()&&(this.lookupInputFocused||!this.showSuggestionsOnFocus)){this.populateLookupMenu();}};OO.ui.mixin.LookupElement.prototype.onLookupInputChange=function(){if(this.lookupInputFocused){this.populateLookupMenu();}};OO.ui.mixin.LookupElement.prototype.onLookupMenuToggle=function(visible){if(!visible){\\nthis.abortLookupRequest();this.lookupMenu.clearItems();}};OO.ui.mixin.LookupElement.prototype.onLookupMenuChoose=function(item){this.setValue(item.getData());};OO.ui.mixin.LookupElement.prototype.getLookupMenu=function(){return this.lookupMenu;};OO.ui.mixin.LookupElement.prototype.setLookupsDisabled=function(disabled){this.lookupsDisabled=!!disabled;};OO.ui.mixin.LookupElement.prototype.openLookupMenu=function(){if(!this.lookupMenu.isEmpty()){this.lookupMenu.toggle(true);}return this;};OO.ui.mixin.LookupElement.prototype.closeLookupMenu=function(){this.lookupMenu.toggle(false);this.abortLookupRequest();this.lookupMenu.clearItems();return this;};OO.ui.mixin.LookupElement.prototype.populateLookupMenu=function(){const value=this.getValue();if(this.lookupsDisabled||this.isReadOnly()){return;}if(!this.allowSuggestionsWhenEmpty&&value===''){this.closeLookupMenu();}else if(value!==this.lookupQuery){this.getLookupMenuItems().done((items)=>{this.lookupMenu.clearItems();if(items.length){this.lookupMenu\\n.addItems(items).toggle(true);this.initializeLookupMenuSelection();}else{this.lookupMenu.toggle(false);}}).fail(()=>{this.lookupMenu.clearItems();this.lookupMenu.toggle(false);});}return this;};OO.ui.mixin.LookupElement.prototype.initializeLookupMenuSelection=function(){if(this.lookupHighlightFirstItem&&!this.lookupMenu.findSelectedItem()){this.lookupMenu.highlightItem(this.lookupMenu.findFirstSelectableItem());}};OO.ui.mixin.LookupElement.prototype.getLookupMenuItems=function(){return this.getRequestData().then((data)=>this.getLookupMenuOptionsFromData(data));};OO.ui.mixin.LookupElement.prototype.abortLookupRequest=function(){this.abortRequest();};OO.ui.mixin.LookupElement.prototype.getLookupRequest=null;OO.ui.mixin.LookupElement.prototype.getLookupCacheDataFromResponse=null;OO.ui.mixin.LookupElement.prototype.getLookupMenuOptionsFromData=null;OO.ui.mixin.LookupElement.prototype.setReadOnly=function(readOnly){OO.ui.TextInputWidget.prototype.setReadOnly.call(this,readOnly);if(this.isReadOnly()&&this.lookupMenu){\\nthis.closeLookupMenu();}return this;};OO.ui.mixin.LookupElement.prototype.getRequestQuery=function(){return this.getValue();};OO.ui.mixin.LookupElement.prototype.getRequest=function(){return this.getLookupRequest();};OO.ui.mixin.LookupElement.prototype.getRequestCacheDataFromResponse=function(response){return this.getLookupCacheDataFromResponse(response);};OO.ui.TabPanelLayout=function OoUiTabPanelLayout(name,config){if(OO.isPlainObject(name)&&config===undefined){config=name;name=config.name;}config=Object.assign({scrollable:true},config);OO.ui.TabPanelLayout.super.call(this,config);this.name=name;this.label=config.label;this.tabItemConfig=config.tabItemConfig||{};this.tabItem=null;this.active=false;this.$element.addClass('oo-ui-tabPanelLayout').attr('role','tabpanel');};OO.inheritClass(OO.ui.TabPanelLayout,OO.ui.PanelLayout);OO.ui.TabPanelLayout.prototype.getName=function(){return this.name;};OO.ui.TabPanelLayout.prototype.isActive=function(){return this.active;};OO.ui.TabPanelLayout.prototype.getTabItem=function(){\\nreturn this.tabItem;};OO.ui.TabPanelLayout.prototype.getTabItemConfig=function(){return this.tabItemConfig;};OO.ui.TabPanelLayout.prototype.setTabItem=function(tabItem){this.tabItem=tabItem||null;if(tabItem){this.setupTabItem();}return this;};OO.ui.TabPanelLayout.prototype.setupTabItem=function(){this.$element.attr('aria-labelledby',this.tabItem.getElementId());this.tabItem.$element.attr('aria-controls',this.getElementId());if(this.label){this.tabItem.setLabel(this.label);}return this;};OO.ui.TabPanelLayout.prototype.setActive=function(active){active=!!active;if(active!==this.active){this.active=active;this.$element.toggleClass('oo-ui-tabPanelLayout-active',this.active);this.emit('active',this.active);}};OO.ui.PageLayout=function OoUiPageLayout(name,config){if(OO.isPlainObject(name)&&config===undefined){config=name;name=config.name;}config=Object.assign({scrollable:true},config);OO.ui.PageLayout.super.call(this,config);this.name=name;this.outlineItem=null;this.active=false;this.$element.addClass('oo-ui-pageLayout');\\n};OO.inheritClass(OO.ui.PageLayout,OO.ui.PanelLayout);OO.ui.PageLayout.prototype.getName=function(){return this.name;};OO.ui.PageLayout.prototype.isActive=function(){return this.active;};OO.ui.PageLayout.prototype.getOutlineItem=function(){return this.outlineItem;};OO.ui.PageLayout.prototype.setOutlineItem=function(outlineItem){this.outlineItem=outlineItem||null;if(outlineItem){this.setupOutlineItem();}return this;};OO.ui.PageLayout.prototype.setupOutlineItem=function(){};OO.ui.PageLayout.prototype.setActive=function(active){active=!!active;if(active!==this.active){this.active=active;this.$element.toggleClass('oo-ui-pageLayout-active',active);this.emit('active',this.active);}};OO.ui.StackLayout=function OoUiStackLayout(config){config=Object.assign({scrollable:!!(config&&config.continuous)},config);OO.ui.StackLayout.super.call(this,config);OO.ui.mixin.GroupElement.call(this,Object.assign({$group:this.$element},config));this.currentItem=null;this.setContinuous(!!config.continuous);this.hideUntilFound=!!config.hideUntilFound;\\nthis.$element.addClass('oo-ui-stackLayout');this.addItems(config.items||[]);};OO.inheritClass(OO.ui.StackLayout,OO.ui.PanelLayout);OO.mixinClass(OO.ui.StackLayout,OO.ui.mixin.GroupElement);OO.ui.StackLayout.prototype.setContinuous=function(continuous){this.continuous=continuous;this.$element.toggleClass('oo-ui-stackLayout-continuous',!!continuous);this.updateHiddenState(this.items,this.currentItem);};OO.ui.StackLayout.prototype.isContinuous=function(){return this.continuous;};OO.ui.StackLayout.prototype.getCurrentItem=function(){return this.currentItem;};OO.ui.StackLayout.prototype.unsetCurrentItem=function(){const prevItem=this.currentItem;if(prevItem===null){return;}this.currentItem=null;this.emit('set',null);};OO.ui.StackLayout.prototype.setHideUntilFound=function(hideUntilFound){this.hideUntilFound=hideUntilFound;this.updateHiddenState(this.items,this.currentItem);};OO.ui.StackLayout.prototype.addItems=function(items,index){if(!items||items.length===0){return this;}this.updateHiddenState(items,this.currentItem);\\nOO.ui.mixin.GroupElement.prototype.addItems.call(this,items,index);if(!this.currentItem){this.setItem(items[0]);}return this;};OO.ui.StackLayout.prototype.removeItems=function(itemsToRemove){const isCurrentItemRemoved=itemsToRemove.includes(this.currentItem);let nextItem;if(isCurrentItemRemoved){let i=this.items.indexOf(this.currentItem);do{nextItem=this.items[++i];}while(nextItem&&itemsToRemove.includes(nextItem));}OO.ui.mixin.GroupElement.prototype.removeItems.call(this,itemsToRemove);if(isCurrentItemRemoved){if(this.items.length){this.setItem(nextItem||this.items[this.items.length-1]);}else{this.unsetCurrentItem();}}return this;};OO.ui.StackLayout.prototype.clearItems=function(){this.unsetCurrentItem();OO.ui.mixin.GroupElement.prototype.clearItems.call(this);return this;};OO.ui.StackLayout.prototype.setItem=function(item){if(item!==this.currentItem){this.updateHiddenState(this.items,item);if(this.items.includes(item)){this.currentItem=item;this.emit('set',item);}else{this.unsetCurrentItem();\\n}}return this;};OO.ui.StackLayout.prototype.resetScroll=function(){if(this.isContinuous()){return OO.ui.StackLayout.super.prototype.resetScroll.call(this);}this.getItems().forEach((panel)=>{const hidden=panel.$element.hasClass('oo-ui-element-hidden');panel.$element.removeClass('oo-ui-element-hidden');panel.resetScroll();if(hidden){panel.$element.addClass('oo-ui-element-hidden');}});return this;};OO.ui.StackLayout.prototype.updateHiddenState=function(items,selectedItem){if(!this.isContinuous()){items.forEach((item)=>{if(!selectedItem||selectedItem!==item){const isDisabled=item instanceof OO.ui.TabPanelLayout&&item.getTabItem()&&item.getTabItem().isDisabled();const hideUntilFound=!isDisabled&&this.hideUntilFound;item.$element[0].setAttribute('hidden',hideUntilFound?'until-found':'hidden');item.$element.attr('aria-hidden','true');}});if(selectedItem){selectedItem.$element[0].removeAttribute('hidden');selectedItem.$element.removeAttr('aria-hidden');}}else{items.forEach((item)=>{item.$element[0].removeAttribute('hidden');\\nitem.$element.removeAttr('aria-hidden');});}};OO.ui.MenuLayout=function OoUiMenuLayout(config){config=Object.assign({expanded:true,showMenu:true,menuPosition:'before'},config);OO.ui.MenuLayout.super.call(this,config);this.menuPanel=null;this.contentPanel=null;this.expanded=!!config.expanded;this.$menu=$('<div>');this.$content=$('<div>');this.$menu.addClass('oo-ui-menuLayout-menu');this.$content.addClass('oo-ui-menuLayout-content');this.$element.addClass('oo-ui-menuLayout');if(config.expanded){this.$element.addClass('oo-ui-menuLayout-expanded');}else{this.$element.addClass('oo-ui-menuLayout-static');}if(config.menuPanel){this.setMenuPanel(config.menuPanel);}if(config.contentPanel){this.setContentPanel(config.contentPanel);}this.setMenuPosition(config.menuPosition);this.toggleMenu(config.showMenu);};OO.inheritClass(OO.ui.MenuLayout,OO.ui.Layout);OO.ui.MenuLayout.prototype.toggleMenu=function(showMenu){showMenu=showMenu===undefined?!this.showMenu:!!showMenu;if(this.showMenu!==showMenu){\\nthis.showMenu=showMenu;this.$element.toggleClass('oo-ui-menuLayout-showMenu',this.showMenu).toggleClass('oo-ui-menuLayout-hideMenu',!this.showMenu);this.$menu.attr('aria-hidden',this.showMenu?'false':'true');}return this;};OO.ui.MenuLayout.prototype.isMenuVisible=function(){return this.showMenu;};OO.ui.MenuLayout.prototype.setMenuPosition=function(position){if(!['top','bottom','before','after'].includes(position)){position='before';}this.$element.removeClass('oo-ui-menuLayout-'+this.menuPosition);this.menuPosition=position;if(this.menuPosition==='top'||this.menuPosition==='before'){this.$element.append(this.$menu,this.$content);}else{this.$element.append(this.$content,this.$menu);}this.$element.addClass('oo-ui-menuLayout-'+position);return this;};OO.ui.MenuLayout.prototype.getMenuPosition=function(){return this.menuPosition;};OO.ui.MenuLayout.prototype.setMenuPanel=function(menuPanel){this.menuPanel=menuPanel;this.$menu.append(this.menuPanel.$element);};OO.ui.MenuLayout.prototype.setContentPanel=function(contentPanel){\\nthis.contentPanel=contentPanel;this.$content.append(this.contentPanel.$element);};OO.ui.MenuLayout.prototype.clearMenuPanel=function(){this.menuPanel=null;this.$menu.empty();};OO.ui.MenuLayout.prototype.clearContentPanel=function(){this.contentPanel=null;this.$content.empty();};OO.ui.MenuLayout.prototype.resetScroll=function(){if(this.menuPanel){this.menuPanel.resetScroll();}if(this.contentPanel){this.contentPanel.resetScroll();}return this;};OO.ui.BookletLayout=function OoUiBookletLayout(config){config=config||{};OO.ui.BookletLayout.super.call(this,config);this.currentPageName=null;this.pages={};this.ignoreFocus=false;this.stackLayout=new OO.ui.StackLayout({continuous:!!config.continuous,expanded:this.expanded});this.setContentPanel(this.stackLayout);this.autoFocus=config.autoFocus===undefined||!!config.autoFocus;this.outlineVisible=false;this.outlined=!!config.outlined;if(this.outlined){this.editable=!!config.editable;this.outlineControlsWidget=null;this.outlineSelectWidget=new OO.ui.OutlineSelectWidget();\\nthis.outlinePanel=new OO.ui.PanelLayout({expanded:this.expanded,scrollable:true});this.setMenuPanel(this.outlinePanel);this.outlineVisible=true;if(this.editable){this.outlineControlsWidget=new OO.ui.OutlineControlsWidget(this.outlineSelectWidget);}}this.toggleMenu(this.outlined);this.stackLayout.connect(this,{set:'onStackLayoutSet'});if(this.outlined){this.outlineSelectWidget.connect(this,{select:'onOutlineSelectWidgetSelect'});}if(this.autoFocus){this.stackLayout.$element.on('focusin',this.onStackLayoutFocus.bind(this));}this.$element.addClass('oo-ui-bookletLayout');this.stackLayout.$element.addClass('oo-ui-bookletLayout-stackLayout');if(this.outlined){this.outlinePanel.$element.addClass('oo-ui-bookletLayout-outlinePanel').append(this.outlineSelectWidget.$element);if(this.editable){this.outlinePanel.$element.addClass('oo-ui-bookletLayout-outlinePanel-editable').append(this.outlineControlsWidget.$element);}}};OO.inheritClass(OO.ui.BookletLayout,OO.ui.MenuLayout);OO.ui.BookletLayout.prototype.onStackLayoutFocus=function(e){\\nconst $target=$(e.target).closest('.oo-ui-pageLayout');for(const name in this.pages){if(this.pages[name].$element[0]===$target[0]&&name!==this.currentPageName){this.setPage(name);break;}}};OO.ui.BookletLayout.prototype.onStackLayoutSet=function(page){if(!page){return;}let promise;if(this.stackLayout.isContinuous()&&!this.scrolling){promise=page.scrollElementIntoView();}else{promise=$.Deferred().resolve();}if(this.autoFocus&&!OO.ui.isMobile()&&!this.scrolling){promise.done(()=>{this.focus();});}};OO.ui.BookletLayout.prototype.focus=function(itemIndex){const items=this.stackLayout.getItems();let page;if(itemIndex!==undefined&&items[itemIndex]){page=items[itemIndex];}else{page=this.stackLayout.getCurrentItem();}if(!page&&this.outlined){this.selectFirstSelectablePage();page=this.stackLayout.getCurrentItem();}if(!page){return;}if(!OO.ui.contains(page.$element[0],this.getElementDocument().activeElement,true)){page.focus();}};OO.ui.BookletLayout.prototype.focusFirstFocusable=function(){OO.ui.findFocusable(this.stackLayout.$element).focus();\\n};OO.ui.BookletLayout.prototype.onOutlineSelectWidgetSelect=function(item){if(item){this.setPage(item.getData());}};OO.ui.BookletLayout.prototype.isOutlined=function(){return this.outlined;};OO.ui.BookletLayout.prototype.isEditable=function(){return this.editable;};OO.ui.BookletLayout.prototype.isOutlineVisible=function(){return this.outlined&&this.outlineVisible;};OO.ui.BookletLayout.prototype.toggleOutline=function(show){if(this.outlined){show=show===undefined?!this.outlineVisible:!!show;this.outlineVisible=show;this.toggleMenu(show);if(show&&this.editable){setTimeout(()=>{OO.ui.Element.static.reconsiderScrollbars(this.outlinePanel.$element[0]);},OO.ui.theme.getDialogTransitionDuration());}}return this;};OO.ui.BookletLayout.prototype.findClosestPage=function(page){const pages=this.stackLayout.getItems(),index=pages.indexOf(page);if(index===-1){return null;}const next=pages[index+1];const prev=pages[index-1];if(this.outlined){const level=this.outlineSelectWidget.findItemFromData(page.getName()).getLevel();\\nif(prev&&level===this.outlineSelectWidget.findItemFromData(prev.getName()).getLevel()){return prev;}if(next&&level===this.outlineSelectWidget.findItemFromData(next.getName()).getLevel()){return next;}}return prev||next||null;};OO.ui.BookletLayout.prototype.getOutline=function(){return this.outlineSelectWidget;};OO.ui.BookletLayout.prototype.getOutlineControls=function(){return this.outlineControlsWidget;};OO.ui.BookletLayout.prototype.getPage=function(name){return this.pages[name];};OO.ui.BookletLayout.prototype.getCurrentPage=function(){const name=this.getCurrentPageName();return name?this.getPage(name):undefined;};OO.ui.BookletLayout.prototype.getCurrentPageName=function(){return this.currentPageName;};OO.ui.BookletLayout.prototype.addPages=function(pages,index){const stackLayoutPages=this.stackLayout.getItems(),remove=[],items=[];let i,len;let page,name;for(i=0,len=pages.length;i<len;i++){page=pages[i];name=page.getName();if(Object.prototype.hasOwnProperty.call(this.pages,name)){\\nconst currentIndex=stackLayoutPages.indexOf(this.pages[name]);if(currentIndex!==-1&&currentIndex+1<index){index--;}remove.push(this.pages[name]);}}if(remove.length){this.removePages(remove);}for(i=0,len=pages.length;i<len;i++){page=pages[i];name=page.getName();this.pages[page.getName()]=page;if(this.outlined){const item=new OO.ui.OutlineOptionWidget({data:name});page.setOutlineItem(item);items.push(item);}}if(this.outlined){this.outlineSelectWidget.addItems(items,index);}this.stackLayout.addItems(pages,index);this.emit('add',pages,index);return this;};OO.ui.BookletLayout.prototype.removePages=function(pages){const itemsToRemove=[];for(let i=0,len=pages.length;i<len;i++){const page=pages[i];const name=page.getName();delete this.pages[name];if(this.outlined){itemsToRemove.push(this.outlineSelectWidget.findItemFromData(name));page.setOutlineItem(null);}if(this.currentPageName===name){this.currentPageName=null;}}if(itemsToRemove.length){this.outlineSelectWidget.removeItems(itemsToRemove);}\\nthis.stackLayout.removeItems(pages);this.emit('remove',pages);return this;};OO.ui.BookletLayout.prototype.clearPages=function(){const pages=this.stackLayout.getItems();this.pages={};this.currentPageName=null;if(this.outlined){this.outlineSelectWidget.clearItems();for(let i=0,len=pages.length;i<len;i++){pages[i].setOutlineItem(null);}}this.stackLayout.clearItems();this.emit('remove',pages);return this;};OO.ui.BookletLayout.prototype.setPage=function(name){const page=this.pages[name];if(!page||name===this.currentPageName){return;}const previousPage=this.currentPageName?this.pages[this.currentPageName]:null;this.currentPageName=name;if(this.outlined){const selectedItem=this.outlineSelectWidget.findSelectedItem();if(!selectedItem||selectedItem.getData()!==name){this.outlineSelectWidget.selectItemByData(name);}}let $focused;if(previousPage){previousPage.setActive(false);if(this.autoFocus&&!OO.ui.isMobile()&&this.stackLayout.isContinuous()&&OO.ui.findFocusable(page.$element).length!==0){\\n$focused=previousPage.$element.find(':focus');if($focused.length){$focused[0].blur();}}}page.setActive(true);this.stackLayout.setItem(page);if(!this.stackLayout.isContinuous()&&previousPage){$focused=previousPage.$element.find(':focus');if($focused.length){$focused[0].blur();}}this.emit('set',page);};OO.ui.BookletLayout.prototype.resetScroll=function(){OO.ui.BookletLayout.super.prototype.resetScroll.call(this);if(this.outlined&&this.stackLayout.isContinuous()&&this.outlineSelectWidget.findFirstSelectableItem()){this.scrolling=true;this.outlineSelectWidget.selectItem(this.outlineSelectWidget.findFirstSelectableItem());this.scrolling=false;}return this;};OO.ui.BookletLayout.prototype.selectFirstSelectablePage=function(){if(!this.outlineSelectWidget.findSelectedItem()){this.outlineSelectWidget.selectItem(this.outlineSelectWidget.findFirstSelectableItem());}return this;};OO.ui.IndexLayout=function OoUiIndexLayout(config){config=Object.assign({},config,{menuPosition:'top'});OO.ui.IndexLayout.super.call(this,config);\\nthis.currentTabPanelName=null;this.tabPanels=config.tabPanels||{};this.openMatchedPanels=config.openMatchedPanels===undefined||!!config.openMatchedPanels;this.ignoreFocus=false;if(this.contentPanel){this.contentPanel.setHideUntilFound(this.openMatchedPanels);}this.stackLayout=this.contentPanel||new OO.ui.StackLayout({continuous:!!config.continuous,expanded:this.expanded,hideUntilFound:this.openMatchedPanels});this.setContentPanel(this.stackLayout);this.autoFocus=config.autoFocus===undefined||!!config.autoFocus;if(config.tabSelectWidget){this.stackLayout.getItems().forEach((tabPanel,i)=>{if(!tabPanel.getTabItem()){tabPanel.setTabItem(config.tabSelectWidget.items[i]||null);}});}this.tabSelectWidget=config.tabSelectWidget||new OO.ui.TabSelectWidget({framed:config.framed===undefined||config.framed});this.tabPanel=this.menuPanel||new OO.ui.PanelLayout({expanded:this.expanded});this.setMenuPanel(this.tabPanel);this.toggleMenu(true);this.stackLayout.connect(this,{set:'onStackLayoutSet'});if(this.openMatchedPanels){\\nthis.stackLayout.$element.on('beforematch',this.onStackLayoutBeforeMatch.bind(this));}this.tabSelectWidget.connect(this,{select:'onTabSelectWidgetSelect'});if(this.autoFocus){this.stackLayout.$element.on('focusin',this.onStackLayoutFocus.bind(this));}this.$element.addClass('oo-ui-indexLayout');this.stackLayout.$element.addClass('oo-ui-indexLayout-stackLayout');this.tabPanel.$element.addClass('oo-ui-indexLayout-tabPanel').append(this.tabSelectWidget.$element);this.selectFirstSelectableTabPanel();};OO.inheritClass(OO.ui.IndexLayout,OO.ui.MenuLayout);OO.ui.IndexLayout.prototype.onStackLayoutFocus=function(e){const $target=$(e.target).closest('.oo-ui-tabPanelLayout');for(const name in this.tabPanels){if(this.tabPanels[name].$element[0]===$target[0]&&name!==this.currentTabPanelName){this.setTabPanel(name);break;}}};OO.ui.IndexLayout.prototype.onStackLayoutSet=function(tabPanel){if(!tabPanel){return;}if(this.autoFocus&&!OO.ui.isMobile()){this.focus();}};OO.ui.IndexLayout.prototype.onStackLayoutBeforeMatch=function(event){\\nlet tabPanel;this.stackLayout.getItems().some((item)=>{if(item.$element[0]===event.target){tabPanel=item;return true;}return false;});if(tabPanel){const tabItem=tabPanel.getTabItem();if(tabItem){this.tabSelectWidget.selectItem(tabItem);}}};OO.ui.IndexLayout.prototype.focus=function(itemIndex){const items=this.stackLayout.getItems();let tabPanel;if(itemIndex!==undefined&&items[itemIndex]){tabPanel=items[itemIndex];}else{tabPanel=this.stackLayout.getCurrentItem();}if(!tabPanel){this.selectFirstSelectableTabPanel();tabPanel=this.stackLayout.getCurrentItem();}if(!tabPanel){return;}if(!OO.ui.contains(tabPanel.$element[0],this.getElementDocument().activeElement,true)){tabPanel.focus();}};OO.ui.IndexLayout.prototype.focusFirstFocusable=function(){OO.ui.findFocusable(this.stackLayout.$element).focus();};OO.ui.IndexLayout.prototype.onTabSelectWidgetSelect=function(item){if(item){this.setTabPanel(item.getData());}};OO.ui.IndexLayout.prototype.getClosestTabPanel=function(tabPanel){const tabPanels=this.stackLayout.getItems(),\\nindex=tabPanels.indexOf(tabPanel);if(index===-1){return null;}const next=tabPanels[index+1];const prev=tabPanels[index-1];const level=this.tabSelectWidget.findItemFromData(tabPanel.getName()).getLevel();if(prev&&level===this.tabSelectWidget.findItemFromData(prev.getName()).getLevel()){return prev;}if(next&&level===this.tabSelectWidget.findItemFromData(next.getName()).getLevel()){return next;}return prev||next||null;};OO.ui.IndexLayout.prototype.getTabs=function(){return this.tabSelectWidget;};OO.ui.IndexLayout.prototype.getTabPanel=function(name){return this.tabPanels[name];};OO.ui.IndexLayout.prototype.getCurrentTabPanel=function(){const name=this.getCurrentTabPanelName();return name?this.getTabPanel(name):undefined;};OO.ui.IndexLayout.prototype.getCurrentTabPanelName=function(){return this.currentTabPanelName;};OO.ui.IndexLayout.prototype.addTabPanels=function(tabPanels,index){let i,len,name,tabPanel,tabItem,currentIndex;const stackLayoutTabPanels=this.stackLayout.getItems(),remove=[],\\ntabItems=[];for(i=0,len=tabPanels.length;i<len;i++){tabPanel=tabPanels[i];name=tabPanel.getName();if(Object.prototype.hasOwnProperty.call(this.tabPanels,name)){currentIndex=stackLayoutTabPanels.indexOf(this.tabPanels[name]);if(currentIndex!==-1&&currentIndex+1<index){index--;}remove.push(this.tabPanels[name]);}}if(remove.length){this.removeTabPanels(remove);}for(i=0,len=tabPanels.length;i<len;i++){tabPanel=tabPanels[i];name=tabPanel.getName();this.tabPanels[name]=tabPanel;tabItem=new OO.ui.TabOptionWidget(Object.assign({data:name},tabPanel.getTabItemConfig()));tabPanel.setTabItem(tabItem);tabItems.push(tabItem);}if(tabItems.length){this.tabSelectWidget.addItems(tabItems,index);this.selectFirstSelectableTabPanel();}this.stackLayout.addItems(tabPanels,index);this.emit('add',tabPanels,index);return this;};OO.ui.IndexLayout.prototype.removeTabPanels=function(tabPanels){let i,len,name,tabPanel;const items=[];for(i=0,len=tabPanels.length;i<len;i++){tabPanel=tabPanels[i];name=tabPanel.getName();\\ndelete this.tabPanels[name];items.push(this.tabSelectWidget.findItemFromData(name));tabPanel.setTabItem(null);}if(items.length){this.tabSelectWidget.removeItems(items);this.selectFirstSelectableTabPanel();}this.stackLayout.removeItems(tabPanels);this.emit('remove',tabPanels);return this;};OO.ui.IndexLayout.prototype.clearTabPanels=function(){let i,len;const tabPanels=this.stackLayout.getItems();this.tabPanels={};this.currentTabPanelName=null;this.tabSelectWidget.clearItems();for(i=0,len=tabPanels.length;i<len;i++){tabPanels[i].setTabItem(null);}this.stackLayout.clearItems();this.emit('remove',tabPanels);return this;};OO.ui.IndexLayout.prototype.setTabPanel=function(name){let selectedItem,$focused,previousTabPanel,tabPanel;if(name!==this.currentTabPanelName){tabPanel=this.getTabPanel(name);previousTabPanel=this.getCurrentTabPanel();selectedItem=this.tabSelectWidget.findSelectedItem();if(!selectedItem||selectedItem.getData()!==name){this.tabSelectWidget.selectItemByData(name);}if(tabPanel){\\nif(previousTabPanel){previousTabPanel.setActive(false);if(this.autoFocus&&!OO.ui.isMobile()&&this.stackLayout.isContinuous()&&OO.ui.findFocusable(tabPanel.$element).length!==0){$focused=previousTabPanel.$element.find(':focus');if($focused.length){$focused[0].blur();}}}this.currentTabPanelName=name;tabPanel.setActive(true);this.stackLayout.setItem(tabPanel);if(!this.stackLayout.isContinuous()&&previousTabPanel){$focused=previousTabPanel.$element.find(':focus');if($focused.length){$focused[0].blur();}}this.emit('set',tabPanel);}}};OO.ui.IndexLayout.prototype.selectFirstSelectableTabPanel=function(){if(!this.tabSelectWidget.findSelectedItem()){this.tabSelectWidget.selectItem(this.tabSelectWidget.findFirstSelectableItem());}return this;};OO.ui.CopyTextLayout=function OoUiCopyTextLayout(config){config=config||{};const TextClass=config.multiline?OO.ui.MultilineTextInputWidget:OO.ui.TextInputWidget;this.textInput=new TextClass(Object.assign({value:config.copyText,readOnly:true},config.textInput));\\nthis.button=new OO.ui.ButtonWidget(Object.assign({label:OO.ui.msg('ooui-copytextlayout-copy'),icon:'copy'},config.button));OO.ui.CopyTextLayout.super.call(this,this.textInput,this.button,config);if(config.multiline){this.$input.removeClass('oo-ui-actionFieldLayout-input');this.$button.removeClass('oo-ui-actionFieldLayout-button').addClass('oo-ui-copyTextLayout-multiline-button');}this.button.connect(this,{click:'onButtonClick'});this.textInput.$input.on('focus',this.onInputFocus.bind(this));this.$element.addClass('oo-ui-copyTextLayout');};OO.inheritClass(OO.ui.CopyTextLayout,OO.ui.ActionFieldLayout);OO.ui.CopyTextLayout.prototype.onButtonClick=function(){let copied;this.selectText();try{copied=document.execCommand('copy');}catch(e){copied=false;}this.emit('copy',copied);};OO.ui.CopyTextLayout.prototype.onInputFocus=function(){if(!this.selecting){this.selectText();}};OO.ui.CopyTextLayout.prototype.selectText=function(){const input=this.textInput.$input[0],scrollTop=input.scrollTop,\\nscrollLeft=input.scrollLeft;this.selecting=true;this.textInput.select();this.selecting=false;input.scrollTop=scrollTop;input.scrollLeft=scrollLeft;};OO.ui.ToggleButtonWidget=function OoUiToggleButtonWidget(config){config=config||{};OO.ui.ToggleButtonWidget.super.call(this,config);OO.ui.mixin.ButtonElement.call(this,Object.assign({active:this.active},config));OO.ui.mixin.IconElement.call(this,config);OO.ui.mixin.IndicatorElement.call(this,config);OO.ui.mixin.LabelElement.call(this,config);OO.ui.mixin.FlaggedElement.call(this,config);OO.ui.mixin.TabIndexedElement.call(this,Object.assign({$tabIndexed:this.$button},config));this.connect(this,{click:'onAction'});this.$button.append(this.$icon,this.$label,this.$indicator);this.$element.addClass('oo-ui-toggleButtonWidget').append(this.$button);this.setTitledElement(this.$button);};OO.inheritClass(OO.ui.ToggleButtonWidget,OO.ui.ToggleWidget);OO.mixinClass(OO.ui.ToggleButtonWidget,OO.ui.mixin.ButtonElement);OO.mixinClass(OO.ui.ToggleButtonWidget,OO.ui.mixin.IconElement);\\nOO.mixinClass(OO.ui.ToggleButtonWidget,OO.ui.mixin.IndicatorElement);OO.mixinClass(OO.ui.ToggleButtonWidget,OO.ui.mixin.LabelElement);OO.mixinClass(OO.ui.ToggleButtonWidget,OO.ui.mixin.FlaggedElement);OO.mixinClass(OO.ui.ToggleButtonWidget,OO.ui.mixin.TabIndexedElement);OO.ui.ToggleButtonWidget.static.tagName='span';OO.ui.ToggleButtonWidget.prototype.onAction=function(){this.setValue(!this.value);};OO.ui.ToggleButtonWidget.prototype.setValue=function(value){value=!!value;if(value!==this.value){if(this.$button){this.$button.attr('aria-pressed',value.toString());}this.setActive(value);}OO.ui.ToggleButtonWidget.super.prototype.setValue.call(this,value);return this;};OO.ui.ToggleButtonWidget.prototype.setButtonElement=function($button){if(this.$button){this.$button.removeAttr('aria-pressed');}OO.ui.mixin.ButtonElement.prototype.setButtonElement.call(this,$button);this.$button.attr('aria-pressed',this.value.toString());};OO.ui.OutlineControlsWidget=function OoUiOutlineControlsWidget(outline,config){\\nif(OO.isPlainObject(outline)&&config===undefined){config=outline;outline=config.outline;}config=config||{};OO.ui.OutlineControlsWidget.super.call(this,config);OO.ui.mixin.GroupElement.call(this,config);this.outline=outline;this.$movers=$('<div>');this.upButton=new OO.ui.ButtonWidget({framed:false,icon:'upTriangle',title:OO.ui.msg('ooui-outline-control-move-up')});this.downButton=new OO.ui.ButtonWidget({framed:false,icon:'downTriangle',title:OO.ui.msg('ooui-outline-control-move-down')});this.removeButton=new OO.ui.ButtonWidget({framed:false,icon:'trash',title:OO.ui.msg('ooui-outline-control-remove')});this.abilities={move:true,remove:true};outline.connect(this,{select:'onOutlineChange',add:'onOutlineChange',remove:'onOutlineChange'});this.upButton.connect(this,{click:['emit','move',-1]});this.downButton.connect(this,{click:['emit','move',1]});this.removeButton.connect(this,{click:['emit','remove']});this.$element.addClass('oo-ui-outlineControlsWidget');this.$group.addClass('oo-ui-outlineControlsWidget-items');\\nthis.$movers.addClass('oo-ui-outlineControlsWidget-movers').append(this.upButton.$element,this.downButton.$element,this.removeButton.$element);this.$element.append(this.$icon,this.$group,this.$movers);this.setAbilities(config.abilities||{});};OO.inheritClass(OO.ui.OutlineControlsWidget,OO.ui.Widget);OO.mixinClass(OO.ui.OutlineControlsWidget,OO.ui.mixin.GroupElement);OO.ui.OutlineControlsWidget.prototype.setAbilities=function(abilities){for(const ability in this.abilities){if(abilities[ability]!==undefined){this.abilities[ability]=!!abilities[ability];}}this.onOutlineChange();};OO.ui.OutlineControlsWidget.prototype.onOutlineChange=function(){const items=this.outline.getItems(),selectedItem=this.outline.findSelectedItem(),movable=this.abilities.move&&selectedItem&&selectedItem.isMovable(),removable=this.abilities.remove&&selectedItem&&selectedItem.isRemovable();let firstMovable,lastMovable;if(movable){let i=-1;const len=items.length;while(++i<len){if(items[i].isMovable()){firstMovable=items[i];\\nbreak;}}i=len;while(i--){if(items[i].isMovable()){lastMovable=items[i];break;}}}this.upButton.setDisabled(!movable||selectedItem===firstMovable);this.downButton.setDisabled(!movable||selectedItem===lastMovable);this.removeButton.setDisabled(!removable);};OO.ui.OutlineOptionWidget=function OoUiOutlineOptionWidget(config){config=config||{};OO.ui.OutlineOptionWidget.super.call(this,config);this.movable=!!config.movable;this.removable=!!config.removable;this.$element.addClass('oo-ui-outlineOptionWidget');this.setLevel(config.level);};OO.inheritClass(OO.ui.OutlineOptionWidget,OO.ui.DecoratedOptionWidget);OO.ui.OutlineOptionWidget.static.highlightable=true;OO.ui.OutlineOptionWidget.static.scrollIntoViewOnSelect=true;OO.ui.OutlineOptionWidget.static.levelClass='oo-ui-outlineOptionWidget-level-';OO.ui.OutlineOptionWidget.static.levels=3;OO.ui.OutlineOptionWidget.prototype.isMovable=function(){return this.movable;};OO.ui.OutlineOptionWidget.prototype.isRemovable=function(){return this.removable;\\n};OO.ui.OutlineOptionWidget.prototype.getLevel=function(){return this.level;};OO.ui.OutlineOptionWidget.prototype.setMovable=function(movable){this.movable=!!movable;this.updateThemeClasses();return this;};OO.ui.OutlineOptionWidget.prototype.setRemovable=function(removable){this.removable=!!removable;this.updateThemeClasses();return this;};OO.ui.OutlineOptionWidget.prototype.setLevel=function(level){level=level||0;if(this.level===level){return this;}const levels=this.constructor.static.levels,levelClass=this.constructor.static.levelClass;if(this.level!==undefined){this.$element.removeClass(levelClass+this.level);}this.level=level>0?Math.min(level,levels-1):0;this.$element.addClass(levelClass+this.level);this.updateThemeClasses();return this;};OO.ui.OutlineSelectWidget=function OoUiOutlineSelectWidget(config){OO.ui.OutlineSelectWidget.super.call(this,config);OO.ui.mixin.TabIndexedElement.call(this,config);this.attachDocumentKeyDownListenerOnFocus();this.$element.addClass('oo-ui-outlineSelectWidget');\\n};OO.inheritClass(OO.ui.OutlineSelectWidget,OO.ui.SelectWidget);OO.mixinClass(OO.ui.OutlineSelectWidget,OO.ui.mixin.TabIndexedElement);OO.ui.ButtonOptionWidget=function OoUiButtonOptionWidget(config){config=config||{};OO.ui.ButtonOptionWidget.super.call(this,config);OO.ui.mixin.ButtonElement.call(this,config);OO.ui.mixin.IconElement.call(this,config);OO.ui.mixin.IndicatorElement.call(this,config);this.$element.addClass('oo-ui-buttonOptionWidget');this.$button.append(this.$icon,this.$label,this.$indicator);this.$element.append(this.$button);this.setTitledElement(this.$button);};OO.inheritClass(OO.ui.ButtonOptionWidget,OO.ui.OptionWidget);OO.mixinClass(OO.ui.ButtonOptionWidget,OO.ui.mixin.ButtonElement);OO.mixinClass(OO.ui.ButtonOptionWidget,OO.ui.mixin.IconElement);OO.mixinClass(OO.ui.ButtonOptionWidget,OO.ui.mixin.IndicatorElement);OO.ui.ButtonOptionWidget.static.cancelButtonMouseDownEvents=false;OO.ui.ButtonOptionWidget.static.highlightable=false;OO.ui.ButtonOptionWidget.prototype.setSelected=function(state){\\nOO.ui.ButtonOptionWidget.super.prototype.setSelected.call(this,state);if(this.constructor.static.selectable){this.setActive(state);}return this;};OO.ui.ButtonSelectWidget=function OoUiButtonSelectWidget(config){OO.ui.ButtonSelectWidget.super.call(this,config);OO.ui.mixin.TabIndexedElement.call(this,config);this.attachDocumentKeyDownListenerOnFocus();this.$element.addClass('oo-ui-buttonSelectWidget');};OO.inheritClass(OO.ui.ButtonSelectWidget,OO.ui.SelectWidget);OO.mixinClass(OO.ui.ButtonSelectWidget,OO.ui.mixin.TabIndexedElement);OO.ui.TabOptionWidget=function OoUiTabOptionWidget(config){config=config||{};if(config.href){config=Object.assign({$label:$('<a>').attr('href',config.href)},config);}OO.ui.TabOptionWidget.super.call(this,config);this.$element.addClass('oo-ui-tabOptionWidget').attr('role','tab');};OO.inheritClass(OO.ui.TabOptionWidget,OO.ui.OptionWidget);OO.ui.TabOptionWidget.static.highlightable=false;OO.ui.TabOptionWidget.static.scrollIntoViewOnSelect=true;OO.ui.TabOptionWidget.prototype.scrollElementIntoView=function(config){\\nif(!OO.ui.isMobile()||!this.getElementGroup()){return OO.ui.TabOptionWidget.super.prototype.scrollElementIntoView.call(this);}else{const padding=Math.max((this.getElementGroup().$element[0].clientWidth-this.$element[0].clientWidth)/2,0);return OO.ui.TabOptionWidget.super.prototype.scrollElementIntoView.call(this,Object.assign({padding:{left:padding,right:padding}},config));}};OO.ui.TabSelectWidget=function OoUiTabSelectWidget(config){OO.ui.TabSelectWidget.super.call(this,config);OO.ui.mixin.TabIndexedElement.call(this,config);this.attachDocumentKeyDownListenerOnFocus();this.$element.addClass('oo-ui-tabSelectWidget').attr('role','tablist');this.toggleFramed(config.framed===undefined||config.framed);if(OO.ui.isMobile()){this.$element.addClass('oo-ui-tabSelectWidget-mobile');}};OO.inheritClass(OO.ui.TabSelectWidget,OO.ui.SelectWidget);OO.mixinClass(OO.ui.TabSelectWidget,OO.ui.mixin.TabIndexedElement);OO.ui.TabSelectWidget.prototype.isFramed=function(){return this.framed;};OO.ui.TabSelectWidget.prototype.toggleFramed=function(framed){\\nframed=framed===undefined?!this.framed:!!framed;if(framed!==this.framed){this.framed=framed;this.$element.toggleClass('oo-ui-tabSelectWidget-frameless',!framed).toggleClass('oo-ui-tabSelectWidget-framed',framed);}return this;};OO.ui.ButtonMenuSelectWidget=function OoUiButtonMenuSelectWidget(config){config=config||{};OO.ui.ButtonMenuSelectWidget.super.call(this,config);this.$overlay=(config.$overlay===true?OO.ui.getDefaultOverlay():config.$overlay)||this.$element;const MenuClass=config.menuClass||OO.ui.MenuSelectWidget;this.clearOnSelect=config.clearOnSelect!==false;this.menu=new MenuClass(Object.assign({widget:this,$floatableContainer:this.$element,spacing:4},config.menu));this.connect(this,{click:'onButtonMenuClick'});this.getMenu().connect(this,{select:'onMenuSelect',toggle:'onMenuToggle'});this.$button.attr({'aria-expanded':'false','aria-haspopup':'true','aria-owns':this.menu.getElementId()});this.$element.addClass('oo-ui-buttonMenuSelectWidget');this.$overlay.append(this.menu.$element);\\n};OO.inheritClass(OO.ui.ButtonMenuSelectWidget,OO.ui.ButtonWidget);OO.ui.ButtonMenuSelectWidget.prototype.getMenu=function(){return this.menu;};OO.ui.ButtonMenuSelectWidget.prototype.onMenuSelect=function(item){if(this.clearOnSelect&&item){this.getMenu().selectItem();}};OO.ui.ButtonMenuSelectWidget.prototype.onMenuToggle=function(isVisible){this.$element.toggleClass('oo-ui-buttonElement-pressed',isVisible);};OO.ui.ButtonMenuSelectWidget.prototype.onButtonMenuClick=function(){this.menu.toggle();};OO.ui.TagItemWidget=function OoUiTagItemWidget(config){config=config||{};OO.ui.TagItemWidget.super.call(this,config);OO.ui.mixin.ItemWidget.call(this);OO.ui.mixin.LabelElement.call(this,config);OO.ui.mixin.FlaggedElement.call(this,config);OO.ui.mixin.TabIndexedElement.call(this,config);OO.ui.mixin.DraggableElement.call(this,config);this.valid=config.valid===undefined?true:!!config.valid;this.fixed=!!config.fixed;this.closeButton=new OO.ui.ButtonWidget({framed:false,icon:'close',tabIndex:-1,\\ntitle:OO.ui.msg('ooui-item-remove')});this.closeButton.setDisabled(this.isDisabled());this.closeButton.connect(this,{click:'remove'});this.$element.on('click',this.select.bind(this)).on('keydown',this.onKeyDown.bind(this)).on('mousedown',(e)=>{e.stopPropagation();});this.$element.addClass('oo-ui-tagItemWidget').append(this.$label,this.closeButton.$element);};OO.inheritClass(OO.ui.TagItemWidget,OO.ui.Widget);OO.mixinClass(OO.ui.TagItemWidget,OO.ui.mixin.ItemWidget);OO.mixinClass(OO.ui.TagItemWidget,OO.ui.mixin.LabelElement);OO.mixinClass(OO.ui.TagItemWidget,OO.ui.mixin.FlaggedElement);OO.mixinClass(OO.ui.TagItemWidget,OO.ui.mixin.TabIndexedElement);OO.mixinClass(OO.ui.TagItemWidget,OO.ui.mixin.DraggableElement);OO.ui.TagItemWidget.prototype.setFixed=function(state){state=state===undefined?!this.fixed:!!state;if(this.fixed!==state){this.fixed=state;if(this.closeButton){this.closeButton.toggle(!this.fixed);}if(!this.fixed&&this.elementGroup&&!this.elementGroup.isDraggable()){this.toggleDraggable(!this.fixed);\\n}this.$element.toggleClass('oo-ui-tagItemWidget-fixed',this.fixed);this.emit('fixed',this.isFixed());}return this;};OO.ui.TagItemWidget.prototype.isFixed=function(){return this.fixed;};OO.ui.TagItemWidget.prototype.remove=function(){if(!this.isDisabled()&&!this.isFixed()){this.emit('remove');}};OO.ui.TagItemWidget.prototype.onKeyDown=function(e){if(!this.isDisabled()&&!this.isFixed()&&(e.keyCode===OO.ui.Keys.BACKSPACE||e.keyCode===OO.ui.Keys.DELETE)){this.remove();return false;}else if(e.keyCode===OO.ui.Keys.ENTER){this.select();return false;}else if(e.keyCode===OO.ui.Keys.LEFT||e.keyCode===OO.ui.Keys.RIGHT){let movement;if(OO.ui.Element.static.getDir(this.$element)==='rtl'){movement={left:'forwards',right:'backwards'};}else{movement={left:'backwards',right:'forwards'};}this.emit('navigate',e.keyCode===OO.ui.Keys.LEFT?movement.left:movement.right);return false;}};OO.ui.TagItemWidget.prototype.select=function(){if(!this.isDisabled()){this.emit('select');}};OO.ui.TagItemWidget.prototype.toggleValid=function(valid){\\nvalid=valid===undefined?!this.valid:!!valid;if(this.valid!==valid){this.valid=valid;this.setFlags({invalid:!this.valid});this.emit('valid',this.valid);}};OO.ui.TagItemWidget.prototype.isValid=function(){return this.valid;};OO.ui.TagMultiselectWidget=function OoUiTagMultiselectWidget(config){const rAF=window.requestAnimationFrame||setTimeout,$tabFocus=$('<span>').addClass('oo-ui-tagMultiselectWidget-focusTrap');config=config||{};OO.ui.TagMultiselectWidget.super.call(this,config);OO.ui.mixin.GroupWidget.call(this,config);OO.ui.mixin.IndicatorElement.call(this,config);OO.ui.mixin.IconElement.call(this,config);OO.ui.mixin.TabIndexedElement.call(this,config);OO.ui.mixin.FlaggedElement.call(this,config);OO.ui.mixin.DraggableGroupElement.call(this,config);OO.ui.mixin.TitledElement.call(this,config);this.inputPosition=this.constructor.static.allowedInputPositions.includes(config.inputPosition)?config.inputPosition:'inline';this.allowEditTags=config.allowEditTags===undefined?true:!!config.allowEditTags;\\nthis.allowArbitrary=!!config.allowArbitrary;this.allowDuplicates=!!config.allowDuplicates;this.allowedValues=config.allowedValues||[];this.allowDisplayInvalidTags=config.allowDisplayInvalidTags;this.hasInput=this.inputPosition!=='none';this.tagLimit=config.tagLimit;this.allowReordering=config.allowReordering===undefined?true:!!config.allowReordering;this.height=null;this.valid=true;this.toggleDraggable(this.allowReordering);this.$content=$('<div>').addClass('oo-ui-tagMultiselectWidget-content');this.$handle=$('<div>').addClass('oo-ui-tagMultiselectWidget-handle').append(this.$indicator,this.$icon,this.$content.append(this.$group.addClass('oo-ui-tagMultiselectWidget-group')));this.aggregate({remove:'itemRemove',navigate:'itemNavigate',select:'itemSelect',fixed:'itemFixed'});this.connect(this,{itemRemove:'onTagRemove',itemSelect:'onTagSelect',itemFixed:'onTagFixed',itemNavigate:'onTagNavigate',change:'onChangeTags'});this.$handle.on({mousedown:this.onMouseDown.bind(this)});this.$element.addClass('oo-ui-tagMultiselectWidget')\\n.append(this.$handle);if(this.hasInput){if(config.inputWidget){this.input=config.inputWidget;}else{this.input=new OO.ui.TextInputWidget(Object.assign({placeholder:config.placeholder,classes:['oo-ui-tagMultiselectWidget-input']},config.input));}this.input.setDisabled(this.isDisabled());const inputEvents={focus:this.onInputFocus.bind(this),blur:this.onInputBlur.bind(this),'propertychange change click mouseup keydown keyup input cut paste select focus':OO.ui.debounce(this.updateInputSize.bind(this)),keydown:this.onInputKeyDown.bind(this),keypress:this.onInputKeyPress.bind(this)};this.input.$input.on(inputEvents);this.inputPlaceholder=this.input.$input.attr('placeholder');if(this.inputPosition==='outline'){this.input.$element.css('max-width','inherit');this.$element.addClass('oo-ui-tagMultiselectWidget-outlined').append(this.input.$element);}else{this.$element.addClass('oo-ui-tagMultiselectWidget-inlined');this.$group.append(this.input.$input);}}else{this.$content.append($tabFocus);}this.setTabIndexedElement(\\nthis.hasInput?this.input.$input:$tabFocus);if(config.selected){this.setValue(config.selected);}rAF(()=>{if(this.hasInput){this.updateInputSize();}});};OO.inheritClass(OO.ui.TagMultiselectWidget,OO.ui.Widget);OO.mixinClass(OO.ui.TagMultiselectWidget,OO.ui.mixin.GroupWidget);OO.mixinClass(OO.ui.TagMultiselectWidget,OO.ui.mixin.DraggableGroupElement);OO.mixinClass(OO.ui.TagMultiselectWidget,OO.ui.mixin.IndicatorElement);OO.mixinClass(OO.ui.TagMultiselectWidget,OO.ui.mixin.IconElement);OO.mixinClass(OO.ui.TagMultiselectWidget,OO.ui.mixin.TabIndexedElement);OO.mixinClass(OO.ui.TagMultiselectWidget,OO.ui.mixin.FlaggedElement);OO.mixinClass(OO.ui.TagMultiselectWidget,OO.ui.mixin.TitledElement);OO.ui.TagMultiselectWidget.static.allowedInputPositions=['inline','outline','none'];OO.ui.TagMultiselectWidget.prototype.onMouseDown=function(e){if(!this.isDisabled()&&(!this.hasInput||e.target!==this.input.$input[0])&&e.which===OO.ui.MouseButtons.LEFT){this.focus();return false;}};OO.ui.TagMultiselectWidget.prototype.onInputKeyPress=function(e){\\nconst withMetaKey=e.metaKey||e.ctrlKey;if(!this.isDisabled()){let stopOrContinue;if(e.which===OO.ui.Keys.ENTER){stopOrContinue=this.doInputEnter(e,withMetaKey);}this.updateInputSize();return stopOrContinue;}};OO.ui.TagMultiselectWidget.prototype.onInputKeyDown=function(e){const withMetaKey=e.metaKey||e.ctrlKey;const isMovementInsideInput=(dir)=>{const inputRange=this.input.getRange(),inputValue=this.hasInput&&this.input.getValue();if(dir==='forwards'&&inputRange.to>inputValue.length-1){return false;}if(dir==='backwards'&&inputRange.from<=0){return false;}return true;};if(!this.isDisabled()){if(e.keyCode===OO.ui.Keys.BACKSPACE){return this.doInputBackspace(e,withMetaKey);}else if(e.keyCode===OO.ui.Keys.ESCAPE){return this.doInputEscape(e);}else if(e.keyCode===OO.ui.Keys.LEFT||e.keyCode===OO.ui.Keys.RIGHT){let movement;if(OO.ui.Element.static.getDir(this.$element)==='rtl'){movement={left:'forwards',right:'backwards'};}else{movement={left:'backwards',right:'forwards'};}const direction=e.keyCode===OO.ui.Keys.LEFT?\\nmovement.left:movement.right;if(!this.hasInput||!isMovementInsideInput(direction)){return this.doInputArrow(e,direction,withMetaKey);}}}};OO.ui.TagMultiselectWidget.prototype.onInputFocus=function(){this.$element.addClass('oo-ui-tagMultiselectWidget-focus');this.toggleValid(true);};OO.ui.TagMultiselectWidget.prototype.onInputBlur=function(){if(this.changing){return;}this.$element.removeClass('oo-ui-tagMultiselectWidget-focus');this.addTagFromInput();this.toggleValid(this.checkValidity()&&(!this.hasInput||!this.input.getValue()));};OO.ui.TagMultiselectWidget.prototype.doInputEnter=function(){this.addTagFromInput();return false;};OO.ui.TagMultiselectWidget.prototype.doInputBackspace=function(e,withMetaKey){if(this.inputPosition==='inline'&&this.input.getValue()===''&&!this.isEmpty()){const items=this.getItems();const item=items[items.length-1];if(!item.isDisabled()&&!item.isFixed()){this.removeItems([item]);if(!withMetaKey){let itemLabel;if(typeof item.getLabel()==='string'){itemLabel=item.getLabel();\\n}else if(item.getLabel()instanceof $){itemLabel=item.getLabel().text();}this.input.setValue(itemLabel);}}return false;}};OO.ui.TagMultiselectWidget.prototype.doInputEscape=function(){this.clearInput();};OO.ui.TagMultiselectWidget.prototype.doInputArrow=function(e,direction){if(this.inputPosition==='inline'&&!this.isEmpty()&&direction==='backwards'){this.getPreviousItem().focus();}};OO.ui.TagMultiselectWidget.prototype.onTagSelect=function(item){if(this.hasInput&&this.allowEditTags&&!item.isFixed()){if(this.input.getValue()){this.addTagFromInput();}this.input.setValue(item.getLabel());this.removeItems([item]);this.focus();}};OO.ui.TagMultiselectWidget.prototype.onTagFixed=function(item){const items=this.getItems();let i;for(i=0;i<items.length;i++){if(items[i]!==item&&!items[i].isFixed()){break;}}this.addItems([item],i);};OO.ui.TagMultiselectWidget.prototype.onChangeTags=function(){const isUnderLimit=this.isUnderLimit();this.changing=true;this.toggleValid(this.checkValidity());if(this.hasInput){\\nthis.updateInputSize();if(!isUnderLimit){this.input.setValue('');}if(this.inputPosition==='outline'){this.input.$input.attr('placeholder',isUnderLimit?this.inputPlaceholder:'');this.input.setDisabled(!isUnderLimit);}else{const hadFocus=document.activeElement===this.input.$input[0];this.$group.append(this.input.$input);this.input.$input.toggleClass('oo-ui-element-hidden',!isUnderLimit);if(hadFocus&&isUnderLimit){this.input.focus();}}}this.updateIfHeightChanged();this.changing=false;};OO.ui.TagMultiselectWidget.prototype.setDisabled=function(isDisabled){OO.ui.TagMultiselectWidget.super.prototype.setDisabled.call(this,isDisabled);if(this.hasInput&&this.input){if(!isDisabled){this.updateInputSize();}this.input.setDisabled(!!isDisabled||!this.isUnderLimit());}if(this.items){this.getItems().forEach((item)=>{item.setDisabled(!!isDisabled);});}};OO.ui.TagMultiselectWidget.prototype.onTagRemove=function(item){this.removeTagByData(item.getData());};OO.ui.TagMultiselectWidget.prototype.onTagNavigate=function(item,direction){\\nconst firstItem=this.getItems()[0];if(direction==='forwards'){this.getNextItem(item).focus();}else if(!this.inputPosition==='inline'||item!==firstItem){this.getPreviousItem(item).focus();}};OO.ui.TagMultiselectWidget.prototype.getTagInfoFromInput=function(){const val=this.input.getValue();return{data:val,label:val};};OO.ui.TagMultiselectWidget.prototype.addTagFromInput=function(){const tagInfo=this.getTagInfoFromInput();if(!tagInfo.data){return;}if(this.addTag(tagInfo.data,tagInfo.label)){this.clearInput();}};OO.ui.TagMultiselectWidget.prototype.clearInput=function(){this.input.setValue('');};OO.ui.TagMultiselectWidget.prototype.isDuplicateData=function(data){return!!this.findItemFromData(data);};OO.ui.TagMultiselectWidget.prototype.isAllowedData=function(data){if(!this.allowDuplicates&&this.isDuplicateData(data)){return false;}if(this.allowArbitrary){return true;}if(this.getAllowedValues().includes(data)){return true;}return false;};OO.ui.TagMultiselectWidget.prototype.getAllowedValues=function(){\\nreturn this.allowedValues;};OO.ui.TagMultiselectWidget.prototype.addAllowedValue=function(value){if(!this.allowedValues.includes(value)){this.allowedValues.push(value);}};OO.ui.TagMultiselectWidget.prototype.getValue=function(){return this.getItems().filter((item)=>item.isValid()).map((item)=>item.getData());};OO.ui.TagMultiselectWidget.prototype.setValue=function(valueObject){valueObject=Array.isArray(valueObject)?valueObject:[valueObject];this.clearItems();valueObject.forEach((obj)=>{if(typeof obj==='object'){this.addTag(obj.data,obj.label);}else{this.addTag(String(obj));}});};OO.ui.TagMultiselectWidget.prototype.addTag=function(data,label){const isValid=this.isAllowedData(data);if(this.isUnderLimit()&&(isValid||this.allowDisplayInvalidTags)){const newItemWidget=this.createTagItemWidget(data,label);newItemWidget.toggleValid(isValid);newItemWidget.toggleDraggable(this.allowReordering);let insertIndex=this.getItems().length;if(!this.allowReordering){const allowedIndex=this.getAllowedValues().indexOf(data);\\nif(allowedIndex!==-1){insertIndex=0;for(const[itemIndex,item]of this.getItems().entries()){const itemAllowedIndex=this.getAllowedValues().indexOf(item.getData());if(itemAllowedIndex!==-1&&itemAllowedIndex<=allowedIndex){insertIndex=itemIndex+1;}else{break;}}}}this.addItems([newItemWidget],insertIndex);return true;}return false;};OO.ui.TagMultiselectWidget.prototype.isUnderLimit=function(){return!this.tagLimit||this.getItemCount()<this.tagLimit;};OO.ui.TagMultiselectWidget.prototype.removeTagByData=function(data){const item=this.findItemFromData(data);this.removeItems([item]);};OO.ui.TagMultiselectWidget.prototype.createTagItemWidget=function(data,label){return new OO.ui.TagItemWidget({data:data,label:label||data});};OO.ui.TagMultiselectWidget.prototype.getNextItem=function(item){const itemIndex=this.items.indexOf(item);if(item===undefined||itemIndex===-1){return this.items[0];}if(itemIndex===this.items.length-1){if(this.hasInput){return this.input;}else{return this.items[0];}}else{\\nreturn this.items[itemIndex+1];}};OO.ui.TagMultiselectWidget.prototype.getPreviousItem=function(item){const itemIndex=this.items.indexOf(item);if(item===undefined||itemIndex===-1){return this.items[this.items.length-1];}if(itemIndex===0){if(this.hasInput){return this.input;}else{return this.items[this.items.length-1];}}else{return this.items[itemIndex-1];}};OO.ui.TagMultiselectWidget.prototype.updateInputSize=function(){if(this.inputPosition==='inline'&&!this.isDisabled()){if(this.input.$input[0].scrollWidth===0){return;}this.input.$input.css('width','1em');const $lastItem=this.$group.children().last();const direction=OO.ui.Element.static.getDir(this.$handle);const placeholder=this.input.$input.attr('placeholder');if(this.contentWidthWithPlaceholder===undefined&&this.input.getValue()===''&&placeholder!==undefined){this.input.$input.val(placeholder);this.contentWidthWithPlaceholder=this.input.$input[0].scrollWidth;this.input.$input.val('');}const contentWidth=Math.max(this.input.$input[0].scrollWidth,\\n(this.contentWidthWithPlaceholder===undefined)?0:this.contentWidthWithPlaceholder);const currentWidth=this.input.$input.width();if(contentWidth<currentWidth){this.updateIfHeightChanged();return;}let bestWidth;if($lastItem.length===0){bestWidth=this.$content.innerWidth();}else{bestWidth=direction==='ltr'?this.$content.innerWidth()-$lastItem.position().left-$lastItem.outerWidth():$lastItem.position().left;}bestWidth-=13;if(contentWidth>bestWidth){bestWidth=this.$content.innerWidth()-13;}this.input.$input.width(Math.floor(bestWidth));this.updateIfHeightChanged();}else{this.updateIfHeightChanged();}};OO.ui.TagMultiselectWidget.prototype.updateIfHeightChanged=function(){const height=this.$element.height();if(height!==this.height){this.height=height;this.emit('resize');}};OO.ui.TagMultiselectWidget.prototype.checkValidity=function(){return this.getItems().every((item)=>item.isValid());};OO.ui.TagMultiselectWidget.prototype.toggleValid=function(valid){valid=valid===undefined?!this.valid:!!valid;\\nif(this.valid!==valid){this.valid=valid;this.setFlags({invalid:!this.valid});this.emit('valid',this.valid);}};OO.ui.TagMultiselectWidget.prototype.isValid=function(){return this.valid;};OO.ui.PopupTagMultiselectWidget=function OoUiPopupTagMultiselectWidget(config){const defaultConfig={popup:{}};config=config||{};OO.ui.PopupTagMultiselectWidget.super.call(this,Object.assign({inputPosition:'none'},config));this.$overlay=(config.$overlay===true?OO.ui.getDefaultOverlay():config.$overlay)||this.$element;if(!config.popup){const defaultInput=new OO.ui.TextInputWidget();defaultConfig.popupInput=defaultInput;defaultConfig.popup.$content=defaultInput.$element;defaultConfig.popup.padded=true;this.$element.addClass('oo-ui-popupTagMultiselectWidget-defaultPopup');}defaultConfig.popup.$overlay=this.$overlay;defaultConfig.popup.$autoCloseIgnore=this.hasInput?this.input.$element.add(this.$overlay):this.$overlay;config=Object.assign(defaultConfig,config);OO.ui.mixin.PopupElement.call(this,config);if(this.hasInput){\\nthis.input.$input.on('focus',this.popup.toggle.bind(this.popup,true));}this.popupInput=config.popupInput;if(this.popupInput){this.popupInput.connect(this,{enter:'onPopupInputEnter'});}this.on('resize',this.popup.updateDimensions.bind(this.popup));this.popup.connect(this,{toggle:'onPopupToggle'});this.$tabIndexed.on('focus',this.onFocus.bind(this));this.$element.append(this.popup.$element).addClass('oo-ui-popupTagMultiselectWidget');OO.ui.warnDeprecation('PopupTagMultiselectWidget: Deprecated widget. Use MenuTagMultiselectWidget instead. See T208821.');};OO.inheritClass(OO.ui.PopupTagMultiselectWidget,OO.ui.TagMultiselectWidget);OO.mixinClass(OO.ui.PopupTagMultiselectWidget,OO.ui.mixin.PopupElement);OO.ui.PopupTagMultiselectWidget.prototype.onFocus=function(){this.popup.toggle(true);};OO.ui.PopupTagMultiselectWidget.prototype.onPopupToggle=function(isVisible){if(isVisible&&this.popupInput){this.popupInput.focus();}};OO.ui.PopupTagMultiselectWidget.prototype.onPopupInputEnter=function(){\\nif(this.popupInput){this.addTagByPopupValue(this.popupInput.getValue());this.popupInput.setValue('');}};OO.ui.PopupTagMultiselectWidget.prototype.onTagSelect=function(item){if(this.popupInput&&this.allowEditTags){this.popupInput.setValue(item.getData());this.removeItems([item]);this.popup.toggle(true);this.popupInput.focus();}else{OO.ui.PopupTagMultiselectWidget.super.prototype.onTagSelect.call(this,item);}};OO.ui.PopupTagMultiselectWidget.prototype.addTagByPopupValue=function(data,label){this.addTag(data,label);};OO.ui.MenuTagMultiselectWidget=function OoUiMenuTagMultiselectWidget(config){let $autoCloseIgnore=$([]);config=config||{};let options=config.options||[];const selected=config.selected||[];options=options.concat(selected.map((option)=>{if(typeof option==='string'){return{data:option,label:option};}return option;}));const configCopy=OO.copy(config);configCopy.options=options;configCopy.selected=selected;OO.ui.MenuTagMultiselectWidget.super.call(this,configCopy);$autoCloseIgnore=$autoCloseIgnore.add(this.$group);\\nif(this.hasInput){$autoCloseIgnore=$autoCloseIgnore.add(this.input.$element);}this.$overlay=(config.$overlay===true?OO.ui.getDefaultOverlay():config.$overlay)||this.$element;this.clearInputOnChoose=config.clearInputOnChoose===undefined||!!config.clearInputOnChoose;this.menu=this.createMenuWidget(Object.assign({widget:this,hideOnChoose:false,input:this.hasInput?this.input:null,$input:this.hasInput?this.input.$input:null,filterFromInput:!!this.hasInput,highlightOnFilter:!this.allowArbitrary,multiselect:true,$autoCloseIgnore:$autoCloseIgnore,$floatableContainer:this.hasInput&&this.inputPosition==='outline'?this.input.$element:this.$element,$overlay:this.$overlay,disabled:this.isDisabled()},config.menu));this.addOptions(options);this.menu.connect(this,{choose:'onMenuChoose',toggle:'onMenuToggle'});if(this.hasInput){this.input.connect(this,{change:'onInputChange'});}this.connect(this,{resize:'onResize'});this.$overlay.append(this.menu.$element);this.$element.addClass('oo-ui-menuTagMultiselectWidget');\\nthis.menu.$focusOwner.removeAttr('aria-expanded');if(selected.length>0){this.setValue(selected);}};OO.inheritClass(OO.ui.MenuTagMultiselectWidget,OO.ui.TagMultiselectWidget);OO.ui.MenuTagMultiselectWidget.prototype.onResize=function(){this.menu.position();};OO.ui.MenuTagMultiselectWidget.prototype.onInputFocus=function(){const valid=this.isValid();OO.ui.MenuTagMultiselectWidget.super.prototype.onInputFocus.call(this);if(this.isUnderLimit()){this.menu.toggle(true);if(!valid){this.menu.highlightItem();}}};OO.ui.MenuTagMultiselectWidget.prototype.onInputChange=function(){this.menu.toggle(true);};OO.ui.MenuTagMultiselectWidget.prototype.onMenuChoose=function(menuItem,selected){if(selected&&!this.findItemFromData(menuItem.getData())){this.addTag(menuItem.getData(),menuItem.getLabel());}else{this.removeTagByData(menuItem.getData());}if(this.hasInput&&this.clearInputOnChoose){this.input.setValue('');}};OO.ui.MenuTagMultiselectWidget.prototype.onMenuToggle=function(isVisible){if(!isVisible){\\nthis.menu.highlightItem(null);this.menu.scrollToTop();}setTimeout(()=>{this.menu.$focusOwner.removeAttr('aria-expanded');});};OO.ui.MenuTagMultiselectWidget.prototype.onTagSelect=function(tagItem){const menuItem=this.menu.findItemFromData(tagItem.getData());if(!this.allowArbitrary){if(this.hasInput&&this.menu.filterFromInput){this.input.setValue('');}this.focus();this.menu.highlightItem(menuItem);this.menu.scrollItemIntoView(menuItem);}else{OO.ui.MenuTagMultiselectWidget.super.prototype.onTagSelect.call(this,tagItem);}};OO.ui.MenuTagMultiselectWidget.prototype.removeItems=function(items){OO.ui.MenuTagMultiselectWidget.super.prototype.removeItems.call(this,items);items.forEach((tagItem)=>{const menuItem=this.menu.findItemFromData(tagItem.getData());if(menuItem){this.menu.unselectItem(menuItem);}});};OO.ui.MenuTagMultiselectWidget.prototype.setValue=function(valueObject){valueObject=Array.isArray(valueObject)?valueObject:[valueObject];if(!this.menu){return;}this.clearItems();valueObject.forEach((obj)=>{\\nlet data,label;if(typeof obj==='string'){data=label=obj;}else{data=obj.data;label=obj.label;}const menuItem=this.menu.getItemFromLabel(label)||this.menu.findItemFromData(data);if(menuItem){this.addTag(menuItem.getData(),menuItem.getLabel());this.menu.selectItem(menuItem);}else if(this.allowArbitrary){this.addTag(data,label);}});};OO.ui.MenuTagMultiselectWidget.prototype.onChangeTags=function(){OO.ui.MenuTagMultiselectWidget.super.prototype.onChangeTags.call(this);if(this.menu&&!this.isUnderLimit()){this.menu.toggle(false);}};OO.ui.MenuTagMultiselectWidget.prototype.setDisabled=function(isDisabled){OO.ui.MenuTagMultiselectWidget.super.prototype.setDisabled.call(this,isDisabled);if(this.menu){this.menu.setDisabled(isDisabled);}};OO.ui.MenuTagMultiselectWidget.prototype.initializeMenuSelection=function(){this.menu.highlightItem(this.allowArbitrary?null:this.menu.findFirstSelectableItem());const highlightedItem=this.menu.findHighlightedItem();if(highlightedItem){this.menu.scrollItemIntoView(highlightedItem);\\n}};OO.ui.MenuTagMultiselectWidget.prototype.getTagInfoFromInput=function(){const val=this.input.getValue(),item=this.menu.findHighlightedItem()||this.menu.findItemFromData(val),data=item?item.getData():val,label=item?item.getLabel():val;return{data:data,label:label};};OO.ui.MenuTagMultiselectWidget.prototype.createMenuWidget=function(menuConfig){return new OO.ui.MenuSelectWidget(menuConfig);};OO.ui.MenuTagMultiselectWidget.prototype.addOptions=function(menuOptions){const optionsData=[],items=[];menuOptions.forEach((obj)=>{if(!optionsData.includes(obj.data)){optionsData.push(obj.data);items.push(this.createMenuOptionWidget(obj.data,obj.label,obj.icon));}});this.menu.addItems(items);};OO.ui.MenuTagMultiselectWidget.prototype.createMenuOptionWidget=function(data,label,icon){return new OO.ui.MenuOptionWidget({data:data,label:label||data,icon:icon});};OO.ui.MenuTagMultiselectWidget.prototype.getMenu=function(){return this.menu;};OO.ui.MenuTagMultiselectWidget.prototype.getAllowedValues=function(){\\nlet menuDatas=[];if(this.menu){menuDatas=this.menu.getItems().map((menuItem)=>menuItem.getData());}return this.allowedValues.concat(menuDatas);};OO.ui.SearchWidget=function OoUiSearchWidget(config){config=config||{};OO.ui.SearchWidget.super.call(this,config);this.query=config.input||new OO.ui.SearchInputWidget({placeholder:config.placeholder,value:config.value});this.results=new OO.ui.SelectWidget();this.results.setFocusOwner(this.query.$input);this.$query=$('<div>');this.$results=$('<div>');this.query.connect(this,{change:'onQueryChange',enter:'onQueryEnter'});this.query.$input.on('keydown',this.onQueryKeydown.bind(this));this.$query.addClass('oo-ui-searchWidget-query').append(this.query.$element);this.$results.addClass('oo-ui-searchWidget-results').append(this.results.$element);this.$element.addClass('oo-ui-searchWidget').append(this.$results,this.$query);};OO.inheritClass(OO.ui.SearchWidget,OO.ui.Widget);OO.ui.SearchWidget.prototype.onQueryKeydown=function(e){const dir=e.which===OO.ui.Keys.DOWN?1:(e.which===OO.ui.Keys.UP?-1:0);\\nif(dir){const highlightedItem=this.results.findHighlightedItem()||this.results.findSelectedItem();const nextItem=this.results.findRelativeSelectableItem(highlightedItem,dir);this.results.highlightItem(nextItem);if(nextItem){nextItem.scrollElementIntoView();}e.preventDefault();}};OO.ui.SearchWidget.prototype.onQueryChange=function(){this.results.clearItems();};OO.ui.SearchWidget.prototype.onQueryEnter=function(){const highlightedItem=this.results.findHighlightedItem();if(highlightedItem){this.results.chooseItem(highlightedItem);}};OO.ui.SearchWidget.prototype.getQuery=function(){return this.query;};OO.ui.SearchWidget.prototype.getResults=function(){return this.results;};}(OO));\\n},{\\\"css\\\":[\\\".oo-ui-draggableElement-handle:not(.oo-ui-draggableElement-undraggable),.oo-ui-draggableElement-handle:not(.oo-ui-draggableElement-undraggable).oo-ui-widget{cursor:move; cursor:grab; }.oo-ui-draggableElement-handle:not(.oo-ui-draggableElement-undraggable):active{ cursor:grabbing; }.oo-ui-draggableElement-handle.oo-ui-widget-disabled,.oo-ui-widget-disabled .oo-ui-draggableElement-handle{cursor:default}.oo-ui-draggableElement-placeholder{opacity:0.2}.oo-ui-draggableGroupElement-horizontal .oo-ui-draggableElement{display:inline-block}.oo-ui-bookletLayout-stackLayout.oo-ui-stackLayout-continuous \\\\u003E .oo-ui-panelLayout-scrollable{overflow:hidden}.oo-ui-bookletLayout-stackLayout \\\\u003E .oo-ui-panelLayout{width:100%;box-sizing:border-box}.oo-ui-bookletLayout-outlinePanel-editable \\\\u003E .oo-ui-outlineSelectWidget{height:auto;position:absolute;top:0;left:0;right:0;bottom:2.5em;overflow:auto;-webkit-overflow-scrolling:touch}.oo-ui-bookletLayout-outlinePanel \\\\u003E .oo-ui-outlineControlsWidget{position:absolute;bottom:0;left:0;right:0;height:2.5em}.oo-ui-bookletLayout-stackLayout \\\\u003E .oo-ui-panelLayout{padding:20px}.oo-ui-bookletLayout-outlinePanel \\\\u003E .oo-ui-outlineControlsWidget{border-top:1px solid var(--border-color-subtle,#c8ccd1)}.oo-ui-bookletLayout \\\\u003E .oo-ui-menuLayout-menu{border-right:1px solid var(--border-color-subtle,#c8ccd1)}.oo-ui-indexLayout{ }.oo-ui-indexLayout.oo-ui-menuLayout \\\\u003E .oo-ui-menuLayout-menu{height:auto}.oo-ui-indexLayout.oo-ui-menuLayout.oo-ui-menuLayout-expanded \\\\u003E .oo-ui-menuLayout-menu{height:3em;white-space:nowrap}.oo-ui-indexLayout.oo-ui-menuLayout.oo-ui-menuLayout-expanded \\\\u003E .oo-ui-menuLayout-content{top:3em}.oo-ui-indexLayout-stackLayout \\\\u003E .oo-ui-panelLayout[hidden]{ width:0 !important;height:0 !important;padding:0 !important;overflow:hidden !important; }.oo-ui-indexLayout-stackLayout \\\\u003E .oo-ui-panelLayout{padding:20px}.oo-ui-indexLayout.oo-ui-menuLayout.oo-ui-menuLayout-expanded \\\\u003E .oo-ui-menuLayout-menu{height:2.64285714em}.oo-ui-indexLayout.oo-ui-menuLayout.oo-ui-menuLayout-expanded \\\\u003E .oo-ui-menuLayout-content{top:2.64285714em}.oo-ui-copyTextLayout \\\\u003E .oo-ui-fieldLayout-body \\\\u003E .oo-ui-fieldLayout-field{max-width:50em}.oo-ui-copyTextLayout-multiline-button{display:block;max-width:50em;margin-top:0.5em; float:right}.oo-ui-menuLayout{top:0;left:0;right:0;bottom:0}.oo-ui-menuLayout-expanded,.oo-ui-menuLayout-expanded \\\\u003E .oo-ui-menuLayout-menu,.oo-ui-menuLayout-expanded \\\\u003E .oo-ui-menuLayout-content{position:absolute}.oo-ui-menuLayout-expanded \\\\u003E .oo-ui-menuLayout-menu{z-index:1}.oo-ui-menuLayout-static.oo-ui-menuLayout-after,.oo-ui-menuLayout-static.oo-ui-menuLayout-before{display:table;width:100%}.oo-ui-menuLayout-static.oo-ui-menuLayout-after \\\\u003E .oo-ui-menuLayout-menu,.oo-ui-menuLayout-static.oo-ui-menuLayout-before \\\\u003E .oo-ui-menuLayout-menu,.oo-ui-menuLayout-static.oo-ui-menuLayout-after \\\\u003E .oo-ui-menuLayout-content,.oo-ui-menuLayout-static.oo-ui-menuLayout-before \\\\u003E .oo-ui-menuLayout-content{display:table-cell;vertical-align:top}.oo-ui-menuLayout \\\\u003E .oo-ui-menuLayout-menu,.oo-ui-menuLayout \\\\u003E .oo-ui-menuLayout-content{transition-property:height,width,top,left,right,bottom;transition-duration:250ms}.oo-ui-menuLayout \\\\u003E .oo-ui-menuLayout-menu{height:14.28571429em;width:14.28571429em}.oo-ui-menuLayout \\\\u003E .oo-ui-menuLayout-content{top:14.28571429em;left:14.28571429em;right:14.28571429em;bottom:14.28571429em}.oo-ui-menuLayout.oo-ui-menuLayout-hideMenu \\\\u003E .oo-ui-menuLayout-menu{width:0 !important;height:0 !important;overflow:hidden}.oo-ui-menuLayout.oo-ui-menuLayout-hideMenu \\\\u003E .oo-ui-menuLayout-content{top:0 !important;left:0 !important;right:0 !important;bottom:0 !important}.oo-ui-menuLayout.oo-ui-menuLayout-showMenu.oo-ui-menuLayout-top \\\\u003E .oo-ui-menuLayout-menu{width:auto !important;left:0;top:0;right:0}.oo-ui-menuLayout.oo-ui-menuLayout-showMenu.oo-ui-menuLayout-top \\\\u003E .oo-ui-menuLayout-content{right:0 !important;bottom:0 !important;left:0 !important}.oo-ui-menuLayout.oo-ui-menuLayout-showMenu.oo-ui-menuLayout-after \\\\u003E .oo-ui-menuLayout-menu{height:auto !important;top:0;right:0;bottom:0}.oo-ui-menuLayout.oo-ui-menuLayout-showMenu.oo-ui-menuLayout-after \\\\u003E .oo-ui-menuLayout-content{bottom:0 !important;left:0 !important;top:0 !important}.oo-ui-menuLayout.oo-ui-menuLayout-showMenu.oo-ui-menuLayout-bottom \\\\u003E .oo-ui-menuLayout-menu{width:auto !important;right:0;bottom:0;left:0}.oo-ui-menuLayout.oo-ui-menuLayout-showMenu.oo-ui-menuLayout-bottom \\\\u003E .oo-ui-menuLayout-content{left:0 !important;top:0 !important;right:0 !important}.oo-ui-menuLayout.oo-ui-menuLayout-showMenu.oo-ui-menuLayout-before \\\\u003E .oo-ui-menuLayout-menu{height:auto !important;bottom:0;left:0;top:0}.oo-ui-menuLayout.oo-ui-menuLayout-showMenu.oo-ui-menuLayout-before \\\\u003E .oo-ui-menuLayout-content{top:0 !important;right:0 !important;bottom:0 !important}.oo-ui-stackLayout-continuous \\\\u003E .oo-ui-panelLayout{display:block;position:relative}.oo-ui-buttonSelectWidget{display:inline-block;border-radius:2px;margin-right:8px;z-index:0;position:relative;padding-bottom:1px}.oo-ui-buttonSelectWidget:last-child{margin-right:0}.oo-ui-buttonSelectWidget:focus{outline:0}.oo-ui-buttonSelectWidget .oo-ui-buttonOptionWidget .oo-ui-buttonElement-button{margin-right:-1px;margin-bottom:-1px;border-radius:0}.oo-ui-buttonSelectWidget .oo-ui-buttonOptionWidget:first-child .oo-ui-buttonElement-button{border-bottom-left-radius:2px;border-top-left-radius:2px}.oo-ui-buttonSelectWidget .oo-ui-buttonOptionWidget:last-child .oo-ui-buttonElement-button{margin-right:0;border-bottom-right-radius:2px;border-top-right-radius:2px}.oo-ui-buttonSelectWidget .oo-ui-buttonOptionWidget.oo-ui-widget-disabled + .oo-ui-widget-disabled \\\\u003E .oo-ui-buttonElement-button{border-left-color:var(--border-color-inverted,#fff)}.oo-ui-buttonSelectWidget.oo-ui-widget-enabled:focus .oo-ui-buttonOptionWidget.oo-ui-optionWidget-selected .oo-ui-buttonElement-button{border-color:var(--border-color-progressive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-progressive--focus,#36c),inset 0 0 0 2px var(--box-shadow-color-inverted,#fff);outline:1px solid transparent}.oo-ui-buttonSelectWidget.oo-ui-widget-enabled .oo-ui-buttonElement.oo-ui-widget-enabled \\\\u003E .oo-ui-buttonElement-button:hover,.oo-ui-buttonSelectWidget.oo-ui-widget-enabled .oo-ui-buttonElement.oo-ui-widget-enabled \\\\u003E .oo-ui-buttonElement-button:active{z-index:1}.oo-ui-buttonSelectWidget.oo-ui-widget-enabled .oo-ui-buttonElement.oo-ui-buttonElement-active \\\\u003E .oo-ui-buttonElement-button{z-index:3}.oo-ui-buttonSelectWidget.oo-ui-widget-enabled .oo-ui-buttonElement.oo-ui-widget-disabled \\\\u003E .oo-ui-buttonElement-button{z-index:-1}.oo-ui-buttonOptionWidget{display:inline-block}.oo-ui-buttonOptionWidget.oo-ui-buttonElement-active .oo-ui-buttonElement-button{cursor:default}.oo-ui-toggleButtonWidget{margin-right:8px}.oo-ui-toggleButtonWidget:last-child{margin-right:0}.oo-ui-toggleButtonWidget.oo-ui-widget-enabled.oo-ui-buttonElement-frameless.oo-ui-toggleWidget-on .oo-ui-buttonElement-button{background-color:var(--background-color-button-quiet--active,rgba(0,24,73,0.082));color:var(--color-emphasized,#000)}.oo-ui-toggleButtonWidget.oo-ui-widget-enabled.oo-ui-buttonElement-frameless.oo-ui-toggleWidget-on .oo-ui-buttonElement-button \\\\u003E .oo-ui-iconElement-icon:not(.oo-ui-image-invert){opacity:1}.oo-ui-outlineSelectWidget{height:100%}.oo-ui-outlineSelectWidget:focus{box-shadow:inset 0 0 0 2px var(--box-shadow-color-progressive--focus,#36c)}.oo-ui-outlineOptionWidget{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:11px 12px;transition-property:background-color,color;transition-duration:100ms}.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted{background-color:var(--background-color-interactive,#eaecf0);color:var(--color-emphasized,#000)}.oo-ui-outlineOptionWidget.oo-ui-optionWidget-selected,.oo-ui-outlineOptionWidget.oo-ui-optionWidget-pressed{background-color:var(--background-color-progressive-subtle,#eaf3ff);color:var(--color-progressive,#36c)}.oo-ui-outlineOptionWidget.oo-ui-indicatorElement .oo-ui-labelElement-label{padding-right:1.5em}.oo-ui-outlineOptionWidget-level-1{padding-left:2.571em}.oo-ui-outlineOptionWidget-level-1.oo-ui-iconElement{padding-left:4.429em}.oo-ui-outlineOptionWidget-level-1.oo-ui-iconElement .oo-ui-iconElement-icon{left:2.571em}.oo-ui-outlineOptionWidget-level-2{padding-left:5.142em}.oo-ui-outlineOptionWidget-level-2.oo-ui-iconElement{padding-left:6.857em}.oo-ui-outlineOptionWidget-level-2.oo-ui-iconElement .oo-ui-iconElement-icon{left:4.429em}.oo-ui-outlineControlsWidget{background-color:var(--background-color-base,#fff)}.oo-ui-outlineControlsWidget-items,.oo-ui-outlineControlsWidget-movers{float:left;box-sizing:border-box}.oo-ui-outlineControlsWidget-items{float:left}.oo-ui-outlineControlsWidget-items .oo-ui-buttonWidget{float:left}.oo-ui-outlineControlsWidget-movers{float:right}.oo-ui-outlineControlsWidget-items \\\\u003E .oo-ui-buttonWidget,.oo-ui-outlineControlsWidget-movers \\\\u003E .oo-ui-buttonWidget{height:2.2857143em;width:2.2857143em;margin:0 !important}.oo-ui-tabSelectWidget{text-align:left;overflow:auto hidden;-webkit-overflow-scrolling:auto}.oo-ui-tabSelectWidget-mobile{white-space:nowrap}.oo-ui-tabSelectWidget-framed{background-color:var(--background-color-interactive,#eaecf0)}.oo-ui-tabSelectWidget-frameless{box-shadow:inset 0 -1px 0 0 var(--border-color-base,#a2a9b1)}.oo-ui-tabSelectWidget-mobile::after{content:'';position:absolute;right:0;margin-top:6px;width:18px;height:2.07142859em;pointer-events:none}.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed::after{background-image:linear-gradient(to right,transparent,var(--background-color-interactive,#eaecf0))}.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless::after{background-image:linear-gradient(to right,transparent,var(--background-color-base,#fff))}.oo-ui-tabSelectWidget.oo-ui-widget-enabled:focus{outline:0}.oo-ui-tabOptionWidget{display:inline-block;box-sizing:border-box;vertical-align:bottom;color:var(--color-base,#202122);margin:6px 0 0 6px;padding:0 8px;border-color:transparent;border-style:solid;font-weight:700;line-height:1;transition-property:background-color,color,border-color;transition-duration:100ms}.oo-ui-tabOptionWidget.oo-ui-optionWidget-selected{cursor:default}.oo-ui-tabOptionWidget \\\\u003E .oo-ui-labelElement-label{color:inherit;padding:5px 5px;line-height:1.42857143em;text-decoration:inherit}.oo-ui-tabSelectWidget-mobile .oo-ui-tabOptionWidget:last-child{margin-right:18px}.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget{border-width:1px 1px 0 1px;border-top-left-radius:2px;border-top-right-radius:2px}.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget .oo-ui-labelElement-label{border-bottom:2px solid transparent;padding:5px 5px 3px;transition-property:border-color;transition-duration:100ms}.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected{background-color:var(--background-color-base,#fff);color:var(--color-emphasized,#000)}.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label{border-bottom-color:var(--background-color-base,#fff)}.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover{background-color:rgba(255,255,255,0.3);color:var(--color-base,#202122)}.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active{background-color:rgba(255,255,255,0.8);color:var(--color-emphasized,#000)}.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover{background-color:var(--background-color-base,#fff)}.oo-ui-tabSelectWidget-framed.oo-ui-widget-enabled:focus .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label{border-bottom-color:var(--border-color-progressive--focus,#36c)}.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget{margin:6px 6px -1px 0;border-width:1px 0;box-shadow:inset 0 0 0 0 var(--color-progressive,#36c);transition-property:color,box-shadow;transition-duration:100ms}.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected{color:var(--color-progressive,#36c);box-shadow:inset 0 -2px 0 0 var(--color-progressive,#36c)}.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-widget-enabled:not(.oo-ui-optionWidget-selected):hover{color:var(--color-progressive--hover,#4b77d6);box-shadow:inset 0 -2px 0 0 var(--color-progressive--hover,#4b77d6)}.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-widget-enabled:not(.oo-ui-optionWidget-selected):active{color:var(--color-progressive--active,#233566);box-shadow:inset 0 -2px 0 0 var(--color-progressive--active,#233566)}.oo-ui-tabSelectWidget-frameless.oo-ui-widget-enabled:focus .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected{border-radius:2px;box-shadow:inset 0 0 0 2px var(--color-progressive,#36c)}.oo-ui-tagMultiselectWidget{display:inline-block;position:relative;width:100%;max-width:50em;vertical-align:top}.oo-ui-tagMultiselectWidget-handle{width:100%;display:block;position:relative}.oo-ui-tagMultiselectWidget-handle \\\\u003E .oo-ui-iconElement-icon,.oo-ui-tagMultiselectWidget-handle \\\\u003E .oo-ui-indicatorElement-indicator{position:absolute;top:0;height:100%}.oo-ui-tagMultiselectWidget-content{position:relative}.oo-ui-tagMultiselectWidget-group{display:inline}.oo-ui-tagMultiselectWidget-outlined{width:100%}.oo-ui-tagMultiselectWidget.oo-ui-widget-disabled .oo-ui-tagMultiselectWidget-group \\\\u003E input{display:none}.oo-ui-tagMultiselectWidget-focusTrap{display:inline-block;height:1px;width:1px}.oo-ui-tagMultiselectWidget-focusTrap:focus{outline:0}.oo-ui-tagMultiselectWidget-handle{box-sizing:border-box;min-height:32px;margin-right:8px;border:1px solid var(--border-color-base,#a2a9b1);border-radius:2px;padding:0 8px;line-height:1}.oo-ui-tagMultiselectWidget-handle:last-child{margin-right:0}.oo-ui-tagMultiselectWidget-handle .oo-ui-tagMultiselectWidget-group{display:inline-block;max-width:100%;margin-top:4px;margin-left:-0.14285714em}.oo-ui-tagMultiselectWidget-handle .oo-ui-tagMultiselectWidget-group \\\\u003E input{background-color:transparent;color:var(--color-emphasized,#000);box-sizing:border-box;height:2.14285716em;border:0;padding:5px 0 5px 0.57142857em;margin-top:-4px;font-family:inherit;font-size:inherit;line-height:1.42857143em;vertical-align:top;  }.oo-ui-tagMultiselectWidget-handle .oo-ui-tagMultiselectWidget-group \\\\u003E input::-webkit-input-placeholder{color:var(--color-placeholder,#72777d);opacity:1}.oo-ui-tagMultiselectWidget-handle .oo-ui-tagMultiselectWidget-group \\\\u003E input::placeholder{color:var(--color-placeholder,#72777d);opacity:1}.oo-ui-tagMultiselectWidget-handle .oo-ui-tagMultiselectWidget-group \\\\u003E input:focus{outline:1px solid transparent}.oo-ui-tagMultiselectWidget-handle .oo-ui-tagMultiselectWidget-group \\\\u003E input:first-child{margin-left:0.14285714em;padding-left:0}.oo-ui-tagMultiselectWidget.oo-ui-iconElement .oo-ui-tagMultiselectWidget-handle{padding-left:2.0285714em}.oo-ui-tagMultiselectWidget.oo-ui-iconElement .oo-ui-tagMultiselectWidget-handle \\\\u003E .oo-ui-iconElement-icon{left:0;margin:0 0.3em}.oo-ui-tagMultiselectWidget.oo-ui-indicatorElement .oo-ui-tagMultiselectWidget-handle{padding-right:2.4071429em}.oo-ui-tagMultiselectWidget.oo-ui-indicatorElement .oo-ui-tagMultiselectWidget-handle \\\\u003E .oo-ui-indicatorElement-indicator{right:0;margin:0 0.775em}.oo-ui-tagMultiselectWidget.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagMultiselectWidget-handle{border-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.oo-ui-tagMultiselectWidget.oo-ui-tagMultiselectWidget-outlined .oo-ui-inputWidget-input{border-top-left-radius:0;border-top-right-radius:0}.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled{background-color:var(--background-color-base,#fff)}.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle{transition-property:border-color,box-shadow;transition-duration:250ms}.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-inlined:hover .oo-ui-tagMultiselectWidget-handle{border-color:var(--border-color-input--hover,#72777d)}.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-inlined.oo-ui-tagMultiselectWidget-focus .oo-ui-tagMultiselectWidget-handle{border-color:var(--border-color-progressive--focus,#36c);outline:1px solid transparent;box-shadow:inset 0 0 0 1px var(--box-shadow-color-progressive--focus,#36c)}.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-inlined.oo-ui-flaggedElement-invalid .oo-ui-tagMultiselectWidget-handle,.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-inlined.oo-ui-flaggedElement-invalid:hover .oo-ui-tagMultiselectWidget-handle{border-color:var(--border-color-error,#9f3526)}.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined{background-color:var(--background-color-neutral-subtle,#f8f9fa)}.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled{background-color:var(--background-color-base,#fff)}.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined.oo-ui-flaggedElement-invalid .oo-ui-inputWidget-input{border-color:var(--border-color-error,#9f3526)}.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-invalid .oo-ui-inputWidget-input{color:var(--color-error,#d73333)}.oo-ui-tagMultiselectWidget.oo-ui-widget-disabled .oo-ui-tagMultiselectWidget-handle{background-color:var(--background-color-disabled-subtle,#eaecf0);color:var(--color-disabled,#72777d);text-shadow:0 1px 1px var(--color-inverted,#fff);border-color:var(--border-color-disabled,#c8ccd1)}.oo-ui-tagMultiselectWidget.oo-ui-widget-disabled .oo-ui-tagMultiselectWidget-handle \\\\u003E .oo-ui-iconElement-icon,.oo-ui-tagMultiselectWidget.oo-ui-widget-disabled .oo-ui-tagMultiselectWidget-handle \\\\u003E .oo-ui-indicatorElement-indicator{opacity:0.51}.oo-ui-tagItemWidget{position:relative;display:inline-block;cursor:default;white-space:nowrap;box-sizing:border-box;width:auto;max-width:100%;height:1.57142857em;margin:0 4px 4px 0;border:1px solid var(--border-color-base,#a2a9b1);border-radius:1.57142857em;padding:0 8px;line-height:1.42857143em;vertical-align:middle}.oo-ui-tagItemWidget.oo-ui-labelElement .oo-ui-labelElement-label{display:inline-block;max-width:100%;text-overflow:ellipsis;overflow:hidden}.oo-ui-tagItemWidget.oo-ui-labelElement:not(.oo-ui-tagItemWidget-fixed) .oo-ui-labelElement-label{cursor:text}.oo-ui-tagItemWidget.oo-ui-labelElement .oo-ui-labelElement-label{font-size:0.92857143em;line-height:1.61538462em}.oo-ui-tagItemWidget.oo-ui-widget-enabled{color:var(--color-base,#202122);transition-property:background-color,color,border-color,box-shadow;transition-duration:100ms}.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover{background-color:var(--background-color-base,#fff);color:var(--color-base--hover,#404244);border-color:var(--border-color-base,#a2a9b1)}.oo-ui-tagItemWidget.oo-ui-widget-enabled:focus{border-color:var(--border-color-progressive--focus,#36c);box-shadow:inset 0 0 0 1px var(--box-shadow-color-progressive--focus,#36c);outline:1px solid transparent}.oo-ui-tagItemWidget.oo-ui-widget-enabled:not(.oo-ui-tagItemWidget-fixed){background-color:var(--background-color-interactive-subtle,#f8f9fa);padding-right:23px}.oo-ui-tagItemWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-invalid{border-color:var(--border-color-error,#9f3526)}.oo-ui-tagItemWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-invalid:hover{border-color:var(--border-color-error,#9f3526)}.oo-ui-tagItemWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-invalid:focus{border-color:var(--border-color-error,#9f3526);box-shadow:inset 0 0 0 1px var(--box-shadow-color-destructive--focus,#36c)}.oo-ui-tagItemWidget.oo-ui-widget-enabled \\\\u003E .oo-ui-buttonElement{display:block;position:absolute;top:0;right:0}.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button{display:block;min-width:20px;min-height:20px;border:0;border-radius:1.57142857em;padding-top:1.42857143em;padding-left:1.42857143em;transition-property:background-color;transition-duration:100ms}.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover{background-color:var(--background-color-base,#fff)}.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:active{background-color:var(--background-color-interactive,#eaecf0)}.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button .oo-ui-icon-close{left:3px;min-width:14px;width:1em}.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button .oo-ui-labelElement-label,.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button .oo-ui-indicatorElement-indicator{display:none}.oo-ui-tagItemWidget.oo-ui-widget-disabled{background-color:var(--background-color-disabled-subtle,#eaecf0);color:var(--color-disabled,#72777d);border-color:var(--border-color-disabled,#c8ccd1);text-shadow:0 1px 1px var(--color-inverted,#fff)}.oo-ui-tagItemWidget.oo-ui-widget-disabled:focus{outline:0}.oo-ui-tagItemWidget.oo-ui-widget-disabled \\\\u003E .oo-ui-buttonElement{display:none}.oo-ui-searchWidget-query{position:absolute;top:0;left:0;right:0}.oo-ui-searchWidget-query .oo-ui-textInputWidget{width:100%}.oo-ui-searchWidget-results{position:absolute;bottom:0;left:0;right:0;overflow:hidden auto;-webkit-overflow-scrolling:touch}.oo-ui-searchWidget-query{height:4em;padding:0 16px;border-bottom:1px solid var(--border-color-subtle,#c8ccd1);box-shadow:0 1px 1px rgba(0,0,0,0.2)}.oo-ui-searchWidget-query .oo-ui-textInputWidget{margin:12px 0}.oo-ui-searchWidget-results{top:4em;padding:12px 16px 16px;line-height:0}\\\"]},{\\\"ooui-copytextlayout-copy\\\":\\\"Copy\\\",\\\"ooui-item-remove\\\":\\\"Remove\\\",\\\"ooui-outline-control-move-down\\\":\\\"Move item down\\\",\\\"ooui-outline-control-move-up\\\":\\\"Move item up\\\",\\\"ooui-outline-control-remove\\\":\\\"Remove item\\\"}];});\\n// Saved in localStorage at 2026-03-19T02:50:35.210Z\\n//# sourceURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs-ui-widgets&skin=vector-2022&version=14us1\\n//# sourceMappingURL=https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs-ui-widgets&skin=vector-2022&sourcemap=1&version=14us1\"},\"vary\":\"vector-2022:3:2:en\",\"asOf\":177389}",
                        "isLocalStorage": true
                    }
                ]
            },
            "lists": {
                "ips": [
                    "2a02:ec80:300:ed1a::2:b",
                    "2a02:ec80:300:ed1a::1",
                    "2a02:ec80:a000:1::2bc"
                ],
                "countries": [
                    "US"
                ],
                "asns": [
                    "14907"
                ],
                "domains": [
                    "wikitech.wikimedia.org",
                    "auth.wikimedia.org",
                    "upload.wikimedia.org",
                    "www.toolforge.org",
                    "toolforge.org"
                ],
                "servers": [
                    "ATS/9.2.11",
                    "mw-web.eqiad.main-55cb4c7796-cmzt5",
                    "mw-web.eqiad.canary-cb899dc8b-n67tq",
                    "mw-web.codfw.main-55946566c5-p2vg9",
                    "mw-web.eqiad.main-757669f757-qsldh",
                    "mw-web.eqiad.main-55cb4c7796-fv7gq",
                    "mw-web.eqiad.main-55cb4c7796-ks7xh",
                    "mw-web.eqiad.main-55cb4c7796-77kw2",
                    "envoy",
                    "mw-web.eqiad.main-98b584fdd-zdpz2",
                    "mw-web.eqiad.main-98b584fdd-nb68n",
                    "mw-web.eqiad.main-98b584fdd-pz5lk"
                ],
                "urls": [
                    "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                    "https://toolforge.org/",
                    "https://www.toolforge.org/",
                    "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.init.styles%7Cext.dismissableSiteNotice.styles%7Cext.uls.pt%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.ui.button%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022",
                    "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                    "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=site.styles&only=styles&skin=vector-2022",
                    "https://wikitech.wikimedia.org/static/images/icons/wikitech.svg",
                    "https://wikitech.wikimedia.org/static/images/mobile/copyright/wikitech-wordmark.svg",
                    "https://upload.wikimedia.org/wikipedia/commons/thumb/b/b3/Ambox_PR.svg/40px-Ambox_PR.svg.png",
                    "https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons&image=menu&format=original&lang=en&skin=vector-2022&version=94rrm",
                    "https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons&image=language&format=original&lang=en&skin=vector-2022&version=94rrm",
                    "https://wikitech.wikimedia.org/w/skins/Vector/resources/skins.vector.styles/images/link-external-small-ltr-progressive.svg?fb64d",
                    "https://wikitech.wikimedia.org/static/images/footer/wikimedia-button.svg",
                    "https://wikitech.wikimedia.org/w/resources/assets/poweredby_mediawiki.svg",
                    "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.gadget.site&skin=vector-2022&version=1tcgt",
                    "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.core.utils.parsing%7Cext.visualEditor.desktopArticleTarget.init%7Cext.visualEditor.progressBarWidget%2CsupportCheck%2CtargetLoader%2CtempWikitextEditorWidget%2Ctrack%2Cve&skin=vector-2022&version=1hirg",
                    "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                    "https://auth.wikimedia.org/metawiki/wiki/Special:CentralAutoLogin/checkLoggedIn?useformat=desktop&wikiid=labswiki&usesul3=1&type=script",
                    "https://wikitech.wikimedia.org/wiki/Special:CentralAutoLogin/start?useformat=desktop&type=script&usesul3=1",
                    "https://wikitech.wikimedia.org/static/favicon/wikitech.ico",
                    "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.action.view.postEdit%7Cmediawiki.notification%2CtempUserCreated%7Coojs-ui.styles.icons-interactions&skin=vector-2022&version=kda9b",
                    "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs-ui-widgets%7Coojs-ui-widgets.icons%7Coojs-ui.styles.icons-editing-core&skin=vector-2022&version=12ynk"
                ],
                "linkDomains": [
                    "phabricator.wikimedia.org",
                    "donate.wikimedia.org",
                    "meta.wikimedia.org",
                    "www.mediawiki.org",
                    "web.libera.chat",
                    "t.me",
                    "lists.wikimedia.org",
                    "techblog.wikimedia.org",
                    "creativecommons.org",
                    "foundation.wikimedia.org",
                    "developer.wikimedia.org",
                    "stats.wikimedia.org",
                    "www.wikimedia.org"
                ],
                "certificates": [
                    {
                        "subjectName": "*.wikipedia.org",
                        "issuer": "E8",
                        "validFrom": 1770414092,
                        "validTo": 1778190091
                    },
                    {
                        "subjectName": "upload.wikimedia.org",
                        "issuer": "E8",
                        "validFrom": 1770878691,
                        "validTo": 1778654690
                    }
                ],
                "hashes": [
                    "545e1241a88187028fc7cf2f8f8edcdf71f30f6b519c5535e499cbbdfa866f60",
                    "ea4261dc30d40b295c9793d0fa67effafd3b9f6fd3ea6a083edd26339eb49dfc",
                    "f637e2cfcee169507265b232704019c6d1c41971eefc22729dbabe6e6d76d78c",
                    "49b01b933057426c18aaa713ef0871b2a45b092e59c657edc2a6762dbe626350",
                    "e5a67c19d54d2bbdc8ac244c1c269bc8bcf4d3663835059da7f4842912ff2864",
                    "cde4d6dfbbac109d8267b2d3a5000b561f2eed814f4e0e98b67ae9ec9a4c8c81",
                    "4476fd51cbb5ea255c8fb20df06bc59d3143b82f7a02907376380189a93a6423",
                    "4de5f25341a457e9fbcf7c29c44158d94ce7f74e91f92ae30b03fe7606716d08",
                    "7a85a9bbf014ed6489d73fd297ed80c2d04fee0936360a469b4fe82fd72c42fe",
                    "0b220227b2e52d8724a40010b8c132ece82695fa99d6ae725093c3c8630a0172",
                    "6ea08036102c02c8a1b804e21361c4b7422b0c9bbb40994f361a28aa6436540f",
                    "b324430a72a978ffc29853c1dbb95679833c58b30e5b5d10e5063f96f98c5ba2",
                    "0c2aa872dd39b943efde8b4e444bd7c627e5ab740684356046bbb8a2248b57cd",
                    "75444929595b7c4040288c822835ce3e8f82d7b67eb6b9a3546765ad74698ede",
                    "66f479b89370db78f7936781dacebd22d2513a885dcd886805518b69b1326993",
                    "0b5191439548225b80c8ec830cbda7e898194418559f68d65ba743444734baff",
                    "f0dc927e794cdc87464e19497d959a087488e7d82606e71bc4343937b69e1205",
                    "3e0e7bc95f60a5cd1b2d131baeeafd9a42f7876893ab2b2f62d2517f0928dc22",
                    "408aab25406d374cb9096652bbf460dd30e2423d2e1363b8b89836eb5e62b1c8",
                    "c768e9c3a2bd3726bb5e5b16a05c30e5b040a659bda1ebd1fe67b1216cf1b647",
                    "fe1b30e36d2e53edc45af9b7bd8af1638bd7acfabb8035bdd829fdcdc04828a8"
                ]
            },
            "meta": {
                "processors": {
                    "umbrella": {
                        "data": [
                            {
                                "hostname": "upload.wikimedia.org",
                                "rank": 3003
                            },
                            {
                                "hostname": "auth.wikimedia.org",
                                "rank": 5897
                            }
                        ]
                    },
                    "geoip": {
                        "data": [
                            {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "geoip": {
                                    "country": "US",
                                    "region": "",
                                    "timezone": "America/Chicago",
                                    "city": "",
                                    "ll": [
                                        37.751,
                                        -97.822
                                    ],
                                    "country_name": "United States",
                                    "metro": 0
                                }
                            },
                            {
                                "ip": "2a02:ec80:300:ed1a::2:b",
                                "geoip": {
                                    "country": "US",
                                    "region": "",
                                    "timezone": "America/Chicago",
                                    "city": "",
                                    "ll": [
                                        37.751,
                                        -97.822
                                    ],
                                    "country_name": "United States",
                                    "metro": 0
                                }
                            },
                            {
                                "ip": "2a02:ec80:a000:1::2bc",
                                "geoip": {
                                    "country": "US",
                                    "region": "",
                                    "timezone": "America/Chicago",
                                    "city": "",
                                    "ll": [
                                        37.751,
                                        -97.822
                                    ],
                                    "country_name": "United States",
                                    "metro": 0
                                }
                            }
                        ]
                    },
                    "asn": {
                        "data": [
                            {
                                "ip": "2a02:ec80:300:ed1a::1",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            {
                                "ip": "2a02:ec80:300:ed1a::2:b",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:300::/48"
                            },
                            {
                                "ip": "2a02:ec80:a000:1::2bc",
                                "asn": "14907",
                                "country": "US",
                                "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                                "name": "Wikimedia Foundation Inc.",
                                "route": "2a02:ec80:a000::/48"
                            }
                        ]
                    },
                    "rdns": {
                        "data": []
                    },
                    "wappa": {
                        "data": [
                            {
                                "confidence": [
                                    {
                                        "confidence": 100,
                                        "pattern": "bootstrap(?:[^>]*?([0-9a-fA-F]{7,40}|[\\d]+(?:.[\\d]+(?:.[\\d]+)?)?)|)[^>]*?(?:\\.min)?\\.js"
                                    }
                                ],
                                "confidenceTotal": 100,
                                "app": "Bootstrap",
                                "icon": "Bootstrap.svg",
                                "website": "https://getbootstrap.com",
                                "categories": [
                                    {
                                        "groups": [
                                            9
                                        ],
                                        "name": "UI frameworks",
                                        "priority": 7
                                    }
                                ]
                            },
                            {
                                "confidence": [
                                    {
                                        "confidence": 100,
                                        "pattern": "jquery"
                                    }
                                ],
                                "confidenceTotal": 100,
                                "app": "jQuery",
                                "icon": "jQuery.svg",
                                "website": "https://jquery.com",
                                "categories": [
                                    {
                                        "groups": [
                                            9
                                        ],
                                        "name": "JavaScript libraries",
                                        "priority": 9
                                    }
                                ]
                            }
                        ]
                    }
                }
            },
            "page": {
                "asn": "AS14907",
                "asnname": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                "city": "",
                "country": "US",
                "domain": "wikitech.wikimedia.org",
                "ip": "2a02:ec80:300:ed1a::1",
                "server": "ATS/9.2.11",
                "url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                "redirected": "off-domain",
                "apexDomainAgeDays": 4740,
                "language": "en",
                "mimeType": "text/html",
                "title": "Portal:Toolforge - Wikitech",
                "tlsValidDays": 89,
                "tlsAgeDays": 40,
                "domainAgeDays": 4434,
                "tlsValidFrom": "2026-02-06T21:41:32.000Z",
                "apexDomain": "wikimedia.org",
                "tlsIssuer": "E8",
                "status": "200"
            },
            "scanner": {
                "country": "ch"
            },
            "stats": {
                "IPv6Percentage": 100,
                "adBlocked": 0,
                "domainStats": [
                    {
                        "count": 18,
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "domain": "wikitech.wikimedia.org",
                        "size": 2174281,
                        "encodedSize": 487541,
                        "countries": [
                            "US"
                        ],
                        "index": 2,
                        "initiators": [
                            "wikitech.wikimedia.org"
                        ],
                        "redirects": 1
                    },
                    {
                        "count": 1,
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "domain": "auth.wikimedia.org",
                        "size": 254,
                        "encodedSize": 1379,
                        "countries": [
                            "US"
                        ],
                        "index": 20,
                        "initiators": [],
                        "redirects": 0
                    },
                    {
                        "count": 1,
                        "ips": [
                            "2a02:ec80:300:ed1a::2:b"
                        ],
                        "domain": "upload.wikimedia.org",
                        "size": 2640,
                        "encodedSize": 3758,
                        "countries": [
                            "US"
                        ],
                        "index": 8,
                        "initiators": [
                            "wikitech.wikimedia.org"
                        ],
                        "redirects": 0
                    },
                    {
                        "count": 1,
                        "ips": [
                            "2a02:ec80:a000:1::2bc"
                        ],
                        "domain": "www.toolforge.org",
                        "size": 0,
                        "encodedSize": 1241,
                        "countries": [
                            "US"
                        ],
                        "index": 1,
                        "initiators": [],
                        "redirects": 1
                    },
                    {
                        "count": 1,
                        "ips": [
                            "2a02:ec80:a000:1::2bc"
                        ],
                        "domain": "toolforge.org",
                        "size": 0,
                        "encodedSize": 1055,
                        "countries": [
                            "US"
                        ],
                        "index": 0,
                        "initiators": [],
                        "redirects": 1
                    }
                ],
                "ipStats": [
                    {
                        "requests": 2,
                        "domains": [
                            "toolforge.org",
                            "www.toolforge.org"
                        ],
                        "ip": "2a02:ec80:a000:1::2bc",
                        "asn": {
                            "ip": "2a02:ec80:a000:1::2bc",
                            "asn": "14907",
                            "country": "US",
                            "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                            "name": "Wikimedia Foundation Inc.",
                            "route": "2a02:ec80:a000::/48"
                        },
                        "dns": [],
                        "geoip": {
                            "country": "US",
                            "region": "",
                            "timezone": "America/Chicago",
                            "city": "",
                            "ll": [
                                37.751,
                                -97.822
                            ],
                            "country_name": "United States",
                            "metro": 0
                        },
                        "size": 0,
                        "encodedSize": 2296,
                        "countries": [
                            "US"
                        ],
                        "index": 0,
                        "ipv6": true,
                        "redirects": 2,
                        "count": null
                    },
                    {
                        "requests": 19,
                        "domains": [
                            "wikitech.wikimedia.org",
                            "auth.wikimedia.org"
                        ],
                        "ip": "2a02:ec80:300:ed1a::1",
                        "asn": {
                            "ip": "2a02:ec80:300:ed1a::1",
                            "asn": "14907",
                            "country": "US",
                            "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                            "name": "Wikimedia Foundation Inc.",
                            "route": "2a02:ec80:300::/48"
                        },
                        "dns": [],
                        "geoip": {
                            "country": "US",
                            "region": "",
                            "timezone": "America/Chicago",
                            "city": "",
                            "ll": [
                                37.751,
                                -97.822
                            ],
                            "country_name": "United States",
                            "metro": 0
                        },
                        "size": 2174535,
                        "encodedSize": 488920,
                        "countries": [
                            "US"
                        ],
                        "index": 2,
                        "ipv6": true,
                        "redirects": 1,
                        "count": null
                    },
                    {
                        "requests": 1,
                        "domains": [
                            "upload.wikimedia.org"
                        ],
                        "ip": "2a02:ec80:300:ed1a::2:b",
                        "asn": {
                            "ip": "2a02:ec80:300:ed1a::2:b",
                            "asn": "14907",
                            "country": "US",
                            "description": "WIKIMEDIA - Wikimedia Foundation Inc., US",
                            "name": "Wikimedia Foundation Inc.",
                            "route": "2a02:ec80:300::/48"
                        },
                        "dns": [],
                        "geoip": {
                            "country": "US",
                            "region": "",
                            "timezone": "America/Chicago",
                            "city": "",
                            "ll": [
                                37.751,
                                -97.822
                            ],
                            "country_name": "United States",
                            "metro": 0
                        },
                        "size": 2640,
                        "encodedSize": 3758,
                        "countries": [
                            "US"
                        ],
                        "index": 8,
                        "ipv6": true,
                        "redirects": 0,
                        "count": null
                    }
                ],
                "malicious": 0,
                "protocolStats": [
                    {
                        "count": 19,
                        "size": 2177175,
                        "encodedSize": 488966,
                        "ips": [
                            "2a02:ec80:300:ed1a::1",
                            "2a02:ec80:300:ed1a::2:b"
                        ],
                        "countries": [
                            "US"
                        ],
                        "securityState": [],
                        "protocol": "h2"
                    }
                ],
                "regDomainStats": [
                    {
                        "count": 20,
                        "ips": [
                            "2a02:ec80:300:ed1a::1",
                            "2a02:ec80:300:ed1a::2:b"
                        ],
                        "regDomain": "wikimedia.org",
                        "size": 2177175,
                        "encodedSize": 492678,
                        "countries": [],
                        "index": 2,
                        "subDomains": [
                            {
                                "domain": "wikitech",
                                "country": "US"
                            },
                            {
                                "domain": "upload",
                                "country": "US"
                            },
                            {
                                "domain": "auth",
                                "country": "US"
                            }
                        ],
                        "redirects": 1
                    },
                    {
                        "count": 2,
                        "ips": [
                            "2a02:ec80:a000:1::2bc"
                        ],
                        "regDomain": "toolforge.org",
                        "size": 0,
                        "encodedSize": 2296,
                        "countries": [],
                        "index": 0,
                        "subDomains": [
                            {
                                "domain": "",
                                "country": "US"
                            },
                            {
                                "domain": "www",
                                "country": "US"
                            }
                        ],
                        "redirects": 2
                    }
                ],
                "resourceStats": [
                    {
                        "count": 8,
                        "size": 41045,
                        "encodedSize": 23379,
                        "latency": 0,
                        "countries": [
                            "US"
                        ],
                        "ips": [
                            "2a02:ec80:300:ed1a::1",
                            "2a02:ec80:300:ed1a::2:b"
                        ],
                        "type": "Image",
                        "compression": "1.8",
                        "percentage": 38
                    },
                    {
                        "count": 7,
                        "size": 1761856,
                        "encodedSize": 404504,
                        "latency": 0,
                        "countries": [
                            "US"
                        ],
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "type": "Script",
                        "compression": "4.4",
                        "percentage": 33
                    },
                    {
                        "count": 2,
                        "size": 311666,
                        "encodedSize": 39390,
                        "latency": 0,
                        "countries": [
                            "US"
                        ],
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "type": "Stylesheet",
                        "compression": "7.9",
                        "percentage": 9
                    },
                    {
                        "count": 1,
                        "size": 9662,
                        "encodedSize": 5069,
                        "latency": 0,
                        "countries": [
                            "US"
                        ],
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "type": "Other",
                        "compression": "1.9",
                        "percentage": 4
                    },
                    {
                        "count": 1,
                        "size": 52946,
                        "encodedSize": 16624,
                        "latency": 0,
                        "countries": [
                            "US"
                        ],
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "type": "Document",
                        "compression": "3.2",
                        "percentage": 4
                    }
                ],
                "securePercentage": 95,
                "secureRequests": 18,
                "serverStats": [
                    {
                        "count": 8,
                        "size": 105395,
                        "encodedSize": 41799,
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "countries": [
                            "US"
                        ],
                        "server": "ATS/9.2.11"
                    },
                    {
                        "count": 1,
                        "size": 115184,
                        "encodedSize": 20392,
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "countries": [
                            "US"
                        ],
                        "server": "mw-web.eqiad.main-55cb4c7796-cmzt5"
                    },
                    {
                        "count": 1,
                        "size": 58959,
                        "encodedSize": 8959,
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "countries": [
                            "US"
                        ],
                        "server": "mw-web.eqiad.canary-cb899dc8b-n67tq"
                    },
                    {
                        "count": 1,
                        "size": 254,
                        "encodedSize": 1379,
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "countries": [
                            "US"
                        ],
                        "server": "mw-web.codfw.main-55946566c5-p2vg9"
                    },
                    {
                        "count": 1,
                        "size": 1466217,
                        "encodedSize": 334352,
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "countries": [
                            "US"
                        ],
                        "server": "mw-web.eqiad.main-757669f757-qsldh"
                    },
                    {
                        "count": 1,
                        "size": 61036,
                        "encodedSize": 17944,
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "countries": [
                            "US"
                        ],
                        "server": "mw-web.eqiad.main-55cb4c7796-fv7gq"
                    },
                    {
                        "count": 1,
                        "size": 704,
                        "encodedSize": 1364,
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "countries": [
                            "US"
                        ],
                        "server": "mw-web.eqiad.main-55cb4c7796-ks7xh"
                    },
                    {
                        "count": 1,
                        "size": 221,
                        "encodedSize": 1111,
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "countries": [
                            "US"
                        ],
                        "server": "mw-web.eqiad.main-55cb4c7796-77kw2"
                    },
                    {
                        "count": 1,
                        "size": 2640,
                        "encodedSize": 3758,
                        "ips": [
                            "2a02:ec80:300:ed1a::2:b"
                        ],
                        "countries": [
                            "US"
                        ],
                        "server": "envoy"
                    },
                    {
                        "count": 1,
                        "size": 6072,
                        "encodedSize": 2822,
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "countries": [
                            "US"
                        ],
                        "server": "mw-web.eqiad.main-98b584fdd-zdpz2"
                    },
                    {
                        "count": 1,
                        "size": 54899,
                        "encodedSize": 18518,
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "countries": [
                            "US"
                        ],
                        "server": "mw-web.eqiad.main-98b584fdd-nb68n"
                    },
                    {
                        "count": 1,
                        "size": 305594,
                        "encodedSize": 36568,
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "countries": [
                            "US"
                        ],
                        "server": "mw-web.eqiad.main-98b584fdd-pz5lk"
                    }
                ],
                "tlsStats": [
                    {
                        "count": 18,
                        "size": 2176921,
                        "encodedSize": 487587,
                        "ips": [
                            "2a02:ec80:300:ed1a::1",
                            "2a02:ec80:300:ed1a::2:b"
                        ],
                        "countries": [
                            "US"
                        ],
                        "protocols": {
                            "TLS 1.3 /  / AES_128_GCM": 18
                        },
                        "securityState": "secure"
                    },
                    {
                        "count": 1,
                        "size": 254,
                        "encodedSize": 1379,
                        "ips": [
                            "2a02:ec80:300:ed1a::1"
                        ],
                        "countries": [
                            "US"
                        ],
                        "protocols": [],
                        "securityState": "unknown"
                    }
                ],
                "totalLinks": 25,
                "uniqCountries": 1
            },
            "submitter": {
                "country": "GB"
            },
            "task": {
                "method": "api",
                "source": "fb1d0777",
                "tags": [
                    "website-rank",
                    "toolforge.org"
                ],
                "time": "2026-03-19T02:50:38.820Z",
                "url": "https://toolforge.org/",
                "uuid": "019d0400-72ee-71b5-905a-7ef239549236",
                "visibility": "public",
                "reportURL": "https://urlscan.io/result/019d0400-72ee-71b5-905a-7ef239549236/",
                "screenshotURL": "https://urlscan.io/screenshots/019d0400-72ee-71b5-905a-7ef239549236.png",
                "domURL": "https://urlscan.io/dom/019d0400-72ee-71b5-905a-7ef239549236/",
                "domain": "toolforge.org"
            },
            "verdicts": {
                "overall": {
                    "score": 0,
                    "categories": [],
                    "brands": [],
                    "tags": [],
                    "malicious": false,
                    "hasVerdicts": true
                },
                "urlscan": {
                    "score": 0,
                    "categories": [],
                    "brands": [],
                    "tags": [],
                    "malicious": false,
                    "hasVerdicts": false
                },
                "engines": {
                    "score": -84,
                    "malicious": false,
                    "categories": [],
                    "enginesTotal": 0,
                    "maliciousTotal": 0,
                    "benignTotal": 0,
                    "maliciousVerdicts": [],
                    "benignVerdicts": [],
                    "hasVerdicts": true,
                    "tags": [
                        "urlscan-ml",
                        "urlscan-ml-60c5e22"
                    ]
                },
                "community": {
                    "score": 0,
                    "categories": [],
                    "brands": [],
                    "votesTotal": 0,
                    "votesMalicious": 0,
                    "votesBenign": 0,
                    "malicious": false,
                    "hasVerdicts": false
                }
            }
        },
        "report_summary": {
            "page_url": "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
            "page_domain": "wikitech.wikimedia.org",
            "ip": "2a02:ec80:300:ed1a::1",
            "country": "US",
            "server": "ATS/9.2.11",
            "asn": "AS14907",
            "status_code": 200,
            "screenshot_url": "https://urlscan.io/screenshots/019d0400-72ee-71b5-905a-7ef239549236.png",
            "report_url": "https://urlscan.io/result/019d0400-72ee-71b5-905a-7ef239549236/",
            "requests": 0,
            "unique_countries": 1,
            "domains": 0,
            "malicious": false,
            "classification": "",
            "verdict_text": "No clear malicious classification",
            "brands": [],
            "labels": [],
            "lists": {
                "ips": [
                    "2a02:ec80:300:ed1a::2:b",
                    "2a02:ec80:300:ed1a::1",
                    "2a02:ec80:a000:1::2bc"
                ],
                "countries": [
                    "US"
                ],
                "asns": [
                    "14907"
                ],
                "domains": [
                    "wikitech.wikimedia.org",
                    "auth.wikimedia.org",
                    "upload.wikimedia.org",
                    "www.toolforge.org",
                    "toolforge.org"
                ],
                "servers": [
                    "ATS/9.2.11",
                    "mw-web.eqiad.main-55cb4c7796-cmzt5",
                    "mw-web.eqiad.canary-cb899dc8b-n67tq",
                    "mw-web.codfw.main-55946566c5-p2vg9",
                    "mw-web.eqiad.main-757669f757-qsldh",
                    "mw-web.eqiad.main-55cb4c7796-fv7gq",
                    "mw-web.eqiad.main-55cb4c7796-ks7xh",
                    "mw-web.eqiad.main-55cb4c7796-77kw2",
                    "envoy",
                    "mw-web.eqiad.main-98b584fdd-zdpz2",
                    "mw-web.eqiad.main-98b584fdd-nb68n",
                    "mw-web.eqiad.main-98b584fdd-pz5lk"
                ],
                "urls": [
                    "https://wikitech.wikimedia.org/wiki/Portal:Toolforge",
                    "https://toolforge.org/",
                    "https://www.toolforge.org/",
                    "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.discussionTools.init.styles%7Cext.dismissableSiteNotice.styles%7Cext.uls.pt%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cmediawiki.ui.button%7Cmediawiki.widgets.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles&only=styles&skin=vector-2022",
                    "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022",
                    "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=site.styles&only=styles&skin=vector-2022",
                    "https://wikitech.wikimedia.org/static/images/icons/wikitech.svg",
                    "https://wikitech.wikimedia.org/static/images/mobile/copyright/wikitech-wordmark.svg",
                    "https://upload.wikimedia.org/wikipedia/commons/thumb/b/b3/Ambox_PR.svg/40px-Ambox_PR.svg.png",
                    "https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons&image=menu&format=original&lang=en&skin=vector-2022&version=94rrm",
                    "https://wikitech.wikimedia.org/w/load.php?modules=skins.vector.icons&image=language&format=original&lang=en&skin=vector-2022&version=94rrm",
                    "https://wikitech.wikimedia.org/w/skins/Vector/resources/skins.vector.styles/images/link-external-small-ltr-progressive.svg?fb64d",
                    "https://wikitech.wikimedia.org/static/images/footer/wikimedia-button.svg",
                    "https://wikitech.wikimedia.org/w/resources/assets/poweredby_mediawiki.svg",
                    "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.gadget.site&skin=vector-2022&version=1tcgt",
                    "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.visualEditor.core.utils.parsing%7Cext.visualEditor.desktopArticleTarget.init%7Cext.visualEditor.progressBarWidget%2CsupportCheck%2CtargetLoader%2CtempWikitextEditorWidget%2Ctrack%2Cve&skin=vector-2022&version=1hirg",
                    "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=ext.centralNotice.choiceData%2Cdisplay%2CgeoIP%2CimpressionDiet%2CkvStore%2CstartUp%7Cext.centralauth.centralautologin%7Cext.checkUser.clientHints%7Cext.discussionTools.init%2Cminervaicons%7Cext.dismissableSiteNotice%2CeventLogging%2CnavigationTiming%2CtestKitchen%2CwikimediaEvents%7Cext.echo.centralauth%7Cext.eventLogging.metricsPlatform%7Cext.uls.common%2Ccompactlinks%2Cinterface%2Cpreferences%2Cwebfonts%7Cext.urlShortener.toolbar%7Cext.wikimediaEvents.testKitchen%7Cjquery%2Cmoment%2Coojs%2Coojs-ui-core%2Coojs-ui-windows%2Crangefix%2Csite%7Cjquery.client%2CtextSelection%7Cjquery.uls.data%7Cmediawiki.String%2CTitle%2Capi%2Cbase%2Ccldr%2Ccookie%2Cexperiments%2CjqueryMsg%2Clanguage%2Crouter%2Cstorage%2Cuser%2Cutil%2CvisibleTimeout%7Cmediawiki.editfont.styles%7Cmediawiki.libs.pluralruleparser%7Cmediawiki.page.ready%7Cmediawiki.page.watch.ajax%7Cmmv.bootstrap%2Ccodex%7Coojs-ui-windows.icons%7Cskins.vector.clientPreferences%2Cjs%7Cskins.vector.icons.js&skin=vector-2022&version=xcziv",
                    "https://auth.wikimedia.org/metawiki/wiki/Special:CentralAutoLogin/checkLoggedIn?useformat=desktop&wikiid=labswiki&usesul3=1&type=script",
                    "https://wikitech.wikimedia.org/wiki/Special:CentralAutoLogin/start?useformat=desktop&type=script&usesul3=1",
                    "https://wikitech.wikimedia.org/static/favicon/wikitech.ico",
                    "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=mediawiki.action.view.postEdit%7Cmediawiki.notification%2CtempUserCreated%7Coojs-ui.styles.icons-interactions&skin=vector-2022&version=kda9b",
                    "https://wikitech.wikimedia.org/w/load.php?lang=en&modules=oojs-ui-widgets%7Coojs-ui-widgets.icons%7Coojs-ui.styles.icons-editing-core&skin=vector-2022&version=12ynk"
                ],
                "linkDomains": [
                    "phabricator.wikimedia.org",
                    "donate.wikimedia.org",
                    "meta.wikimedia.org",
                    "www.mediawiki.org",
                    "web.libera.chat",
                    "t.me",
                    "lists.wikimedia.org",
                    "techblog.wikimedia.org",
                    "creativecommons.org",
                    "foundation.wikimedia.org",
                    "developer.wikimedia.org",
                    "stats.wikimedia.org",
                    "www.wikimedia.org"
                ],
                "certificates": [
                    {
                        "subjectName": "*.wikipedia.org",
                        "issuer": "E8",
                        "validFrom": 1770414092,
                        "validTo": 1778190091
                    },
                    {
                        "subjectName": "upload.wikimedia.org",
                        "issuer": "E8",
                        "validFrom": 1770878691,
                        "validTo": 1778654690
                    }
                ],
                "hashes": [
                    "545e1241a88187028fc7cf2f8f8edcdf71f30f6b519c5535e499cbbdfa866f60",
                    "ea4261dc30d40b295c9793d0fa67effafd3b9f6fd3ea6a083edd26339eb49dfc",
                    "f637e2cfcee169507265b232704019c6d1c41971eefc22729dbabe6e6d76d78c",
                    "49b01b933057426c18aaa713ef0871b2a45b092e59c657edc2a6762dbe626350",
                    "e5a67c19d54d2bbdc8ac244c1c269bc8bcf4d3663835059da7f4842912ff2864",
                    "cde4d6dfbbac109d8267b2d3a5000b561f2eed814f4e0e98b67ae9ec9a4c8c81",
                    "4476fd51cbb5ea255c8fb20df06bc59d3143b82f7a02907376380189a93a6423",
                    "4de5f25341a457e9fbcf7c29c44158d94ce7f74e91f92ae30b03fe7606716d08",
                    "7a85a9bbf014ed6489d73fd297ed80c2d04fee0936360a469b4fe82fd72c42fe",
                    "0b220227b2e52d8724a40010b8c132ece82695fa99d6ae725093c3c8630a0172",
                    "6ea08036102c02c8a1b804e21361c4b7422b0c9bbb40994f361a28aa6436540f",
                    "b324430a72a978ffc29853c1dbb95679833c58b30e5b5d10e5063f96f98c5ba2",
                    "0c2aa872dd39b943efde8b4e444bd7c627e5ab740684356046bbb8a2248b57cd",
                    "75444929595b7c4040288c822835ce3e8f82d7b67eb6b9a3546765ad74698ede",
                    "66f479b89370db78f7936781dacebd22d2513a885dcd886805518b69b1326993",
                    "0b5191439548225b80c8ec830cbda7e898194418559f68d65ba743444734baff",
                    "f0dc927e794cdc87464e19497d959a087488e7d82606e71bc4343937b69e1205",
                    "3e0e7bc95f60a5cd1b2d131baeeafd9a42f7876893ab2b2f62d2517f0928dc22",
                    "408aab25406d374cb9096652bbf460dd30e2423d2e1363b8b89836eb5e62b1c8",
                    "c768e9c3a2bd3726bb5e5b16a05c30e5b040a659bda1ebd1fe67b1216cf1b647",
                    "fe1b30e36d2e53edc45af9b7bd8af1638bd7acfabb8035bdd829fdcdc04828a8"
                ]
            }
        },
        "completed_at": "2026-03-23T20:40:13+00:00",
        "is_fresh": false,
        "can_retry": true,
        "poll_after_seconds": 20
    }
}