from wisent.core.contrastive_pairs.lm_eval_pairs.group_task_manifests import (
    get_all_group_task_mappings,
)

__all__ = [
    "EXTRACTORS",
]
base_import: str = "wisent.core.contrastive_pairs.lm_eval_pairs.lm_task_extractors."

# Start with group task mappings
EXTRACTORS: dict[str, str] = get_all_group_task_mappings()

# Add individual task extractors
EXTRACTORS.update({
    # key → "module_path:ClassName" (supports dotted attr path after ':')
    "arithmetic": f"{base_import}arithmetic:ArithmeticExtractor",
    "asdiv": f"{base_import}asdiv:ASDivExtractor",
    "boolq": f"{base_import}boolq:BoolQExtractor",
    "boolq-seq2seq": f"{base_import}boolq_seq2seq:BoolQSeq2SeqExtractor",
    "cb": f"{base_import}cb:CBExtractor",
    "coqa": f"{base_import}coqa:CoQAExtractor",
    "drop": f"{base_import}drop:DropExtractor",
    "gsm8k": f"{base_import}gsm8k:GSM8KExtractor",
    "gsm8k_cot_self_consistency": f"{base_import}gsm8k:GSM8KExtractor",
    "gsm8k_platinum_cot_self_consistency": f"{base_import}gsm8k:GSM8KExtractor",
    "gsm_plus": f"{base_import}gsm:GsmExtractor",
    "gsm_plus_mini": f"{base_import}gsm:GsmExtractor",
    "headqa": f"{base_import}headqa:HeadQAExtractor",
    "logieval": f"{base_import}logieval:LogievalExtractor",
    "logiqa": f"{base_import}logiqa:LogiQAExtractor",
    "logiqa2": f"{base_import}logiqa2:LogiQA2Extractor",
    "mc_taco": f"{base_import}mc-taco:MCTACOExtractor",
    "medqa": f"{base_import}medqa:MedQAExtractor",
    "mmlu": f"{base_import}mmlu:MMLUExtractor",
    "mmmlu": f"{base_import}mmlu:MMLUExtractor",
    "mrpc": f"{base_import}mrpc:MRPCExtractor",
    "multirc": f"{base_import}multirc:MultiRCExtractor",
    "mutual": f"{base_import}mutual:MutualExtractor",
    "noticia": f"{base_import}noticia:NoticiaExtractor",
    "openbookqa": f"{base_import}openbookqa:OpenBookQAExtractor",
    "pawsx": f"{base_import}pawsx:PawsXExtractor",
    "paws_de": f"{base_import}pawsx:PawsXExtractor",
    "paws_en": f"{base_import}pawsx:PawsXExtractor",
    "paws_es": f"{base_import}pawsx:PawsXExtractor",
    "paws_fr": f"{base_import}pawsx:PawsXExtractor",
    "paws_ja": f"{base_import}pawsx:PawsXExtractor",
    "paws_ko": f"{base_import}pawsx:PawsXExtractor",
    "paws_zh": f"{base_import}pawsx:PawsXExtractor",
    "phrases_ca-va": f"{base_import}phrases_ca_va:PhrasesCaVaExtractor",
    "piqa": f"{base_import}piqa:PIQAExtractor",
    "prost": f"{base_import}prost:ProstExtractor",
    "pubmedqa": f"{base_import}pubmedqa:PubMedQAExtractor",
    "qa4mre": f"{base_import}qa4mre:QA4MREExtractor",
    "qasper": f"{base_import}qasper:QasperExtractor",
    "qnli": f"{base_import}qnli:QNLIExtractor",
    "qqp": f"{base_import}qqp:QQPExtractor",
    "race": f"{base_import}race:RACEExtractor",
    "record": f"{base_import}record:RecordExtractor",
    "rte": f"{base_import}rte:RTEExtractor",
    "sciq": f"{base_import}sciq:SciQExtractor",
    "social_iqa": f"{base_import}social_iqa:SocialIQAExtractor",
    "squadv2": f"{base_import}squad2:SQuAD2Extractor",
    "sst2": f"{base_import}sst2:SST2Extractor",
    "swag": f"{base_import}swag:SwagExtractor",
    "triviaqa": f"{base_import}triviaqa:TriviaQAExtractor",
    "webqs": f"{base_import}webqs:WebQSExtractor",
    "nq_open": f"{base_import}nq_open:NQOpenExtractor",
    "wic": f"{base_import}wic:WiCExtractor",
    "winogrande": f"{base_import}winogrande:WinograndeExtractor",
    "wnli": f"{base_import}wnli:WNLIExtractor",
    "wsc": f"{base_import}wsc:WSCExtractor",
    "xnli": f"{base_import}xnli:XNLIExtractor",
    "xstorycloze": f"{base_import}xstorycloze:XStoryClozeExtractor",
    "xwinograd": f"{base_import}xwinograd:XWinogradExtractor",
    "livecodebench": "wisent.core.contrastive_pairs.huggingface_pairs.hf_task_extractors.livecodebench:LivecodebenchExtractor",
    # Perplexity/Language Modeling tasks
    "wikitext": f"{base_import}wikitext:WikitextExtractor",
    "wikitext103": f"{base_import}wikitext:WikitextExtractor",
    # Word prediction tasks
    # NEW: BC branch extractors
    "ai2_arc": f"{base_import}ai2_arc:AI2ARCExtractor",
    "anli": f"{base_import}anli:ANLIExtractor",
    "anli_r1": f"{base_import}anli:ANLIExtractor",
    "anli_r2": f"{base_import}anli:ANLIExtractor",
    "anli_r3": f"{base_import}anli:ANLIExtractor",
    "bigbench": f"{base_import}bigbench:BigBenchExtractor",
    "bbh": f"{base_import}bbh:BBHExtractor",
    "gpqa": f"{base_import}gpqa:GPQAExtractor",
    "hle": f"{base_import}hle:HLEExtractor",
    "mathqa": f"{base_import}mathqa:MathQAExtractor",
    # Hendrycks Math and all subtasks
    "hendrycks_math": f"{base_import}hendrycks_math:HendrycksMathExtractor",
    "hendrycks_math_algebra": f"{base_import}hendrycks_math:HendrycksMathExtractor",
    "hendrycks_math_counting_and_prob": f"{base_import}hendrycks_math:HendrycksMathExtractor",
    "hendrycks_math_geometry": f"{base_import}hendrycks_math:HendrycksMathExtractor",
    "hendrycks_math_intermediate_algebra": f"{base_import}hendrycks_math:HendrycksMathExtractor",
    "hendrycks_math_num_theory": f"{base_import}hendrycks_math:HendrycksMathExtractor",
    "hendrycks_math_prealgebra": f"{base_import}hendrycks_math:HendrycksMathExtractor",
    "hendrycks_math_precalc": f"{base_import}hendrycks_math:HendrycksMathExtractor",
    "quac": f"{base_import}quac:QuACExtractor",
    "superglue": f"{base_import}superglue:SuperGLUEExtractor",
    "supergpqa": f"{base_import}supergpqa:SuperGPQAExtractor",
    "multilingual": f"{base_import}multilingual:MultilingualExtractor",
    "glue": f"{base_import}glue:GLUEExtractor",
    # Task 1/142: AraDiCE - group task with 28 subtasks
    # AraDiCE subtasks are named like AraDiCE_boolq_egy, AraDiCE_winogrande_lev, etc.
    # The AradiceExtractor routes to appropriate base extractors
    "aradice": f"{base_import}aradice:AradiceExtractor",
    "AraDiCE": f"{base_import}aradice:AradiceExtractor",  # Capital alias
    # Task 2/142: ArabCulture
    "arabculture": f"{base_import}arabculture:ArabcultureExtractor",
    "ArabCulture": f"{base_import}arabculture:ArabcultureExtractor",  # Capital alias
    # Task 3/142: aclue
    "aclue": f"{base_import}aclue:AclueExtractor",
    # Remaining tasks - auto-registered
    # acp_bench subtasks (bool and mcq use log_likelihoods)
    # acp_bench_hard _gen subtasks (use generation evaluator)
    "aexams": f"{base_import}aexams:AexamsExtractor",
    # AfroBench multiple-choice benchmarks
    "afrobench": f"{base_import}afrobench_mc:AfroBenchMultipleChoiceExtractor",
    "afridiacritics": f"{base_import}afrobench_mc:AfroBenchMultipleChoiceExtractor",
    "arabic_exams": f"{base_import}arabic_exams:ArabicExamsExtractor",
    "arabic_leaderboard_complete": f"{base_import}arabic_leaderboard_complete:ArabicLeaderboardCompleteExtractor",
    "arabic_leaderboard_light": f"{base_import}arabic_leaderboard_light:ArabicLeaderboardLightExtractor",
    "arabicmmlu": f"{base_import}arabicmmlu:ArabicmmluExtractor",
    "argument_topic": f"{base_import}unitxt:UnitxtExtractor",
    "babi": f"{base_import}babi:BabiExtractor",
    "banking77": f"{base_import}unitxt:UnitxtExtractor",
    "basque_bench": f"{base_import}basque_bench:BasqueBenchExtractor",
    "bbq": f"{base_import}bbq:BbqExtractor",
    "belebele": f"{base_import}belebele:BelebeleExtractor",
    "benchmarks": f"{base_import}benchmarks:BenchmarksExtractor",
    "bertaqa": f"{base_import}bertaqa:BertaqaExtractor",
    "bhs": f"{base_import}bhs:BhsExtractor",
    "blimp": f"{base_import}blimp:BlimpExtractor",
    "blimp_nl": f"{base_import}blimp_nl:BlimpNlExtractor",
    "c4": f"{base_import}c4:C4Extractor",
    "cabbq": f"{base_import}cabbq:CabbqExtractor",
    "careqa": f"{base_import}careqa:CareqaExtractor",
    "catalan_bench": f"{base_import}catalan_bench:CatalanBenchExtractor",
    "ceval": f"{base_import}ceval:CevalExtractor",
    "chartqa": f"{base_import}chartqa:ChartqaExtractor",
    "click": f"{base_import}click:ClickExtractor",
    "cmmlu": f"{base_import}cmmlu:CmmluExtractor",
    "commonsense_qa": f"{base_import}commonsense_qa:CommonsenseQAExtractor",
    "copa": f"{base_import}copa:COPAExtractor",
    "copal_id": f"{base_import}copal_id:CopalIdExtractor",
    "cycle_letters": f"{base_import}cycle_letters:CycleLettersExtractor",
    "csatqa": f"{base_import}csatqa:CsatqaExtractor",
    "darijahellaswag": f"{base_import}darijahellaswag:DarijahellaswagExtractor",
    "darijammlu": f"{base_import}darijammlu:DarijammluExtractor",
    "discrim_eval": f"{base_import}discrim_eval:DiscrimEvalExtractor",
    "egyhellaswag": f"{base_import}egyhellaswag:EgyHellaSwagExtractor",
    "egymmlu": f"{base_import}egymmlu:EgyMMLUExtractor",
    "eq_bench": f"{base_import}eq_bench:EqBenchExtractor",
    "eq_bench_ca": f"{base_import}eq_bench_ca:EqBenchCaExtractor",
    "eq_bench_es": f"{base_import}eq_bench_es:EqBenchEsExtractor",
    "esbbq": f"{base_import}esbbq:EsbbqExtractor",
    "evalita_llm": f"{base_import}evalita_llm:EvalitaLlmExtractor",
    "evalita-sp": f"{base_import}evalita_sp:EvalitaSpExtractor",
    "evalita-sp_sum_task_fp-small_p1": f"{base_import}evalita_sp:EvalitaSpExtractor",
    "evalita-sp_sum_task_fp-small_p2": f"{base_import}evalita_sp:EvalitaSpExtractor",
    "evalita-sp_sum_task_fp_p1": f"{base_import}evalita_sp:EvalitaSpExtractor",
    "evalita-sp_sum_task_fp_p2": f"{base_import}evalita_sp:EvalitaSpExtractor",
    "fda": f"{base_import}fda:FdaExtractor",
    "fld": f"{base_import}fld:FldExtractor",
    "freebase": f"{base_import}webqs:WebQSExtractor",
    "french_bench": f"{base_import}french_bench:FrenchBenchExtractor",
    "galician_bench": f"{base_import}galician_bench:GalicianBenchExtractor",
    "global_mmlu": f"{base_import}global_mmlu:GlobalMmluExtractor",
    "groundcocoa": f"{base_import}groundcocoa:GroundcocoaExtractor",
    "haerae": f"{base_import}haerae:HaeraeExtractor",
    "hendrycks_ethics": f"{base_import}hendrycks_ethics:HendrycksEthicsExtractor",
    "histoires_morales": f"{base_import}histoires_morales:HistoiresMoralesExtractor",
    "hrm8k": f"{base_import}hrm8k:Hrm8kExtractor",
    "humaneval": f"{base_import}humaneval:HumanEvalExtractor",
    "humaneval_infilling": f"{base_import}humaneval_infilling:HumanevalInfillingExtractor",
    "icelandic_winogrande": f"{base_import}icelandic_winogrande:IcelandicWinograndeExtractor",
    "ifeval": f"{base_import}ifeval:IFEvalExtractor",
    "japanese_leaderboard": f"{base_import}japanese_leaderboard:JapaneseLeaderboardExtractor",
    "jsonschema_bench": f"{base_import}jsonschema_bench:JsonschemaBenchExtractor",
    "jsonschema_bench_easy": f"{base_import}jsonschema_bench:JsonschemaBenchExtractor",
    "jsonschema_bench_medium": f"{base_import}jsonschema_bench:JsonschemaBenchExtractor",
    "jsonschema_bench_hard": f"{base_import}jsonschema_bench:JsonschemaBenchExtractor",
    "kmmlu": f"{base_import}kmmlu:KmmluExtractor",
    "kobest": f"{base_import}kobest:KobestExtractor",
    "kormedmcqa": f"{base_import}kormedmcqa:KormedmcqaExtractor",
    "kormedmcqa_dentist": f"{base_import}kormedmcqa:KormedmcqaExtractor",
    "kormedmcqa_doctor": f"{base_import}kormedmcqa:KormedmcqaExtractor",
    "kormedmcqa_nurse": f"{base_import}kormedmcqa:KormedmcqaExtractor",
    "kormedmcqa_pharm": f"{base_import}kormedmcqa:KormedmcqaExtractor",
    # Note: "lambada_multilingual_stablelm" is not a loadable task in lm-eval 0.4.9.1 - only individual language tasks work
    "leaderboard": f"{base_import}leaderboard:LeaderboardExtractor",
    "libra": f"{base_import}libra:LibraExtractor",
    "librusec_history": f"{base_import}libra:LibraExtractor",
    "librusec_mhqa": f"{base_import}libra:LibraExtractor",
    "long_context_multiq": f"{base_import}libra:LibraExtractor",
    "matreshka_names": f"{base_import}libra:LibraExtractor",
    "matreshka_yes_no": f"{base_import}libra:LibraExtractor",
    "passkey": f"{base_import}libra:LibraExtractor",
    "passkey_with_librusec": f"{base_import}libra:LibraExtractor",
    "lingoly": f"{base_import}lingoly:LingolyExtractor",
    "llama3": f"{base_import}llama3:Llama3Extractor",
    "lm_syneval": f"{base_import}lm_syneval:LmSynevalExtractor",
    "longbench": f"{base_import}longbench:LongbenchExtractor",
    "longbenchv2": f"{base_import}longbenchv2:Longbenchv2Extractor",
    "mastermind": f"{base_import}mastermind:MastermindExtractor",
    "mastermind_24_easy": f"{base_import}mastermind:MastermindExtractor",
    "mastermind_24_hard": f"{base_import}mastermind:MastermindExtractor",
    "mastermind_35_easy": f"{base_import}mastermind:MastermindExtractor",
    "mastermind_35_hard": f"{base_import}mastermind:MastermindExtractor",
    "mastermind_46_easy": f"{base_import}mastermind:MastermindExtractor",
    "mastermind_46_hard": f"{base_import}mastermind:MastermindExtractor",
    "mbpp": f"{base_import}mbpp:MBPPExtractor",
    "mbpp_instruct": f"{base_import}mbpp:MBPPExtractor",
    "mbpp_plus": f"{base_import}mbpp:MBPPExtractor",
    "mbpp_plus_instruct": f"{base_import}mbpp:MBPPExtractor",
    "mc-taco": f"{base_import}mc-taco:MCTACOExtractor",
    "meddialog": f"{base_import}meddialog:MeddialogExtractor",
    "meddialog_qsumm": f"{base_import}meddialog:MeddialogExtractor",
    "meddialog_qsumm_perplexity": f"{base_import}meddialog:MeddialogExtractor",
    "meddialog_raw_dialogues": f"{base_import}meddialog:MeddialogExtractor",
    "meddialog_raw_perplexity": f"{base_import}meddialog:MeddialogExtractor",
    "mediqa_qa2019": f"{base_import}mediqa_qa2019:MediqaQa2019Extractor",
    "medmcqa": f"{base_import}medmcqa:MedmcqaExtractor",
    "medtext": f"{base_import}medtext:MedtextExtractor",
    "meqsum": f"{base_import}meqsum:MeqsumExtractor",
    "metabench": f"{base_import}metabench:MetabenchExtractor",
    "mimic_repsum": f"{base_import}mimic_repsum:MimicRepsumExtractor",
    "minerva_math": f"{base_import}minerva_math:MinervaMathExtractor",
    # Arabic context
    # German context
    # Vietnamese context
    # Chinese context
    # English context
    # Spanish context
    # Hindi context
    "mmlusr": f"{base_import}mmlusr:MmlusrExtractor",
    "model_written_evals": f"{base_import}model_written_evals:ModelWrittenEvalsExtractor",
    "moral_stories": f"{base_import}moral_stories:MoralStoriesExtractor",
    "mts_dialog": f"{base_import}mts_dialog:MtsDialogExtractor",
    "multiblimp": f"{base_import}multiblimp:MultiblimpExtractor",
    "noreval": f"{base_import}noreval:NorevalExtractor",
    "okapi_arc_multilingual": f"{base_import}okapi_arc_multilingual:OkapiArcMultilingualExtractor",
    "okapi_hellaswag_multilingual": f"{base_import}okapi_hellaswag_multilingual:OkapiHellaswagMultilingualExtractor",
    "okapi_mmlu_multilingual": f"{base_import}okapi_mmlu_multilingual:OkapiMmluMultilingualExtractor",
    "okapi_truthfulqa_multilingual": f"{base_import}okapi_truthfulqa_multilingual:OkapiTruthfulqaMultilingualExtractor",
    "olaph": f"{base_import}olaph:OlaphExtractor",
    "paloma": f"{base_import}paloma:PalomaExtractor",
    "paws_x": f"{base_import}pawsx:PawsXExtractor",
    "paws-x": f"{base_import}pawsx:PawsXExtractor",
    "polemo2": f"{base_import}polemo2:Polemo2Extractor",
    "polemo2_in": f"{base_import}polemo2:Polemo2Extractor",
    "polemo2_out": f"{base_import}polemo2:Polemo2Extractor",
    "portuguese_bench": f"{base_import}portuguese_bench:PortugueseBenchExtractor",
    "realtoxicityprompts": f"{base_import}realtoxicityprompts:RealtoxicitypromptsExtractor",
    "ruler": f"{base_import}ruler:RulerExtractor",
    "ruler_cwe": f"{base_import}ruler:RulerExtractor",
    "ruler_fwe": f"{base_import}ruler:RulerExtractor",
    "ruler_qa_hotpot": f"{base_import}ruler:RulerExtractor",
    "ruler_qa_squad": f"{base_import}ruler:RulerExtractor",
    "ruler_vt": f"{base_import}ruler:RulerExtractor",
    "niah_single_1": f"{base_import}ruler:RulerExtractor",
    "niah_single_2": f"{base_import}ruler:RulerExtractor",
    "niah_single_3": f"{base_import}ruler:RulerExtractor",
    "niah_multikey_1": f"{base_import}ruler:RulerExtractor",
    "niah_multikey_2": f"{base_import}ruler:RulerExtractor",
    "niah_multikey_3": f"{base_import}ruler:RulerExtractor",
    "niah_multiquery": f"{base_import}ruler:RulerExtractor",
    "niah_multivalue": f"{base_import}ruler:RulerExtractor",
    "score": f"{base_import}score:ScoreExtractor",
    "prompt_robustness_agieval_aqua_rat": f"{base_import}agieval_aqua_rat:AgievalAquaRatExtractor",
    "option_order_robustness_agieval_aqua_rat": f"{base_import}agieval_aqua_rat:AgievalAquaRatExtractor",
    "non_greedy_robustness_agieval_aqua_rat": f"{base_import}agieval_aqua_rat:AgievalAquaRatExtractor",
    "option_order_robustness_agieval_logiqa_en": f"{base_import}score:ScoreExtractor",
    "option_order_robustness_agieval_lsat_ar": f"{base_import}score:ScoreExtractor",
    "option_order_robustness_agieval_lsat_lr": f"{base_import}score:ScoreExtractor",
    "option_order_robustness_agieval_lsat_rc": f"{base_import}score:ScoreExtractor",
    "option_order_robustness_agieval_sat_en": f"{base_import}score:ScoreExtractor",
    "option_order_robustness_agieval_sat_math": f"{base_import}score:ScoreExtractor",
    "score_non_greedy_robustness_mmlu_pro": f"{base_import}score:ScoreExtractor",
    "score_option_order_robustness_mmlu_pro": f"{base_import}score:ScoreExtractor",
    "score_prompt_robustness_mmlu_pro": f"{base_import}score:ScoreExtractor",
    "scrolls": f"{base_import}scrolls:ScrollsExtractor",
    "scrolls_contractnli": f"{base_import}scrolls:ScrollsExtractor",
    "scrolls_govreport": f"{base_import}scrolls:ScrollsExtractor",
    "scrolls_narrativeqa": f"{base_import}scrolls:ScrollsExtractor",
    "scrolls_qasper": f"{base_import}scrolls:ScrollsExtractor",
    "scrolls_qmsum": f"{base_import}scrolls:ScrollsExtractor",
    "scrolls_quality": f"{base_import}scrolls:ScrollsExtractor",
    "scrolls_summscreenfd": f"{base_import}scrolls:ScrollsExtractor",
    "simple_cooccurrence_bias": f"{base_import}simple_cooccurrence_bias:SimpleCooccurrenceBiasExtractor",
    "siqa": f"{base_import}siqa:SIQAExtractor",
    "siqa_ca": f"{base_import}siqa:SIQAExtractor",
    "spanish_bench": f"{base_import}spanish_bench:SpanishBenchExtractor",
    "squad_completion": f"{base_import}squad_completion:SquadCompletionExtractor",
    "storycloze": f"{base_import}storycloze:StoryclozeExtractor",
    "super_glue": f"{base_import}super_glue:SuperGlueExtractor",
    # Okapi multilingual benchmarks (157 tasks - arc, hellaswag, mmlu, truthfulqa)
    # Noreval Norwegian benchmarks (63 tasks - generation and multiple-choice)
    # Generation tasks (38 tasks)
    "ask_gec": f"{base_import}noreval_gen:NorevalGenerationExtractor",
    "ask_gec_p0": f"{base_import}noreval_gen:NorevalGenerationExtractor",
    "ask_gec_p1": f"{base_import}noreval_gen:NorevalGenerationExtractor",
    "ask_gec_p2": f"{base_import}noreval_gen:NorevalGenerationExtractor",
    "ask_gec_p3": f"{base_import}noreval_gen:NorevalGenerationExtractor",
    "ask_gec_p4": f"{base_import}noreval_gen:NorevalGenerationExtractor",
    "norquad": f"{base_import}noreval_gen:NorevalGenerationExtractor",
    "norquad_p0": f"{base_import}noreval_gen:NorevalGenerationExtractor",
    "norquad_p1": f"{base_import}noreval_gen:NorevalGenerationExtractor",
    "norquad_p2": f"{base_import}noreval_gen:NorevalGenerationExtractor",
    "norquad_p3": f"{base_import}noreval_gen:NorevalGenerationExtractor",
    "norquad_p4": f"{base_import}noreval_gen:NorevalGenerationExtractor",
    "norrewrite_instruct": f"{base_import}noreval_gen:NorevalGenerationExtractor",
    "norsummarize_instruct": f"{base_import}noreval_gen:NorevalGenerationExtractor",
    # Multiple choice tasks (25 tasks)
    "ncb": f"{base_import}noreval_mc:NorevalMultipleChoiceExtractor",
    "swde": f"{base_import}swde:SwdeExtractor",
    "tinybenchmarks": f"{base_import}tinybenchmarks:TinybenchmarksExtractor",
    "tinyBenchmarks": f"{base_import}tinybenchmarks:TinybenchmarksExtractor",
    "tmmluplus": f"{base_import}tmmluplus:TmmluplusExtractor",
    "toxigen": f"{base_import}toxigen:ToxigenExtractor",
    "translation": f"{base_import}translation:TranslationExtractor",
    "gpt3_translation_benchmarks": f"{base_import}translation:TranslationExtractor",
    "turblimp_core": f"{base_import}turblimp_core:TurblimpCoreExtractor",
    "unitxt": f"{base_import}unitxt:UnitxtExtractor",
    "unscramble": f"{base_import}unscramble:UnscrambleExtractor",
    "winogender": f"{base_import}winogender:WinogenderExtractor",
    "wmdp": f"{base_import}wmdp:WmdpExtractor",
    "wsc273": f"{base_import}wsc273:Wsc273Extractor",
    "xcopa": f"{base_import}xcopa:XcopaExtractor",
    "xquad": f"{base_import}xquad:XquadExtractor",
    "zhoblimp": f"{base_import}zhoblimp:ZhoblimpExtractor",
    # NEW: Auto-generated extractors for missing task families
    "arabic": f"{base_import}arabic:ArabicExtractor",
    "afrixnli": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_amh": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_eng": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_ewe": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_fra": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_hau": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_ibo": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_kin": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_lin": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_lug": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_orm": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_sna": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_sot": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_swa": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_twi": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_wol": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_xho": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_yor": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrixnli_en_direct_zul": f"{base_import}afrixnli:AfrixnliExtractor",
    "afrimgsm": f"{base_import}afrimgsm:AfrimgsmExtractor",
    "afrimgsm_amh_prompt_1": f"{base_import}afrimgsm:AfrimgsmExtractor",
    "ceval_valid": f"{base_import}ceval_valid:CevalValidExtractor",
    "advanced": f"{base_import}advanced:AdvancedExtractor",
    "afrimmlu": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_amh_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_eng_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_ewe_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_fra_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_hau_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_ibo_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_kin_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_lin_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_lug_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_orm_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_sna_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_sot_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_swa_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_twi_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_wol_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_xho_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_yor_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "afrimmlu_direct_zul_prompt_1": f"{base_import}afrimmlu:AfrimmluExtractor",
    "paws": f"{base_import}paws:PawsExtractor",
    "ja": f"{base_import}ja:JaExtractor",
    "super": f"{base_import}super:SuperExtractor",
    "option": f"{base_import}option:OptionExtractor",
    "codexglue": f"{base_import}codexglue:CodexglueExtractor",
    "phrases": f"{base_import}phrases:PhrasesExtractor",
    "phrases_es": f"{base_import}phrases:PhrasesExtractor",
    "phrases_es-va": f"{base_import}phrases:PhrasesExtractor",
    "phrases_va": f"{base_import}phrases:PhrasesExtractor",
    "phrases_va-ca": f"{base_import}phrases:PhrasesExtractor",
    "phrases_va-es": f"{base_import}phrases:PhrasesExtractor",
    "code2text": f"{base_import}code_x_glue:Code2TextExtractor",
    "ethics": f"{base_import}ethics:EthicsExtractor",
    "cabreu": f"{base_import}cabreu:CabreuExtractor",
    "sycophancy": f"{base_import}sycophancy:SycophancyExtractor",
    "sycophancy_on_nlp_survey": f"{base_import}sycophancy:SycophancyExtractor",
    "sycophancy_on_philpapers2020": f"{base_import}sycophancy:SycophancyExtractor",
    "sycophancy_on_political_typology_quiz": f"{base_import}sycophancy:SycophancyExtractor",
    "evalita_sp": f"{base_import}evalita_sp:EvalitaSpExtractor",
    "flan": f"{base_import}flan:FlanExtractor",
    "assin": f"{base_import}assin:AssinExtractor",
    "assin_entailment": f"{base_import}assin:AssinExtractor",
    "gsm": f"{base_import}gsm:GsmExtractor",
    "mnli": f"{base_import}mnli:MnliExtractor",
    "tinytruthfulqa": f"{base_import}tinytruthfulqa:TinytruthfulqaExtractor",
    "tinyTruthfulQA": f"{base_import}tinytruthfulqa:TinytruthfulqaExtractor",
    "tinyTruthfulQA_mc1": f"{base_import}tinytruthfulqa:TinytruthfulqaExtractor",
    "t0": f"{base_import}t0:T0Extractor",
    "tag": f"{base_import}tag:TagExtractor",
    "basque_glue": f"{base_import}basque_glue:BasqueGlueExtractor",
    "basque-glue": f"{base_import}basque_glue:BasqueGlueExtractor",  # Hyphenated alias
    "chain": f"{base_import}chain:ChainExtractor",
    "gpt3": f"{base_import}gpt3:Gpt3Extractor",
    "math": f"{base_import}math:MathExtractor",
    "math500": f"{base_import}math:MathExtractor",
    "polymath_en_medium": f"{base_import}polymath:PolymathExtractor",
    "polymath_zh_medium": f"{base_import}polymath:PolymathExtractor",
    "polymath_en_high": f"{base_import}polymath:PolymathExtractor",
    "polymath_zh_high": f"{base_import}polymath:PolymathExtractor",
    "livemathbench_cnmo_en": f"{base_import}livemathbench:LivemathbenchExtractor",
    "livemathbench_cnmo_zh": f"{base_import}livemathbench:LivemathbenchExtractor",
    "self": f"{base_import}self:SelfExtractor",
    "twenty_newsgroups": f"{base_import}twenty_newsgroups:TwentyNewsgroupsExtractor",
    "20_newsgroups": f"{base_import}unitxt:UnitxtExtractor",
    "ag": f"{base_import}ag:AgExtractor",
    "ag_news": f"{base_import}unitxt:UnitxtExtractor",
    "anagrams1": f"{base_import}anagrams1:Anagrams1Extractor",
    "anagrams2": f"{base_import}anagrams2:Anagrams2Extractor",
    "argument": f"{base_import}argument:ArgumentExtractor",
    "argument_topic": f"{base_import}unitxt:UnitxtExtractor",
    "bhtc": f"{base_import}bhtc:BhtcExtractor",
    "catalanqa": f"{base_import}catalanqa:CatalanqaExtractor",
    "catcola": f"{base_import}catcola:CatcolaExtractor",
    "claim": f"{base_import}claim:ClaimExtractor",
    "claim_stance_topic": f"{base_import}unitxt:UnitxtExtractor",
    "cnn": f"{base_import}cnn:CnnExtractor",
    "cocoteros": f"{base_import}cocoteros:CocoterosExtractor",
    "coedit": f"{base_import}coedit:CoeditExtractor",
    "cola": f"{base_import}cola:ColaExtractor",
    "commonsense": f"{base_import}commonsense:CommonsenseExtractor",
    "coqcat": f"{base_import}coqcat:CoqcatExtractor",
    "cycle": f"{base_import}cycle:CycleExtractor",
    "dbpedia": f"{base_import}dbpedia:DbpediaExtractor",
    "doc": f"{base_import}doc:DocExtractor",
    "epec": f"{base_import}epec:EpecExtractor",
    "eq": f"{base_import}eq:EqExtractor",
    "escola": f"{base_import}escola:EscolaExtractor",
    "ethos": f"{base_import}ethos:EthosExtractor",
    "fda": f"{base_import}fda:FdaExtractor",
    "financial": f"{base_import}financial:FinancialExtractor",
    "galcola": f"{base_import}galcola:GalcolaExtractor",
    "law": f"{base_import}law:LawExtractor",
    "medical": f"{base_import}medical:MedicalExtractor",
    "parafraseja": f"{base_import}parafraseja:ParafrasejaExtractor",
    "parafrases": f"{base_import}parafrases:ParafrasesExtractor",
    "qnlieu": f"{base_import}qnlieu:QnlieuExtractor",
    "random": f"{base_import}random:RandomExtractor",
    "reversed": f"{base_import}reversed:ReversedExtractor",
    "sglue": f"{base_import}sglue:SglueExtractor",
    "sglue_rte": f"{base_import}sglue_rte:SglueRteExtractor",
    "summarization": f"{base_import}summarization:SummarizationExtractor",
    "teca": f"{base_import}teca:TecaExtractor",
    "tinyarc": f"{base_import}tinyarc:TinyarcExtractor",
    "tinyArc": f"{base_import}tinyarc:TinyarcExtractor",
    "tinygsm8k": f"{base_import}tinygsm8k:Tinygsm8kExtractor",
    "tinyGSM8k": f"{base_import}tinygsm8k:Tinygsm8kExtractor",
    "tinyhellaswag": f"{base_import}tinyhellaswag:TinyhellaswagExtractor",
    "tinyHellaswag": f"{base_import}tinyhellaswag:TinyhellaswagExtractor",
    "tinymmlu": f"{base_import}tinymmlu:TinymmluExtractor",
    "tinyMMLU": f"{base_import}tinymmlu:TinymmluExtractor",
    "tinywinogrande": f"{base_import}tinywinogrande:TinywinograndeExtractor",
    "tinyWinogrande": f"{base_import}tinywinogrande:TinywinograndeExtractor",
    "unfair": f"{base_import}unitxt:UnitxtExtractor",
    "unfair_tos": f"{base_import}unitxt:UnitxtExtractor",
    "vaxx": f"{base_import}vaxx:VaxxExtractor",
    "vaxx_stance": f"{base_import}vaxx:VaxxExtractor",
    "xlsum": f"{base_import}xlsum:XlsumExtractor",
    "yahoo_answers_topics": f"{base_import}unitxt:UnitxtExtractor",
    "humaneval_instruct": f"{base_import}instructhumaneval:InstructhumanevalExtractor",
    "humaneval_64_instruct": f"{base_import}instructhumaneval:InstructhumanevalExtractor",
    "apps": f"{base_import}apps:AppsExtractor",
    "recode": f"{base_import}recode:RecodeExtractor",
    "conala": f"{base_import}conala:ConalaExtractor",
    "concode": f"{base_import}concode:ConcodeExtractor",
    "mercury": f"{base_import}mercury:MercuryExtractor",
    # Note: WMT14 and WMT16 translation tasks are now in group_task_manifests/
})
