[{"data":1,"prerenderedAt":762},["ShallowReactive",2],{"navigation_docs":3,"trending-repo-Thysrael\u002FHorizon":249,"page-views-\u002Ftrending\u002FThysrael\u002FHorizon":760},[4,29,104,124,194],{"title":5,"icon":6,"path":7,"stem":8,"children":9},"Start",false,"\u002Fstart","1.start",[10,14,19,24],{"title":11,"path":7,"stem":12,"icon":13},"What jscpd finds","1.start\u002Findex","i-lucide-house",{"title":15,"path":16,"stem":17,"icon":18},"Installation","\u002Fstart\u002Finstallation","1.start\u002F2.installation","i-lucide-download",{"title":20,"path":21,"stem":22,"icon":23},"Quickstart","\u002Fstart\u002Fquickstart","1.start\u002F3.quickstart","i-lucide-rocket",{"title":25,"path":26,"stem":27,"icon":28},"Configuration basics","\u002Fstart\u002Fconfiguration","1.start\u002F4.configuration","i-lucide-settings-2",{"title":30,"icon":6,"path":31,"stem":32,"children":33,"page":6},"Guides","\u002Fguides","2.guides",[34,39,44,49,54,59,64,69,74,79,84,89,94,99],{"title":35,"path":36,"stem":37,"icon":38},"Use jscpd in CI","\u002Fguides\u002Fci","2.guides\u002F01.ci","i-lucide-github",{"title":40,"path":41,"stem":42,"icon":43},"Pre-commit hooks","\u002Fguides\u002Fpre-commit","2.guides\u002F02.pre-commit","i-lucide-git-commit",{"title":45,"path":46,"stem":47,"icon":48},"Fail only on new duplication","\u002Fguides\u002Fbaseline","2.guides\u002F03.baseline","i-lucide-git-compare",{"title":50,"path":51,"stem":52,"icon":53},"Monorepos","\u002Fguides\u002Fmonorepos","2.guides\u002F04.monorepos","i-lucide-folder-tree",{"title":55,"path":56,"stem":57,"icon":58},"Cross-format detection","\u002Fguides\u002Fcross-format","2.guides\u002F05.cross-format","i-lucide-layers",{"title":60,"path":61,"stem":62,"icon":63},"Agents","\u002Fguides\u002Fagents","2.guides\u002F06.agents","i-lucide-cpu",{"title":65,"path":66,"stem":67,"icon":68},"Editors","\u002Fguides\u002Feditors","2.guides\u002F07.editors","i-lucide-code",{"title":70,"path":71,"stem":72,"icon":73},"Duplication over git history","\u002Fguides\u002Fhistory","2.guides\u002F08.history","i-lucide-chart-no-axes-combined",{"title":75,"path":76,"stem":77,"icon":78},"Dashboard and health score","\u002Fguides\u002Fdashboard","2.guides\u002F09.dashboard","i-lucide-layout-dashboard",{"title":80,"path":81,"stem":82,"icon":83},"Dead code","\u002Fguides\u002Fdead-code","2.guides\u002F10.dead-code","i-lucide-ghost",{"title":85,"path":86,"stem":87,"icon":88},"Comparing two codebases","\u002Fguides\u002Fcompare","2.guides\u002F11.compare","i-lucide-git-compare-arrows",{"title":90,"path":91,"stem":92,"icon":93},"Semantic clones","\u002Fguides\u002Fsemantic-clones","2.guides\u002F12.semantic-clones","i-lucide-brain-circuit",{"title":95,"path":96,"stem":97,"icon":98},"Similar functions","\u002Fguides\u002Fsimilarity","2.guides\u002F13.similarity","i-lucide-list-tree",{"title":100,"path":101,"stem":102,"icon":103},"Boundaries","\u002Fguides\u002Fboundaries","2.guides\u002F14.boundaries","i-lucide-fence",{"title":105,"icon":6,"path":106,"stem":107,"children":108,"page":6},"Concepts","\u002Fconcepts","3.concepts",[109,114,119],{"title":110,"path":111,"stem":112,"icon":113},"Types of code clones","\u002Fconcepts\u002Fclone-types","3.concepts\u002F1.clone-types","i-lucide-copy",{"title":115,"path":116,"stem":117,"icon":118},"How detection works","\u002Fconcepts\u002Fhow-detection-works","3.concepts\u002F2.how-detection-works","i-lucide-scan-search",{"title":120,"path":121,"stem":122,"icon":123},"The health score","\u002Fconcepts\u002Fhealth-score","3.concepts\u002F3.health-score","i-lucide-heart-pulse",{"title":125,"icon":6,"path":126,"stem":127,"children":128,"page":6},"Reference","\u002Freference","4.reference",[129,134,139,144,181,186,190],{"title":130,"path":131,"stem":132,"icon":133},"CLI options","\u002Freference\u002Fcli","4.reference\u002F1.cli","i-lucide-terminal",{"title":135,"path":136,"stem":137,"icon":138},"The config file","\u002Freference\u002Fconfig-file","4.reference\u002F2.config-file","i-lucide-settings",{"title":140,"path":141,"stem":142,"icon":143},"Exit codes","\u002Freference\u002Fexit-codes","4.reference\u002F3.exit-codes","i-lucide-log-out",{"title":145,"icon":6,"path":146,"stem":147,"children":148},"Reporters","\u002Freference\u002Freporters","4.reference\u002F4.reporters\u002Findex",[149,151,156,161,166,171,176],{"title":145,"path":146,"stem":147,"icon":150},"i-lucide-file-chart-column",{"title":152,"path":153,"stem":154,"icon":155},"HTML reporter","\u002Freference\u002Freporters\u002Fhtml","4.reference\u002F4.reporters\u002F2.html","i-lucide-file-code",{"title":157,"path":158,"stem":159,"icon":160},"JSON reporter","\u002Freference\u002Freporters\u002Fjson","4.reference\u002F4.reporters\u002F3.json","i-lucide-braces",{"title":162,"path":163,"stem":164,"icon":165},"Badge reporter","\u002Freference\u002Freporters\u002Fbadge","4.reference\u002F4.reporters\u002F4.badge","i-lucide-award",{"title":167,"path":168,"stem":169,"icon":170},"SARIF reporter","\u002Freference\u002Freporters\u002Fsarif","4.reference\u002F4.reporters\u002F5.sarif","i-lucide-shield-check",{"title":172,"path":173,"stem":174,"icon":175},"CodeClimate reporter","\u002Freference\u002Freporters\u002Fcodeclimate","4.reference\u002F4.reporters\u002F6.codeclimate","i-lucide-flag-triangle-right",{"title":177,"path":178,"stem":179,"icon":180},"OpenMetrics reporter","\u002Freference\u002Freporters\u002Fopenmetrics","4.reference\u002F4.reporters\u002F7.openmetrics","i-lucide-activity",{"title":182,"path":183,"stem":184,"icon":185},"Supported formats","\u002Freference\u002Fsupported-formats","4.reference\u002F5.supported-formats","i-lucide-languages",{"title":187,"path":188,"stem":189,"icon":38},"GitHub Action","\u002Freference\u002Fgithub-action","4.reference\u002F6.github-action",{"title":191,"path":192,"stem":193,"icon":68},"Rust crates","\u002Freference\u002Frust-crates","4.reference\u002F7.rust-crates",{"title":195,"icon":6,"path":196,"stem":197,"children":198,"page":6},"Project","\u002Fproject","5.project",[199,204,209,214,239,244],{"title":200,"path":201,"stem":202,"icon":203},"Changelog","\u002Fproject\u002Fchangelog","5.project\u002F1.changelog","i-lucide-scroll-text",{"title":205,"path":206,"stem":207,"icon":208},"Migrating from v4 to v5","\u002Fproject\u002Fmigration","5.project\u002F2.migration","i-lucide-arrow-right-left",{"title":210,"path":211,"stem":212,"icon":213},"jscpd v4 (TypeScript)","\u002Fproject\u002Fv4","5.project\u002F3.v4","i-simple-icons-typescript",{"title":215,"icon":6,"path":216,"stem":217,"children":218},"Benchmarks","\u002Fproject\u002Fbenchmarks","5.project\u002F4.benchmarks\u002Findex",[219,221,226,230,235],{"title":215,"path":216,"stem":217,"icon":220},"i-lucide-gauge",{"title":222,"path":223,"stem":224,"icon":225},"Detection Speed","\u002Fproject\u002Fbenchmarks\u002Fdetection-speed","5.project\u002F4.benchmarks\u002F2.detection-speed","i-lucide-zap",{"title":227,"path":228,"stem":229,"icon":58},"Multi-Format Detection","\u002Fproject\u002Fbenchmarks\u002Fcross-format","5.project\u002F4.benchmarks\u002F3.cross-format",{"title":231,"path":232,"stem":233,"icon":234},"AI Token Efficiency","\u002Fproject\u002Fbenchmarks\u002Fai-token-efficiency","5.project\u002F4.benchmarks\u002F4.ai-token-efficiency","i-lucide-sparkles",{"title":236,"path":237,"stem":238,"icon":93},"Embedding Models","\u002Fproject\u002Fbenchmarks\u002Fembedding-models","5.project\u002F4.benchmarks\u002F5.embedding-models",{"title":240,"path":241,"stem":242,"icon":243},"Research","\u002Fproject\u002Fresearch","5.project\u002F5.research","i-lucide-graduation-cap",{"title":245,"path":246,"stem":247,"icon":248},"Articles","\u002Fproject\u002Farticles","5.project\u002F6.articles","i-lucide-newspaper",{"name":250,"url":251,"appearances":252,"latest":268},"Thysrael\u002FHorizon","https:\u002F\u002Fgithub.com\u002FThysrael\u002FHorizon",[253],{"date":254,"rank":255,"stars":256,"starsToday":257,"headSha":258,"sources":259,"lines":260,"clones":261,"duplicatedLines":262,"percentage":263,"codePercentage":264,"codeSources":265,"healthScore":266,"healthGrade":267},"2026-11-05",9,12645,121,"d7406f738c711df82b8f060fa1d5e9999d36cca0",189,36312,133,1617,4.45,1.3,63,70.4,"B",{"date":254,"generatedAt":269,"name":250,"url":251,"description":270,"language":271,"stars":256,"starsToday":257,"defaultBranch":272,"headSha":258,"durationMs":273,"total":274,"formats":278,"topClones":326,"code":502,"health":645,"complexity":676,"deadCode":722},"2026-11-05T05:21:19.579Z","📡 Your own AI-powered news radar. Generates daily briefings in English & Chinese. | 用 AI 构建你专属的新闻雷达","Python","main",1468,{"sources":259,"lines":260,"tokens":275,"clones":261,"duplicatedLines":262,"duplicatedTokens":276,"percentage":263,"percentageTokens":277},229892,10945,4.76,[279,286,292,299,306,310,313,316,320,323],{"format":280,"sources":281,"lines":282,"clones":283,"duplicatedLines":284,"percentage":285},"python",113,27602,117,1271,4.6,{"format":287,"sources":288,"lines":289,"clones":255,"duplicatedLines":290,"percentage":291},"json",18,1794,243,13.55,{"format":293,"sources":294,"lines":295,"clones":296,"duplicatedLines":297,"percentage":298},"markdown",35,4910,6,93,1.89,{"format":300,"sources":301,"lines":302,"clones":303,"duplicatedLines":304,"percentage":305},"markup",5,1292,1,10,0.77,{"format":307,"sources":303,"lines":308,"clones":309,"duplicatedLines":309,"percentage":309},"css",191,0,{"format":311,"sources":255,"lines":312,"clones":309,"duplicatedLines":309,"percentage":309},"bash",165,{"format":314,"sources":303,"lines":315,"clones":309,"duplicatedLines":309,"percentage":309},"javascript",132,{"format":317,"sources":318,"lines":319,"clones":309,"duplicatedLines":309,"percentage":309},"yaml",4,77,{"format":321,"sources":303,"lines":322,"clones":309,"duplicatedLines":309,"percentage":309},"toml",64,{"format":324,"sources":303,"lines":325,"clones":309,"duplicatedLines":309,"percentage":309},"docker",45,[327,351,381,411,423,437,449,462,474,491],{"format":293,"lines":328,"tokens":329,"first":330,"others":333,"copies":339,"excerpt":340,"kind":350},25,824,{"name":331,"start":318,"end":332},"README.md",28,[334,337],{"name":335,"start":301,"end":336},"README_ja.md",29,{"name":338,"start":301,"end":336},"README_zh.md",3,{"lines":341,"total":328},[342,343,344,344,345,346,343,347,348,349],"\u003Cp>\u003Cstrong>Enjoy the News itself. Leave others to Horizon\u003C\u002Fstrong>\u003C\u002Fp>","","\u003Ca href=\"https:\u002F\u002Ftrendshift.io\u002Frepositories\u002F22864?utm_source=trendshift-badge&amp;utm_medium=badge&amp;utm_campaign=badge-trendshift-22864\" target=\"_blank\" rel…","\u003Ca href=\"https:\u002F\u002Fhellogithub.com\u002Frepository\u002FThysrael\u002FHorizon\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Fabroad.hellogithub.com\u002Fv1\u002Fwidgets\u002Frecommend.svg?rid=7a4b606e28e…","\u003Cbr>","[![License](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-MIT-green.svg?style=for-the-badge&logo=opensourceinitiative&logoColor=white)](LICENSE)","[![Tool uv](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FTool-uv-4B275F?style=for-the-badge&logo=uv&logoColor=white)](https:\u002F\u002Fgithub.com\u002Fastral-sh\u002Fuv)","[![Website](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FWebsite-Horizon-263238?style=for-the-badge&logo=homepage&logoColor=white)](https:\u002F\u002Fwww.horizon1123.top\u002F)","docs",{"format":280,"lines":352,"tokens":297,"first":353,"others":357,"copies":301,"excerpt":370,"kind":380},14,{"name":354,"start":355,"end":356},"tests\u002Ftest_webhook.py",1451,1464,[358,361,364,367],{"name":354,"start":359,"end":360},1480,1493,{"name":354,"start":362,"end":363},1508,1521,{"name":354,"start":365,"end":366},1603,1616,{"name":354,"start":368,"end":369},1627,1640,{"lines":371,"total":352},[372,343,373,374,375,376,377,378,343,379],"mock_console = MagicMock()","with patch(\"httpx.AsyncClient\") as mock_client_cls:","    mock_client = AsyncMock()","    mock_client.get = AsyncMock(return_value=mock_response)","    mock_client.__aenter__ = AsyncMock(return_value=mock_client)","    mock_client.__aexit__ = AsyncMock(return_value=False)","    mock_client_cls.return_value = mock_client","    notifier.console = mock_console","tests",{"format":280,"lines":255,"tokens":382,"first":383,"others":387,"copies":318,"excerpt":397,"excerptSecond":407,"kind":380},86,{"name":384,"start":385,"end":386},"tests\u002Ftest_twitter.py",193,201,[388,391,394],{"name":384,"start":389,"end":390},249,257,{"name":384,"start":392,"end":393},273,281,{"name":384,"start":395,"end":396},295,303,{"lines":398,"total":255},[399,343,400,401,402,403,404,405,406],"old = (since - timedelta(hours=2)).strftime(\"%a %b %d %H:%M:%S +0000 %Y\")","def handler(request: httpx.Request) -> httpx.Response:","    if \"\u002Fruns\" in request.url.path and request.method == \"POST\":","        return httpx.Response(200, json=_run_resp())","    if \"\u002Factor-runs\u002F\" in request.url.path:","        return httpx.Response(200, json=_status_resp())","    if \"\u002Fdatasets\u002F\" in request.url.path:","        return httpx.Response(200, json=[_tweet(\"1\", created_at=old)])",{"lines":408,"total":255},[409,343,400,401,402,403,404,405,410],"since = datetime.now(timezone.utc) - timedelta(hours=1)","        return httpx.Response(200, json=[{\"noResults\": True}, _tweet(\"99\")])",{"format":280,"lines":412,"tokens":413,"first":414,"others":416,"copies":318,"kind":380},8,60,{"name":384,"start":386,"end":415},208,[417,419,421],{"name":384,"start":390,"end":418},265,{"name":384,"start":393,"end":420},288,{"name":384,"start":396,"end":422},311,{"format":280,"lines":304,"tokens":424,"first":425,"others":427,"copies":318,"kind":380},58,{"name":354,"start":355,"end":426},1460,[428,431,434],{"name":354,"start":429,"end":430},1533,1542,{"name":354,"start":432,"end":433},1557,1566,{"name":354,"start":435,"end":436},1581,1590,{"format":280,"lines":296,"tokens":438,"first":439,"others":442,"copies":318,"kind":380},56,{"name":384,"start":440,"end":441},176,181,[443,445,447],{"name":384,"start":444,"end":418},260,{"name":384,"start":446,"end":420},284,{"name":384,"start":448,"end":422},306,{"format":280,"lines":450,"tokens":451,"first":452,"others":455,"copies":339,"kind":380},16,82,{"name":354,"start":453,"end":454},493,508,[456,459],{"name":354,"start":457,"end":458},604,619,{"name":354,"start":460,"end":461},670,686,{"format":280,"lines":463,"tokens":451,"first":464,"others":467,"copies":339,"kind":380},12,{"name":354,"start":465,"end":466},1535,1546,[468,471],{"name":354,"start":469,"end":470},1559,1570,{"name":354,"start":472,"end":473},1583,1594,{"format":280,"lines":475,"tokens":476,"first":477,"others":480,"copies":318,"kind":490},11,50,{"name":478,"start":479,"end":385},"src\u002Fai\u002Fclient.py",183,[481,484,487],{"name":478,"start":482,"end":483},300,310,{"name":478,"start":485,"end":486},433,443,{"name":478,"start":488,"end":489},543,553,"code",{"format":280,"lines":352,"tokens":492,"first":493,"others":495,"copies":339,"kind":380},71,{"name":354,"start":453,"end":494},506,[496,499],{"name":354,"start":497,"end":498},533,546,{"name":354,"start":500,"end":501},635,648,{"sources":265,"lines":503,"tokens":504,"clones":505,"duplicatedLines":506,"duplicatedTokens":507,"percentage":264,"percentageTokens":508,"formats":509,"topClones":515,"generated":643},14288,78708,17,186,1084,1.38,[510,514],{"format":280,"sources":511,"lines":512,"clones":505,"duplicatedLines":506,"percentage":513},62,14225,1.31,{"format":311,"sources":303,"lines":265,"clones":309,"duplicatedLines":309,"percentage":309},[516,533,556,578,588,599,608,617,626,635],{"format":280,"lines":475,"tokens":476,"first":517,"others":518,"copies":318,"excerpt":522,"kind":490},{"name":478,"start":479,"end":385},[519,520,521],{"name":478,"start":482,"end":483},{"name":478,"start":485,"end":486},{"name":478,"start":488,"end":489},{"lines":523,"total":475},[524,525,526,527,528,343,529,530,531,532],"Args:","    system: System prompt","    user: User prompt","    temperature: Sampling temperature","    max_tokens: Maximum tokens to generate","Returns:","    str: Generated text","\"\"\"","temperature = self.temperature if temperature is None else temperature",{"format":280,"lines":534,"tokens":535,"first":536,"others":539,"copies":543,"excerpt":544,"kind":490},22,104,{"name":478,"start":537,"end":538},322,343,[540],{"name":478,"start":541,"end":542},451,473,2,{"lines":545,"total":534},[546,547,548,549,550,551,552,553,554,555],"    response = await self._do_request(","        system=system,","        user=user,","        temperature=temperature,","        max_tokens=max_tokens,","        include_temperature=include_temperature,","        use_max_completion_tokens=use_max_completion_tokens,","    )","    break","except OpenAIStatusError as exc:",{"format":280,"lines":475,"tokens":557,"first":558,"others":562,"copies":543,"excerpt":566,"kind":490},98,{"name":559,"start":560,"end":561},"src\u002Fmain.py",24,34,[563],{"name":564,"start":565,"end":438},"src\u002Fsetup\u002Fwizard.py",46,{"lines":567,"total":475},[568,569,570,571,572,573,574,575,576,577],"    \"\"\"Print the application banner.\"\"\"","    banner = r\"\"\"","[bold blue]","  _    _            _"," | |  | |          (_)"," | |__| | ___  _ __ _ ___  ___  _ __"," |  __  |\u002F _ \\| '__| |_  \u002F \u002F _ \\| '_ \\"," | |  | | (_) | |  | |\u002F \u002F | (_) | | | |"," |_|  |_|\\___\u002F|_|  |_\u002F___| \\___\u002F|_| |_|","[\u002Fbold blue]",{"format":280,"lines":352,"tokens":579,"first":580,"others":584,"copies":543,"kind":490},95,{"name":581,"start":582,"end":583},"src\u002Fservices\u002Femail.py",57,70,[585],{"name":581,"start":586,"end":587},99,112,{"format":280,"lines":304,"tokens":589,"first":590,"others":594,"copies":543,"kind":490},80,{"name":591,"start":592,"end":593},"src\u002Fmcp\u002Fserver.py",282,291,[595],{"name":596,"start":597,"end":598},"src\u002Fmcp\u002Fservice.py",602,611,{"format":280,"lines":600,"tokens":601,"first":602,"others":605,"copies":543,"kind":490},7,65,{"name":591,"start":603,"end":604},102,108,[606],{"name":591,"start":283,"end":607},123,{"format":280,"lines":609,"tokens":601,"first":610,"others":613,"copies":543,"kind":490},13,{"name":596,"start":611,"end":612},370,382,[614],{"name":596,"start":615,"end":616},485,497,{"format":280,"lines":304,"tokens":618,"first":619,"others":622,"copies":543,"kind":490},61,{"name":591,"start":620,"end":621},351,360,[623],{"name":596,"start":624,"end":625},787,796,{"format":280,"lines":463,"tokens":438,"first":627,"others":631,"copies":543,"kind":490},{"name":628,"start":629,"end":630},"src\u002Fscrapers\u002Freddit.py",94,105,[632],{"name":628,"start":633,"end":634},330,341,{"format":280,"lines":636,"tokens":637,"first":638,"others":640,"copies":543,"kind":490},15,54,{"name":581,"start":583,"end":639},84,[641],{"name":581,"start":587,"end":642},126,{"files":309,"minified":309,"sample":644},[],{"score":266,"grade":267,"size":646,"dimensions":650},{"lines":647,"files":648,"class":649},27842,116,"M",[651,661,670],{"id":652,"source":653,"value":285,"adjusted":654,"lines":284,"halfLife":655,"formats":656,"excluded":657,"weight":303,"score":660},"duplication","jscpd",4.5,8.5,[280,314,311,324],[300,658,659],"text","data",69.3,{"id":662,"source":653,"value":663,"adjusted":664,"lines":665,"halfLife":666,"coverage":667,"weight":668,"score":669},"dead-code",0.8,0.9,210,7.5,99.8,0.998,91.9,{"id":671,"source":653,"value":672,"adjusted":673,"lines":674,"halfLife":476,"weight":303,"score":675},"complexity",45.2,43.6,12588,54.7,{"total":677,"mean":678,"files":679},3975,34.3,[680,685,689,694,698,701,705,710,713,718],{"path":681,"complexity":682,"lines":683,"bytes":684},"src\u002Forchestrator.py",252,1151,45691,{"path":478,"complexity":686,"lines":687,"bytes":688},154,743,26574,{"path":690,"complexity":691,"lines":692,"bytes":693},"src\u002Fai\u002Fchatgpt_auth.py",145,470,22665,{"path":354,"complexity":695,"lines":696,"bytes":697},137,1814,70019,{"path":628,"complexity":607,"lines":699,"bytes":700},574,20641,{"path":702,"complexity":607,"lines":703,"bytes":704},"src\u002Fservices\u002Fwebhook.py",852,31329,{"path":706,"complexity":707,"lines":708,"bytes":709},"src\u002Fai\u002Fenricher.py",120,502,18982,{"path":596,"complexity":707,"lines":711,"bytes":712},830,30314,{"path":714,"complexity":715,"lines":716,"bytes":717},"src\u002Fservices\u002Fwechat.py",110,410,16824,{"path":384,"complexity":719,"lines":720,"bytes":721},103,661,24769,{"percentage":723,"findings":475,"files":724,"byCategory":725,"largest":732},0.76,127,[726,728,730],{"category":727,"count":303},"unused-file",{"category":729,"count":318},"unused-export",{"category":731,"count":296},"unused-import",[733,735,739,741,744,747,749,752,755,757],{"category":727,"path":734,"name":343,"line":303,"lines":315},"docs\u002Fassets\u002Fjs\u002Fhorizon.js",{"category":729,"path":736,"name":737,"line":695,"lines":738},"src\u002Fsetup\u002Fpresets.py","match_domains",42,{"category":729,"path":736,"name":740,"line":441,"lines":534},"collect_sources_from_domains",{"category":729,"path":742,"name":743,"line":648,"lines":301},"src\u002Fsetup\u002Ftag_aliases.py","resolve_tag_alias",{"category":729,"path":745,"name":746,"line":322,"lines":339},"src\u002Fai\u002Ftokens.py","reset_usage",{"category":731,"path":748,"name":287,"line":339,"lines":303},"src\u002Fprocessing\u002Fprofiles.py",{"category":731,"path":750,"name":751,"line":296,"lines":303},"src\u002Fscrapers\u002Ftelegram.py","timezone",{"category":731,"path":753,"name":754,"line":318,"lines":303},"src\u002Fscrapers\u002Ftwitter_playwright.py","glob",{"category":731,"path":753,"name":756,"line":463,"lines":303},"List",{"category":731,"path":758,"name":759,"line":318,"lines":303},"src\u002Fsetup\u002Fai_recommend.py","Optional",{"\u002Ftrending\u002FThysrael\u002FHorizon":761},{"views":309,"visits":309},1793861479479]