yt-dlp 2025.11.8.232845.dev0__tar.gz → 2025.11.11.5312.dev0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1250) hide show
  1. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/AUTHORS +6 -0
  2. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/Changelog.md +16 -3
  3. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/PKG-INFO +27 -16
  4. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/README.md +26 -15
  5. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/README.txt +26 -15
  6. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/completions/fish/yt-dlp.fish +2 -2
  7. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/completions/zsh/_yt-dlp +2 -2
  8. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/run_tests.py +22 -2
  9. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/update_ejs.py +3 -1
  10. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/zsh-completion.py +7 -0
  11. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/supportedsites.md +2 -0
  12. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/conftest.py +30 -0
  13. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_http_proxy.py +2 -0
  14. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_networking.py +3 -0
  15. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_socks.py +2 -0
  16. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_websockets.py +7 -0
  17. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt-dlp.1 +18 -9
  18. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/cookies.py +1 -1
  19. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/_extractors.py +5 -1
  20. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bunnycdn.py +20 -3
  21. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dplay.py +8 -7
  22. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/firsttv.py +34 -1
  23. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/floatplane.py +26 -27
  24. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lazy_extractors.py +18 -3
  25. yt_dlp-2025.11.11.5312.dev0/yt_dlp/extractor/mux.py +92 -0
  26. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tubetugraz.py +9 -2
  27. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/twitch.py +5 -2
  28. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/options.py +12 -5
  29. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/utils/_jsruntime.py +13 -4
  30. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/version.py +3 -3
  31. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/.gitignore +0 -0
  32. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/LICENSE +0 -0
  33. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/completions/bash/yt-dlp +0 -0
  34. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/__init__.py +0 -0
  35. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/bash-completion.in +0 -0
  36. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/bash-completion.py +0 -0
  37. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/changelog_override.json +0 -0
  38. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/changelog_override.schema.json +0 -0
  39. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/check-porn.py +0 -0
  40. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/cli_to_api.py +0 -0
  41. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/fish-completion.in +0 -0
  42. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/fish-completion.py +0 -0
  43. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/generate_aes_testdata.py +0 -0
  44. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/generate_third_party_licenses.py +0 -0
  45. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/install_deps.py +0 -0
  46. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/lazy_load_template.py +0 -0
  47. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/logo.ico +0 -0
  48. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/make_changelog.py +0 -0
  49. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/make_contributing.py +0 -0
  50. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/make_issue_template.py +0 -0
  51. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/make_lazy_extractors.py +0 -0
  52. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/make_readme.py +0 -0
  53. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/make_supportedsites.py +0 -0
  54. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/prepare_manpage.py +0 -0
  55. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/set-variant.py +0 -0
  56. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/setup_variables.py +0 -0
  57. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/setup_variables_tests.py +0 -0
  58. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/tomlparse.py +0 -0
  59. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/update-version.py +0 -0
  60. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/update_changelog.py +0 -0
  61. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/utils.py +0 -0
  62. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/devscripts/zsh-completion.in +0 -0
  63. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/pyproject.toml +0 -0
  64. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/__init__.py +0 -0
  65. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/helper.py +0 -0
  66. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/parameters.json +0 -0
  67. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_InfoExtractor.py +0 -0
  68. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_YoutubeDL.py +0 -0
  69. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_YoutubeDLCookieJar.py +0 -0
  70. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_aes.py +0 -0
  71. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_age_restriction.py +0 -0
  72. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_all_urls.py +0 -0
  73. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_cache.py +0 -0
  74. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_compat.py +0 -0
  75. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_config.py +0 -0
  76. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_cookies.py +0 -0
  77. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_devalue.py +0 -0
  78. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_download.py +0 -0
  79. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_downloader_external.py +0 -0
  80. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_downloader_http.py +0 -0
  81. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_execution.py +0 -0
  82. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_iqiyi_sdk_interpreter.py +0 -0
  83. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_jsc/conftest.py +0 -0
  84. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_jsc/test_ejs_integration.py +0 -0
  85. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_jsc/test_provider.py +0 -0
  86. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_jsinterp.py +0 -0
  87. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_netrc.py +0 -0
  88. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_networking_utils.py +0 -0
  89. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_overwrites.py +0 -0
  90. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_plugins.py +0 -0
  91. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_post_hooks.py +0 -0
  92. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_postprocessors.py +0 -0
  93. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_pot/conftest.py +0 -0
  94. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_pot/test_pot_builtin_memorycache.py +0 -0
  95. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_pot/test_pot_builtin_utils.py +0 -0
  96. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_pot/test_pot_builtin_webpospec.py +0 -0
  97. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_pot/test_pot_director.py +0 -0
  98. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_pot/test_pot_framework.py +0 -0
  99. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_subtitles.py +0 -0
  100. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_traversal.py +0 -0
  101. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_update.py +0 -0
  102. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_utils.py +0 -0
  103. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_verbose_output.py +0 -0
  104. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_youtube_lists.py +0 -0
  105. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/test_youtube_misc.py +0 -0
  106. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testcert.pem +0 -0
  107. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/certificate/ca.crt +0 -0
  108. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/certificate/ca.key +0 -0
  109. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/certificate/ca.srl +0 -0
  110. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/certificate/client.crt +0 -0
  111. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/certificate/client.csr +0 -0
  112. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/certificate/client.key +0 -0
  113. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/certificate/clientencrypted.key +0 -0
  114. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/certificate/clientwithencryptedkey.crt +0 -0
  115. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/certificate/clientwithkey.crt +0 -0
  116. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/certificate/instructions.md +0 -0
  117. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/cookies/httponly_cookies.txt +0 -0
  118. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/cookies/malformed_cookies.txt +0 -0
  119. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/cookies/session_cookies.txt +0 -0
  120. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/f4m/custom_base_url.f4m +0 -0
  121. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/ism/ec-3_test.Manifest +0 -0
  122. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/ism/sintel.Manifest +0 -0
  123. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/m3u8/bipbop_16x9.m3u8 +0 -0
  124. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/m3u8/img_bipbop_adv_example_fmp4.m3u8 +0 -0
  125. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/mpd/float_duration.mpd +0 -0
  126. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/mpd/subtitles.mpd +0 -0
  127. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/mpd/unfragmented.mpd +0 -0
  128. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/mpd/urls_only.mpd +0 -0
  129. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/netrc/netrc +0 -0
  130. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/netrc/print_netrc.py +0 -0
  131. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/plugin_packages/testpackage/yt_dlp_plugins/extractor/package.py +0 -0
  132. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/reload_plugins/yt_dlp_plugins/extractor/normal.py +0 -0
  133. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/reload_plugins/yt_dlp_plugins/postprocessor/normal.py +0 -0
  134. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/thumbnails/foo %d bar/placeholder +0 -0
  135. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/xspf/foo_xspf.xspf +0 -0
  136. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/yt_dlp_plugins/extractor/_ignore.py +0 -0
  137. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/yt_dlp_plugins/extractor/ignore.py +0 -0
  138. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/yt_dlp_plugins/extractor/normal.py +0 -0
  139. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/yt_dlp_plugins/extractor/override.py +0 -0
  140. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/yt_dlp_plugins/extractor/overridetwo.py +0 -0
  141. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/yt_dlp_plugins/postprocessor/normal.py +0 -0
  142. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/zipped_plugins/yt_dlp_plugins/extractor/zipped.py +0 -0
  143. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/test/testdata/zipped_plugins/yt_dlp_plugins/postprocessor/zipped.py +0 -0
  144. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/YoutubeDL.py +0 -0
  145. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/__init__.py +0 -0
  146. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/__main__.py +0 -0
  147. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/__pyinstaller/__init__.py +0 -0
  148. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/__pyinstaller/hook-yt_dlp.py +0 -0
  149. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/aes.py +0 -0
  150. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/cache.py +0 -0
  151. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/compat/__init__.py +0 -0
  152. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/compat/_deprecated.py +0 -0
  153. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/compat/_legacy.py +0 -0
  154. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/compat/compat_utils.py +0 -0
  155. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/compat/imghdr.py +0 -0
  156. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/compat/shutil.py +0 -0
  157. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/compat/urllib/__init__.py +0 -0
  158. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/compat/urllib/request.py +0 -0
  159. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/dependencies/Cryptodome.py +0 -0
  160. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/dependencies/__init__.py +0 -0
  161. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/__init__.py +0 -0
  162. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/bunnycdn.py +0 -0
  163. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/common.py +0 -0
  164. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/dash.py +0 -0
  165. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/external.py +0 -0
  166. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/f4m.py +0 -0
  167. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/fc2.py +0 -0
  168. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/fragment.py +0 -0
  169. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/hls.py +0 -0
  170. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/http.py +0 -0
  171. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/ism.py +0 -0
  172. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/mhtml.py +0 -0
  173. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/niconico.py +0 -0
  174. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/rtmp.py +0 -0
  175. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/rtsp.py +0 -0
  176. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/websocket.py +0 -0
  177. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/downloader/youtube_live_chat.py +0 -0
  178. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/__init__.py +0 -0
  179. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/abc.py +0 -0
  180. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/abcnews.py +0 -0
  181. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/abcotvs.py +0 -0
  182. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/abematv.py +0 -0
  183. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/academicearth.py +0 -0
  184. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/acast.py +0 -0
  185. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/acfun.py +0 -0
  186. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/adn.py +0 -0
  187. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/adobeconnect.py +0 -0
  188. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/adobepass.py +0 -0
  189. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/adobetv.py +0 -0
  190. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/adultswim.py +0 -0
  191. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/aenetworks.py +0 -0
  192. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/aeonco.py +0 -0
  193. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/afreecatv.py +0 -0
  194. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/agora.py +0 -0
  195. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/airtv.py +0 -0
  196. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/aitube.py +0 -0
  197. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/aliexpress.py +0 -0
  198. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/aljazeera.py +0 -0
  199. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/allocine.py +0 -0
  200. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/allstar.py +0 -0
  201. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/alphaporno.py +0 -0
  202. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/alsace20tv.py +0 -0
  203. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/altcensored.py +0 -0
  204. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/alura.py +0 -0
  205. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/amadeustv.py +0 -0
  206. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/amara.py +0 -0
  207. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/amazon.py +0 -0
  208. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/amazonminitv.py +0 -0
  209. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/amcnetworks.py +0 -0
  210. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/americastestkitchen.py +0 -0
  211. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/amp.py +0 -0
  212. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/anchorfm.py +0 -0
  213. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/angel.py +0 -0
  214. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/antenna.py +0 -0
  215. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/anvato.py +0 -0
  216. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/aol.py +0 -0
  217. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/apa.py +0 -0
  218. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/aparat.py +0 -0
  219. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/appleconnect.py +0 -0
  220. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/applepodcasts.py +0 -0
  221. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/appletrailers.py +0 -0
  222. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/archiveorg.py +0 -0
  223. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/arcpublishing.py +0 -0
  224. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ard.py +0 -0
  225. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/arnes.py +0 -0
  226. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/art19.py +0 -0
  227. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/arte.py +0 -0
  228. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/asobichannel.py +0 -0
  229. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/asobistage.py +0 -0
  230. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/atresplayer.py +0 -0
  231. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/atscaleconf.py +0 -0
  232. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/atvat.py +0 -0
  233. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/audimedia.py +0 -0
  234. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/audioboom.py +0 -0
  235. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/audiodraft.py +0 -0
  236. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/audiomack.py +0 -0
  237. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/audius.py +0 -0
  238. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/awaan.py +0 -0
  239. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/aws.py +0 -0
  240. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/axs.py +0 -0
  241. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/azmedien.py +0 -0
  242. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/baidu.py +0 -0
  243. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/banbye.py +0 -0
  244. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bandcamp.py +0 -0
  245. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bandlab.py +0 -0
  246. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bannedvideo.py +0 -0
  247. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bbc.py +0 -0
  248. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/beacon.py +0 -0
  249. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/beatbump.py +0 -0
  250. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/beatport.py +0 -0
  251. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/beeg.py +0 -0
  252. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/behindkink.py +0 -0
  253. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/berufetv.py +0 -0
  254. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bet.py +0 -0
  255. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bfi.py +0 -0
  256. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bfmtv.py +0 -0
  257. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bibeltv.py +0 -0
  258. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bigflix.py +0 -0
  259. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bigo.py +0 -0
  260. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bild.py +0 -0
  261. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bilibili.py +0 -0
  262. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/biobiochiletv.py +0 -0
  263. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bitchute.py +0 -0
  264. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/blackboardcollaborate.py +0 -0
  265. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bleacherreport.py +0 -0
  266. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/blerp.py +0 -0
  267. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/blogger.py +0 -0
  268. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bloomberg.py +0 -0
  269. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bluesky.py +0 -0
  270. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bokecc.py +0 -0
  271. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bongacams.py +0 -0
  272. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/boosty.py +0 -0
  273. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bostonglobe.py +0 -0
  274. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/box.py +0 -0
  275. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/boxcast.py +0 -0
  276. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bpb.py +0 -0
  277. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/br.py +0 -0
  278. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/brainpop.py +0 -0
  279. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/breitbart.py +0 -0
  280. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/brightcove.py +0 -0
  281. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/brilliantpala.py +0 -0
  282. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/btvplus.py +0 -0
  283. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bundesliga.py +0 -0
  284. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/bundestag.py +0 -0
  285. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/businessinsider.py +0 -0
  286. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/buzzfeed.py +0 -0
  287. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/byutv.py +0 -0
  288. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/c56.py +0 -0
  289. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/caffeinetv.py +0 -0
  290. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/callin.py +0 -0
  291. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/caltrans.py +0 -0
  292. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cam4.py +0 -0
  293. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/camdemy.py +0 -0
  294. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/camfm.py +0 -0
  295. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cammodels.py +0 -0
  296. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/camsoda.py +0 -0
  297. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/camtasia.py +0 -0
  298. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/canal1.py +0 -0
  299. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/canalalpha.py +0 -0
  300. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/canalc2.py +0 -0
  301. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/canalplus.py +0 -0
  302. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/canalsurmas.py +0 -0
  303. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/caracoltv.py +0 -0
  304. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cbc.py +0 -0
  305. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cbs.py +0 -0
  306. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cbsnews.py +0 -0
  307. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cbssports.py +0 -0
  308. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ccc.py +0 -0
  309. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ccma.py +0 -0
  310. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cctv.py +0 -0
  311. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cda.py +0 -0
  312. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cellebrite.py +0 -0
  313. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ceskatelevize.py +0 -0
  314. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cgtn.py +0 -0
  315. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/charlierose.py +0 -0
  316. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/chaturbate.py +0 -0
  317. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/chilloutzone.py +0 -0
  318. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/chzzk.py +0 -0
  319. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cinemax.py +0 -0
  320. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cinetecamilano.py +0 -0
  321. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cineverse.py +0 -0
  322. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ciscolive.py +0 -0
  323. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ciscowebex.py +0 -0
  324. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cjsw.py +0 -0
  325. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/clipchamp.py +0 -0
  326. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/clippit.py +0 -0
  327. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cliprs.py +0 -0
  328. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/closertotruth.py +0 -0
  329. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cloudflarestream.py +0 -0
  330. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cloudycdn.py +0 -0
  331. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/clubic.py +0 -0
  332. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/clyp.py +0 -0
  333. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cnbc.py +0 -0
  334. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cnn.py +0 -0
  335. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/comedycentral.py +0 -0
  336. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/common.py +0 -0
  337. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/commonmistakes.py +0 -0
  338. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/commonprotocols.py +0 -0
  339. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/condenast.py +0 -0
  340. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/contv.py +0 -0
  341. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/corus.py +0 -0
  342. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/coub.py +0 -0
  343. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cozytv.py +0 -0
  344. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cpac.py +0 -0
  345. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cracked.py +0 -0
  346. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/craftsy.py +0 -0
  347. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/crooksandliars.py +0 -0
  348. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/crowdbunker.py +0 -0
  349. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/crtvg.py +0 -0
  350. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cspan.py +0 -0
  351. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ctsnews.py +0 -0
  352. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ctvnews.py +0 -0
  353. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cultureunplugged.py +0 -0
  354. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/curiositystream.py +0 -0
  355. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/cybrary.py +0 -0
  356. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dacast.py +0 -0
  357. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dailymail.py +0 -0
  358. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dailymotion.py +0 -0
  359. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dailywire.py +0 -0
  360. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/damtomo.py +0 -0
  361. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dangalplay.py +0 -0
  362. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/daum.py +0 -0
  363. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/daystar.py +0 -0
  364. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dbtv.py +0 -0
  365. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dctp.py +0 -0
  366. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/democracynow.py +0 -0
  367. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/detik.py +0 -0
  368. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/deuxm.py +0 -0
  369. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dfb.py +0 -0
  370. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dhm.py +0 -0
  371. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/digitalconcerthall.py +0 -0
  372. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/digiteka.py +0 -0
  373. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/digiview.py +0 -0
  374. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/discogs.py +0 -0
  375. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/disney.py +0 -0
  376. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dispeak.py +0 -0
  377. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dlf.py +0 -0
  378. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dlive.py +0 -0
  379. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/douyutv.py +0 -0
  380. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/drbonanza.py +0 -0
  381. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dreisat.py +0 -0
  382. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/drooble.py +0 -0
  383. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dropbox.py +0 -0
  384. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dropout.py +0 -0
  385. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/drtalks.py +0 -0
  386. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/drtuber.py +0 -0
  387. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/drtv.py +0 -0
  388. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dtube.py +0 -0
  389. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/duboku.py +0 -0
  390. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dumpert.py +0 -0
  391. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/duoplay.py +0 -0
  392. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dvtv.py +0 -0
  393. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/dw.py +0 -0
  394. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ebaumsworld.py +0 -0
  395. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ebay.py +0 -0
  396. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/egghead.py +0 -0
  397. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/eggs.py +0 -0
  398. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/eighttracks.py +0 -0
  399. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/eitb.py +0 -0
  400. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/elementorembed.py +0 -0
  401. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/elonet.py +0 -0
  402. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/elpais.py +0 -0
  403. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/eltrecetv.py +0 -0
  404. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/embedly.py +0 -0
  405. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/epicon.py +0 -0
  406. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/epidemicsound.py +0 -0
  407. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/eplus.py +0 -0
  408. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/epoch.py +0 -0
  409. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/eporner.py +0 -0
  410. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/erocast.py +0 -0
  411. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/eroprofile.py +0 -0
  412. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/err.py +0 -0
  413. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ertgr.py +0 -0
  414. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/espn.py +0 -0
  415. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ettutv.py +0 -0
  416. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/europa.py +0 -0
  417. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/europeantour.py +0 -0
  418. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/eurosport.py +0 -0
  419. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/euscreen.py +0 -0
  420. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/expressen.py +0 -0
  421. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/extractors.py +0 -0
  422. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/eyedotv.py +0 -0
  423. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/facebook.py +0 -0
  424. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/fancode.py +0 -0
  425. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/fathom.py +0 -0
  426. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/faulio.py +0 -0
  427. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/faz.py +0 -0
  428. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/fc2.py +0 -0
  429. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/fczenit.py +0 -0
  430. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/fifa.py +0 -0
  431. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/filmon.py +0 -0
  432. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/filmweb.py +0 -0
  433. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/fivetv.py +0 -0
  434. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/flextv.py +0 -0
  435. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/flickr.py +0 -0
  436. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/folketinget.py +0 -0
  437. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/footyroom.py +0 -0
  438. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/formula1.py +0 -0
  439. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/fourtube.py +0 -0
  440. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/fox.py +0 -0
  441. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/fox9.py +0 -0
  442. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/foxnews.py +0 -0
  443. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/foxsports.py +0 -0
  444. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/fptplay.py +0 -0
  445. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/francaisfacile.py +0 -0
  446. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/franceinter.py +0 -0
  447. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/francetv.py +0 -0
  448. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/freesound.py +0 -0
  449. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/freespeech.py +0 -0
  450. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/freetv.py +0 -0
  451. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/frontendmasters.py +0 -0
  452. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/fujitv.py +0 -0
  453. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/funk.py +0 -0
  454. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/funker530.py +0 -0
  455. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/fuyintv.py +0 -0
  456. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gab.py +0 -0
  457. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gaia.py +0 -0
  458. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gamedevtv.py +0 -0
  459. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gamejolt.py +0 -0
  460. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gamespot.py +0 -0
  461. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gamestar.py +0 -0
  462. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gaskrank.py +0 -0
  463. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gazeta.py +0 -0
  464. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gbnews.py +0 -0
  465. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gdcvault.py +0 -0
  466. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gedidigital.py +0 -0
  467. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/generic.py +0 -0
  468. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/genericembeds.py +0 -0
  469. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/genius.py +0 -0
  470. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/germanupa.py +0 -0
  471. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/getcourseru.py +0 -0
  472. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gettr.py +0 -0
  473. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/giantbomb.py +0 -0
  474. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/glide.py +0 -0
  475. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/globalplayer.py +0 -0
  476. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/globo.py +0 -0
  477. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/glomex.py +0 -0
  478. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gmanetwork.py +0 -0
  479. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/go.py +0 -0
  480. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/godresource.py +0 -0
  481. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/godtube.py +0 -0
  482. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gofile.py +0 -0
  483. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/golem.py +0 -0
  484. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/goodgame.py +0 -0
  485. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/googledrive.py +0 -0
  486. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/googlepodcasts.py +0 -0
  487. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/googlesearch.py +0 -0
  488. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/goplay.py +0 -0
  489. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gopro.py +0 -0
  490. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/goshgay.py +0 -0
  491. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gotostage.py +0 -0
  492. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gputechconf.py +0 -0
  493. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/graspop.py +0 -0
  494. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/gronkh.py +0 -0
  495. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/groupon.py +0 -0
  496. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/harpodeon.py +0 -0
  497. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hbo.py +0 -0
  498. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hearthisat.py +0 -0
  499. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/heise.py +0 -0
  500. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hellporno.py +0 -0
  501. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hgtv.py +0 -0
  502. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hidive.py +0 -0
  503. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/historicfilms.py +0 -0
  504. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hitrecord.py +0 -0
  505. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hketv.py +0 -0
  506. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hollywoodreporter.py +0 -0
  507. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/holodex.py +0 -0
  508. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hotnewhiphop.py +0 -0
  509. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hotstar.py +0 -0
  510. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hrefli.py +0 -0
  511. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hrfensehen.py +0 -0
  512. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hrti.py +0 -0
  513. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hse.py +0 -0
  514. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/huajiao.py +0 -0
  515. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/huffpost.py +0 -0
  516. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hungama.py +0 -0
  517. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/huya.py +0 -0
  518. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hypem.py +0 -0
  519. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hypergryph.py +0 -0
  520. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/hytale.py +0 -0
  521. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/icareus.py +0 -0
  522. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ichinanalive.py +0 -0
  523. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/idagio.py +0 -0
  524. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/idolplus.py +0 -0
  525. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ign.py +0 -0
  526. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/iheart.py +0 -0
  527. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ilpost.py +0 -0
  528. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/iltalehti.py +0 -0
  529. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/imdb.py +0 -0
  530. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/imggaming.py +0 -0
  531. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/imgur.py +0 -0
  532. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ina.py +0 -0
  533. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/inc.py +0 -0
  534. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/indavideo.py +0 -0
  535. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/infoq.py +0 -0
  536. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/instagram.py +0 -0
  537. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/internazionale.py +0 -0
  538. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/internetvideoarchive.py +0 -0
  539. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/iprima.py +0 -0
  540. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/iqiyi.py +0 -0
  541. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/islamchannel.py +0 -0
  542. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/israelnationalnews.py +0 -0
  543. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/itprotv.py +0 -0
  544. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/itv.py +0 -0
  545. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ivi.py +0 -0
  546. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ivideon.py +0 -0
  547. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ivoox.py +0 -0
  548. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/iwara.py +0 -0
  549. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ixigua.py +0 -0
  550. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/izlesene.py +0 -0
  551. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/jamendo.py +0 -0
  552. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/japandiet.py +0 -0
  553. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/jeuxvideo.py +0 -0
  554. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/jiosaavn.py +0 -0
  555. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/jixie.py +0 -0
  556. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/joj.py +0 -0
  557. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/jove.py +0 -0
  558. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/jstream.py +0 -0
  559. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/jtbc.py +0 -0
  560. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/jwplatform.py +0 -0
  561. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/kakao.py +0 -0
  562. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/kaltura.py +0 -0
  563. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/kankanews.py +0 -0
  564. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/karaoketv.py +0 -0
  565. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/kelbyone.py +0 -0
  566. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/kenh14.py +0 -0
  567. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/khanacademy.py +0 -0
  568. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/kick.py +0 -0
  569. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/kicker.py +0 -0
  570. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/kickstarter.py +0 -0
  571. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/kika.py +0 -0
  572. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/kinja.py +0 -0
  573. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/kinopoisk.py +0 -0
  574. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/kommunetv.py +0 -0
  575. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/kompas.py +0 -0
  576. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/koo.py +0 -0
  577. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/krasview.py +0 -0
  578. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/kth.py +0 -0
  579. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ku6.py +0 -0
  580. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/kukululive.py +0 -0
  581. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/kuwo.py +0 -0
  582. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/la7.py +0 -0
  583. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/laracasts.py +0 -0
  584. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lastfm.py +0 -0
  585. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/laxarxames.py +0 -0
  586. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lbry.py +0 -0
  587. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lci.py +0 -0
  588. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lcp.py +0 -0
  589. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/learningonscreen.py +0 -0
  590. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lecture2go.py +0 -0
  591. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lecturio.py +0 -0
  592. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/leeco.py +0 -0
  593. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lefigaro.py +0 -0
  594. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lego.py +0 -0
  595. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lemonde.py +0 -0
  596. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lenta.py +0 -0
  597. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/libraryofcongress.py +0 -0
  598. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/libsyn.py +0 -0
  599. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lifenews.py +0 -0
  600. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/likee.py +0 -0
  601. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/linkedin.py +0 -0
  602. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/liputan6.py +0 -0
  603. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/listennotes.py +0 -0
  604. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/litv.py +0 -0
  605. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/livejournal.py +0 -0
  606. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/livestream.py +0 -0
  607. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/livestreamfails.py +0 -0
  608. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lnk.py +0 -0
  609. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/loco.py +0 -0
  610. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/loom.py +0 -0
  611. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lovehomeporn.py +0 -0
  612. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lrt.py +0 -0
  613. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lsm.py +0 -0
  614. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lumni.py +0 -0
  615. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/lynda.py +0 -0
  616. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/maariv.py +0 -0
  617. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/magellantv.py +0 -0
  618. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/magentamusik.py +0 -0
  619. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mailru.py +0 -0
  620. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mainstreaming.py +0 -0
  621. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mangomolo.py +0 -0
  622. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/manoto.py +0 -0
  623. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/manyvids.py +0 -0
  624. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/maoritv.py +0 -0
  625. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/markiza.py +0 -0
  626. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/massengeschmacktv.py +0 -0
  627. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/masters.py +0 -0
  628. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/matchtv.py +0 -0
  629. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mave.py +0 -0
  630. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mbn.py +0 -0
  631. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mdr.py +0 -0
  632. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/medaltv.py +0 -0
  633. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mediaite.py +0 -0
  634. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mediaklikk.py +0 -0
  635. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/medialaan.py +0 -0
  636. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mediaset.py +0 -0
  637. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mediasite.py +0 -0
  638. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mediastream.py +0 -0
  639. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mediaworksnz.py +0 -0
  640. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/medici.py +0 -0
  641. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/megaphone.py +0 -0
  642. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/megatvcom.py +0 -0
  643. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/meipai.py +0 -0
  644. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/melonvod.py +0 -0
  645. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/metacritic.py +0 -0
  646. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mgtv.py +0 -0
  647. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/microsoftembed.py +0 -0
  648. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/microsoftstream.py +0 -0
  649. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/minds.py +0 -0
  650. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/minoto.py +0 -0
  651. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mir24tv.py +0 -0
  652. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mirrativ.py +0 -0
  653. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mirrorcouk.py +0 -0
  654. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mit.py +0 -0
  655. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mixch.py +0 -0
  656. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mixcloud.py +0 -0
  657. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mixlr.py +0 -0
  658. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mlb.py +0 -0
  659. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mlssoccer.py +0 -0
  660. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mocha.py +0 -0
  661. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mojevideo.py +0 -0
  662. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mojvideo.py +0 -0
  663. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/monstercat.py +0 -0
  664. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/motherless.py +0 -0
  665. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/motorsport.py +0 -0
  666. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/moviepilot.py +0 -0
  667. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/moview.py +0 -0
  668. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/moviezine.py +0 -0
  669. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/movingimage.py +0 -0
  670. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/msn.py +0 -0
  671. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mtv.py +0 -0
  672. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/muenchentv.py +0 -0
  673. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/murrtube.py +0 -0
  674. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/museai.py +0 -0
  675. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/musescore.py +0 -0
  676. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/musicdex.py +0 -0
  677. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mx3.py +0 -0
  678. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mxplayer.py +0 -0
  679. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/myspace.py +0 -0
  680. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/myspass.py +0 -0
  681. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/myvideoge.py +0 -0
  682. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/myvidster.py +0 -0
  683. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/mzaalo.py +0 -0
  684. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/n1.py +0 -0
  685. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nascar.py +0 -0
  686. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nate.py +0 -0
  687. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nationalgeographic.py +0 -0
  688. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/naver.py +0 -0
  689. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nba.py +0 -0
  690. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nbc.py +0 -0
  691. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ndr.py +0 -0
  692. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ndtv.py +0 -0
  693. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nebula.py +0 -0
  694. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nekohacker.py +0 -0
  695. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nerdcubed.py +0 -0
  696. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nest.py +0 -0
  697. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/neteasemusic.py +0 -0
  698. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/netverse.py +0 -0
  699. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/netzkino.py +0 -0
  700. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/newgrounds.py +0 -0
  701. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/newspicks.py +0 -0
  702. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/newsy.py +0 -0
  703. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nextmedia.py +0 -0
  704. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nexx.py +0 -0
  705. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nfb.py +0 -0
  706. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nfhsnetwork.py +0 -0
  707. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nfl.py +0 -0
  708. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nhk.py +0 -0
  709. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nhl.py +0 -0
  710. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nick.py +0 -0
  711. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/niconico.py +0 -0
  712. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/niconicochannelplus.py +0 -0
  713. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ninaprotocol.py +0 -0
  714. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ninecninemedia.py +0 -0
  715. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ninegag.py +0 -0
  716. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ninenews.py +0 -0
  717. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ninenow.py +0 -0
  718. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nintendo.py +0 -0
  719. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nitter.py +0 -0
  720. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nobelprize.py +0 -0
  721. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/noice.py +0 -0
  722. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nonktube.py +0 -0
  723. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/noodlemagazine.py +0 -0
  724. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nosnl.py +0 -0
  725. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nova.py +0 -0
  726. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/novaplay.py +0 -0
  727. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nowness.py +0 -0
  728. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/noz.py +0 -0
  729. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/npo.py +0 -0
  730. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/npr.py +0 -0
  731. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nrk.py +0 -0
  732. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nrl.py +0 -0
  733. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nts.py +0 -0
  734. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ntvcojp.py +0 -0
  735. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ntvde.py +0 -0
  736. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ntvru.py +0 -0
  737. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nubilesporn.py +0 -0
  738. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nuevo.py +0 -0
  739. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nuum.py +0 -0
  740. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nuvid.py +0 -0
  741. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nytimes.py +0 -0
  742. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nzherald.py +0 -0
  743. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nzonscreen.py +0 -0
  744. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/nzz.py +0 -0
  745. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/odkmedia.py +0 -0
  746. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/odnoklassniki.py +0 -0
  747. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/oftv.py +0 -0
  748. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/oktoberfesttv.py +0 -0
  749. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/olympics.py +0 -0
  750. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/on24.py +0 -0
  751. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ondemandkorea.py +0 -0
  752. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/onefootball.py +0 -0
  753. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/onenewsnz.py +0 -0
  754. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/oneplace.py +0 -0
  755. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/onet.py +0 -0
  756. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/onionstudios.py +0 -0
  757. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/onsen.py +0 -0
  758. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/opencast.py +0 -0
  759. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/openload.py +0 -0
  760. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/openrec.py +0 -0
  761. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ora.py +0 -0
  762. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/orf.py +0 -0
  763. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/outsidetv.py +0 -0
  764. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/owncloud.py +0 -0
  765. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/packtpub.py +0 -0
  766. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/palcomp3.py +0 -0
  767. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/panopto.py +0 -0
  768. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/parler.py +0 -0
  769. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/parlview.py +0 -0
  770. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/parti.py +0 -0
  771. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/patreon.py +0 -0
  772. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/pbs.py +0 -0
  773. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/pearvideo.py +0 -0
  774. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/peekvids.py +0 -0
  775. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/peertube.py +0 -0
  776. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/peertv.py +0 -0
  777. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/peloton.py +0 -0
  778. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/performgroup.py +0 -0
  779. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/periscope.py +0 -0
  780. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/pgatour.py +0 -0
  781. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/philharmoniedeparis.py +0 -0
  782. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/phoenix.py +0 -0
  783. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/photobucket.py +0 -0
  784. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/pialive.py +0 -0
  785. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/piapro.py +0 -0
  786. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/picarto.py +0 -0
  787. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/piksel.py +0 -0
  788. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/pinkbike.py +0 -0
  789. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/pinterest.py +0 -0
  790. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/piramidetv.py +0 -0
  791. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/planetmarathi.py +0 -0
  792. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/platzi.py +0 -0
  793. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/playerfm.py +0 -0
  794. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/playplustv.py +0 -0
  795. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/playsuisse.py +0 -0
  796. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/playtvak.py +0 -0
  797. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/playwire.py +0 -0
  798. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/pluralsight.py +0 -0
  799. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/plutotv.py +0 -0
  800. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/plvideo.py +0 -0
  801. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/plyr.py +0 -0
  802. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/podbayfm.py +0 -0
  803. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/podchaser.py +0 -0
  804. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/podomatic.py +0 -0
  805. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/pokergo.py +0 -0
  806. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/polsatgo.py +0 -0
  807. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/polskieradio.py +0 -0
  808. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/popcorntimes.py +0 -0
  809. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/popcorntv.py +0 -0
  810. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/pornbox.py +0 -0
  811. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/pornflip.py +0 -0
  812. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/pornhub.py +0 -0
  813. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/pornotube.py +0 -0
  814. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/pornovoisines.py +0 -0
  815. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/pornoxo.py +0 -0
  816. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/pr0gramm.py +0 -0
  817. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/prankcast.py +0 -0
  818. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/premiershiprugby.py +0 -0
  819. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/presstv.py +0 -0
  820. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/projectveritas.py +0 -0
  821. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/prosiebensat1.py +0 -0
  822. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/prx.py +0 -0
  823. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/puhutv.py +0 -0
  824. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/puls4.py +0 -0
  825. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/pyvideo.py +0 -0
  826. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/qdance.py +0 -0
  827. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/qingting.py +0 -0
  828. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/qqmusic.py +0 -0
  829. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/r7.py +0 -0
  830. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/radiko.py +0 -0
  831. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/radiocanada.py +0 -0
  832. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/radiocomercial.py +0 -0
  833. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/radiode.py +0 -0
  834. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/radiofrance.py +0 -0
  835. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/radiojavan.py +0 -0
  836. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/radiokapital.py +0 -0
  837. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/radioradicale.py +0 -0
  838. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/radiozet.py +0 -0
  839. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/radlive.py +0 -0
  840. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rai.py +0 -0
  841. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/raywenderlich.py +0 -0
  842. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rbgtum.py +0 -0
  843. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rcs.py +0 -0
  844. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rcti.py +0 -0
  845. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rds.py +0 -0
  846. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/redbee.py +0 -0
  847. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/redbulltv.py +0 -0
  848. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/reddit.py +0 -0
  849. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/redge.py +0 -0
  850. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/redgifs.py +0 -0
  851. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/redtube.py +0 -0
  852. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rentv.py +0 -0
  853. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/restudy.py +0 -0
  854. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/reuters.py +0 -0
  855. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/reverbnation.py +0 -0
  856. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rheinmaintv.py +0 -0
  857. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ridehome.py +0 -0
  858. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rinsefm.py +0 -0
  859. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rmcdecouverte.py +0 -0
  860. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rockstargames.py +0 -0
  861. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rokfin.py +0 -0
  862. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/roosterteeth.py +0 -0
  863. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rottentomatoes.py +0 -0
  864. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/roya.py +0 -0
  865. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rozhlas.py +0 -0
  866. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rte.py +0 -0
  867. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rtl2.py +0 -0
  868. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rtlnl.py +0 -0
  869. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rtnews.py +0 -0
  870. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rtp.py +0 -0
  871. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rtrfm.py +0 -0
  872. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rts.py +0 -0
  873. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rtvcplay.py +0 -0
  874. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rtve.py +0 -0
  875. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rtvs.py +0 -0
  876. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rtvslo.py +0 -0
  877. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rudovideo.py +0 -0
  878. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rule34video.py +0 -0
  879. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rumble.py +0 -0
  880. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/rutube.py +0 -0
  881. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ruutu.py +0 -0
  882. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ruv.py +0 -0
  883. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/s4c.py +0 -0
  884. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/safari.py +0 -0
  885. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/saitosan.py +0 -0
  886. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/samplefocus.py +0 -0
  887. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sapo.py +0 -0
  888. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sauceplus.py +0 -0
  889. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sbs.py +0 -0
  890. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sbscokr.py +0 -0
  891. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/screen9.py +0 -0
  892. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/screencast.py +0 -0
  893. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/screencastify.py +0 -0
  894. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/screencastomatic.py +0 -0
  895. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/screenrec.py +0 -0
  896. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/scrippsnetworks.py +0 -0
  897. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/scrolller.py +0 -0
  898. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/scte.py +0 -0
  899. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sejmpl.py +0 -0
  900. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sen.py +0 -0
  901. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/senalcolombia.py +0 -0
  902. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/senategov.py +0 -0
  903. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sendtonews.py +0 -0
  904. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/servus.py +0 -0
  905. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sevenplus.py +0 -0
  906. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sexu.py +0 -0
  907. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/seznamzpravy.py +0 -0
  908. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/shahid.py +0 -0
  909. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sharepoint.py +0 -0
  910. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sharevideos.py +0 -0
  911. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/shemaroome.py +0 -0
  912. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/shiey.py +0 -0
  913. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/showroomlive.py +0 -0
  914. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sibnet.py +0 -0
  915. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/simplecast.py +0 -0
  916. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sina.py +0 -0
  917. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/skeb.py +0 -0
  918. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sky.py +0 -0
  919. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/skyit.py +0 -0
  920. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/skylinewebcams.py +0 -0
  921. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/skynewsarabia.py +0 -0
  922. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/skynewsau.py +0 -0
  923. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/slideshare.py +0 -0
  924. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/slideslive.py +0 -0
  925. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/slutload.py +0 -0
  926. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/smotrim.py +0 -0
  927. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/snapchat.py +0 -0
  928. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/snotr.py +0 -0
  929. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/softwhiteunderbelly.py +0 -0
  930. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sohu.py +0 -0
  931. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sonyliv.py +0 -0
  932. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/soundcloud.py +0 -0
  933. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/soundgasm.py +0 -0
  934. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/southpark.py +0 -0
  935. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sovietscloset.py +0 -0
  936. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/spankbang.py +0 -0
  937. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/spiegel.py +0 -0
  938. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sport5.py +0 -0
  939. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sportbox.py +0 -0
  940. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sportdeutschland.py +0 -0
  941. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/spreaker.py +0 -0
  942. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/springboardplatform.py +0 -0
  943. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sproutvideo.py +0 -0
  944. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/srgssr.py +0 -0
  945. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/srmediathek.py +0 -0
  946. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/stacommu.py +0 -0
  947. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/stageplus.py +0 -0
  948. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/stanfordoc.py +0 -0
  949. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/startrek.py +0 -0
  950. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/startv.py +0 -0
  951. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/steam.py +0 -0
  952. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/stitcher.py +0 -0
  953. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/storyfire.py +0 -0
  954. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/streaks.py +0 -0
  955. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/streamable.py +0 -0
  956. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/streamcz.py +0 -0
  957. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/streetvoice.py +0 -0
  958. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/stretchinternet.py +0 -0
  959. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/stripchat.py +0 -0
  960. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/stv.py +0 -0
  961. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/subsplash.py +0 -0
  962. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/substack.py +0 -0
  963. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sunporno.py +0 -0
  964. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sverigesradio.py +0 -0
  965. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/svt.py +0 -0
  966. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/swearnet.py +0 -0
  967. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/syvdk.py +0 -0
  968. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/sztvhu.py +0 -0
  969. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tagesschau.py +0 -0
  970. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/taptap.py +0 -0
  971. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tass.py +0 -0
  972. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tbs.py +0 -0
  973. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tbsjp.py +0 -0
  974. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/teachable.py +0 -0
  975. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/teachertube.py +0 -0
  976. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/teachingchannel.py +0 -0
  977. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/teamcoco.py +0 -0
  978. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/teamtreehouse.py +0 -0
  979. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ted.py +0 -0
  980. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tele13.py +0 -0
  981. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tele5.py +0 -0
  982. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/telebruxelles.py +0 -0
  983. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/telecaribe.py +0 -0
  984. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/telecinco.py +0 -0
  985. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/telegraaf.py +0 -0
  986. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/telegram.py +0 -0
  987. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/telemb.py +0 -0
  988. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/telemundo.py +0 -0
  989. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/telequebec.py +0 -0
  990. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/teletask.py +0 -0
  991. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/telewebion.py +0 -0
  992. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tempo.py +0 -0
  993. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tencent.py +0 -0
  994. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tennistv.py +0 -0
  995. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tenplay.py +0 -0
  996. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/testurl.py +0 -0
  997. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tf1.py +0 -0
  998. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tfo.py +0 -0
  999. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/theguardian.py +0 -0
  1000. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/thehighwire.py +0 -0
  1001. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/theholetv.py +0 -0
  1002. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/theintercept.py +0 -0
  1003. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/theplatform.py +0 -0
  1004. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/thestar.py +0 -0
  1005. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/thesun.py +0 -0
  1006. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/theweatherchannel.py +0 -0
  1007. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/thisamericanlife.py +0 -0
  1008. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/thisoldhouse.py +0 -0
  1009. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/thisvid.py +0 -0
  1010. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/threeqsdn.py +0 -0
  1011. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/threespeak.py +0 -0
  1012. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tiktok.py +0 -0
  1013. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tmz.py +0 -0
  1014. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tnaflix.py +0 -0
  1015. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/toggle.py +0 -0
  1016. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/toggo.py +0 -0
  1017. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tonline.py +0 -0
  1018. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/toongoggles.py +0 -0
  1019. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/toutiao.py +0 -0
  1020. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/toutv.py +0 -0
  1021. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/toypics.py +0 -0
  1022. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/traileraddict.py +0 -0
  1023. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/triller.py +0 -0
  1024. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/trovo.py +0 -0
  1025. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/trtcocuk.py +0 -0
  1026. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/trtworld.py +0 -0
  1027. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/trueid.py +0 -0
  1028. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/trunews.py +0 -0
  1029. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/truth.py +0 -0
  1030. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tube8.py +0 -0
  1031. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tubitv.py +0 -0
  1032. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tumblr.py +0 -0
  1033. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tunein.py +0 -0
  1034. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/turner.py +0 -0
  1035. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tv2.py +0 -0
  1036. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tv24ua.py +0 -0
  1037. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tv2dk.py +0 -0
  1038. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tv2hu.py +0 -0
  1039. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tv4.py +0 -0
  1040. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tv5mondeplus.py +0 -0
  1041. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tv5unis.py +0 -0
  1042. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tva.py +0 -0
  1043. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tvanouvelles.py +0 -0
  1044. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tvc.py +0 -0
  1045. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tver.py +0 -0
  1046. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tvigle.py +0 -0
  1047. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tviplayer.py +0 -0
  1048. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tvn24.py +0 -0
  1049. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tvnoe.py +0 -0
  1050. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tvopengr.py +0 -0
  1051. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tvp.py +0 -0
  1052. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tvplay.py +0 -0
  1053. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tvplayer.py +0 -0
  1054. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tvw.py +0 -0
  1055. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/tweakers.py +0 -0
  1056. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/twentymin.py +0 -0
  1057. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/twentythreevideo.py +0 -0
  1058. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/twitcasting.py +0 -0
  1059. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/twitter.py +0 -0
  1060. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/txxx.py +0 -0
  1061. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/udemy.py +0 -0
  1062. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/udn.py +0 -0
  1063. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ufctv.py +0 -0
  1064. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ukcolumn.py +0 -0
  1065. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/uktvplay.py +0 -0
  1066. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/uliza.py +0 -0
  1067. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/umg.py +0 -0
  1068. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/unistra.py +0 -0
  1069. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/unitednations.py +0 -0
  1070. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/unity.py +0 -0
  1071. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/unsupported.py +0 -0
  1072. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/uol.py +0 -0
  1073. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/uplynk.py +0 -0
  1074. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/urort.py +0 -0
  1075. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/urplay.py +0 -0
  1076. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/usanetwork.py +0 -0
  1077. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/usatoday.py +0 -0
  1078. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ustream.py +0 -0
  1079. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ustudio.py +0 -0
  1080. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/utreon.py +0 -0
  1081. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/varzesh3.py +0 -0
  1082. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vbox7.py +0 -0
  1083. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/veo.py +0 -0
  1084. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vevo.py +0 -0
  1085. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vgtv.py +0 -0
  1086. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vh1.py +0 -0
  1087. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vice.py +0 -0
  1088. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/viddler.py +0 -0
  1089. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/videa.py +0 -0
  1090. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/videocampus_sachsen.py +0 -0
  1091. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/videodetective.py +0 -0
  1092. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/videofyme.py +0 -0
  1093. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/videoken.py +0 -0
  1094. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/videomore.py +0 -0
  1095. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/videopress.py +0 -0
  1096. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vidflex.py +0 -0
  1097. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vidio.py +0 -0
  1098. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vidlii.py +0 -0
  1099. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vidly.py +0 -0
  1100. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vidyard.py +0 -0
  1101. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/viewlift.py +0 -0
  1102. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/viidea.py +0 -0
  1103. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vimeo.py +0 -0
  1104. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vimm.py +0 -0
  1105. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/viously.py +0 -0
  1106. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/viqeo.py +0 -0
  1107. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/viu.py +0 -0
  1108. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vk.py +0 -0
  1109. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vocaroo.py +0 -0
  1110. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vodpl.py +0 -0
  1111. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vodplatform.py +0 -0
  1112. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/voicy.py +0 -0
  1113. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/volejtv.py +0 -0
  1114. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/voxmedia.py +0 -0
  1115. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vrsquare.py +0 -0
  1116. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vrt.py +0 -0
  1117. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vtm.py +0 -0
  1118. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vtv.py +0 -0
  1119. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vuclip.py +0 -0
  1120. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/vvvvid.py +0 -0
  1121. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/walla.py +0 -0
  1122. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/washingtonpost.py +0 -0
  1123. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/wat.py +0 -0
  1124. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/wdr.py +0 -0
  1125. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/webcamerapl.py +0 -0
  1126. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/webcaster.py +0 -0
  1127. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/webofstories.py +0 -0
  1128. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/weibo.py +0 -0
  1129. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/weiqitv.py +0 -0
  1130. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/weverse.py +0 -0
  1131. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/wevidi.py +0 -0
  1132. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/weyyak.py +0 -0
  1133. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/whowatch.py +0 -0
  1134. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/whyp.py +0 -0
  1135. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/wikimedia.py +0 -0
  1136. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/wimbledon.py +0 -0
  1137. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/wimtv.py +0 -0
  1138. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/wistia.py +0 -0
  1139. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/wordpress.py +0 -0
  1140. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/worldstarhiphop.py +0 -0
  1141. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/wppilot.py +0 -0
  1142. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/wrestleuniverse.py +0 -0
  1143. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/wsj.py +0 -0
  1144. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/wwe.py +0 -0
  1145. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/wykop.py +0 -0
  1146. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/xboxclips.py +0 -0
  1147. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/xhamster.py +0 -0
  1148. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/xiaohongshu.py +0 -0
  1149. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/ximalaya.py +0 -0
  1150. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/xinpianchang.py +0 -0
  1151. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/xminus.py +0 -0
  1152. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/xnxx.py +0 -0
  1153. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/xstream.py +0 -0
  1154. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/xvideos.py +0 -0
  1155. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/xxxymovies.py +0 -0
  1156. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/yahoo.py +0 -0
  1157. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/yandexdisk.py +0 -0
  1158. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/yandexmusic.py +0 -0
  1159. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/yandexvideo.py +0 -0
  1160. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/yapfiles.py +0 -0
  1161. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/yappy.py +0 -0
  1162. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/yle_areena.py +0 -0
  1163. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youjizz.py +0 -0
  1164. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youku.py +0 -0
  1165. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/younow.py +0 -0
  1166. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youporn.py +0 -0
  1167. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/__init__.py +0 -0
  1168. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/_base.py +0 -0
  1169. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/_clip.py +0 -0
  1170. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/_mistakes.py +0 -0
  1171. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/_notifications.py +0 -0
  1172. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/_redirect.py +0 -0
  1173. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/_search.py +0 -0
  1174. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/_tab.py +0 -0
  1175. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/_video.py +0 -0
  1176. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/jsc/README.md +0 -0
  1177. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/jsc/__init__.py +0 -0
  1178. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/jsc/_builtin/__init__.py +0 -0
  1179. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/jsc/_builtin/bun.py +0 -0
  1180. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/jsc/_builtin/deno.py +0 -0
  1181. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/jsc/_builtin/ejs.py +0 -0
  1182. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/jsc/_builtin/node.py +0 -0
  1183. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/jsc/_builtin/quickjs.py +0 -0
  1184. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/jsc/_builtin/vendor/__init__.py +0 -0
  1185. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/jsc/_builtin/vendor/_info.py +0 -0
  1186. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/jsc/_builtin/vendor/yt.solver.bun.lib.js +0 -0
  1187. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/jsc/_builtin/vendor/yt.solver.core.js +0 -0
  1188. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/jsc/_builtin/vendor/yt.solver.deno.lib.js +0 -0
  1189. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/jsc/_director.py +0 -0
  1190. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/jsc/_registry.py +0 -0
  1191. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/jsc/provider.py +0 -0
  1192. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/pot/README.md +0 -0
  1193. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/pot/__init__.py +0 -0
  1194. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/pot/_builtin/__init__.py +0 -0
  1195. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/pot/_builtin/memory_cache.py +0 -0
  1196. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/pot/_builtin/webpo_cachespec.py +0 -0
  1197. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/pot/_director.py +0 -0
  1198. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/pot/_provider.py +0 -0
  1199. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/pot/_registry.py +0 -0
  1200. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/pot/cache.py +0 -0
  1201. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/pot/provider.py +0 -0
  1202. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/youtube/pot/utils.py +0 -0
  1203. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/zaiko.py +0 -0
  1204. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/zapiks.py +0 -0
  1205. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/zattoo.py +0 -0
  1206. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/zdf.py +0 -0
  1207. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/zee5.py +0 -0
  1208. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/zeenews.py +0 -0
  1209. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/zenporn.py +0 -0
  1210. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/zetland.py +0 -0
  1211. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/zhihu.py +0 -0
  1212. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/zingmp3.py +0 -0
  1213. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/zoom.py +0 -0
  1214. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/extractor/zype.py +0 -0
  1215. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/globals.py +0 -0
  1216. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/jsinterp.py +0 -0
  1217. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/minicurses.py +0 -0
  1218. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/networking/__init__.py +0 -0
  1219. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/networking/_curlcffi.py +0 -0
  1220. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/networking/_helper.py +0 -0
  1221. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/networking/_requests.py +0 -0
  1222. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/networking/_urllib.py +0 -0
  1223. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/networking/_websockets.py +0 -0
  1224. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/networking/common.py +0 -0
  1225. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/networking/exceptions.py +0 -0
  1226. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/networking/impersonate.py +0 -0
  1227. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/networking/websocket.py +0 -0
  1228. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/plugins.py +0 -0
  1229. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/postprocessor/__init__.py +0 -0
  1230. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/postprocessor/common.py +0 -0
  1231. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/postprocessor/embedthumbnail.py +0 -0
  1232. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/postprocessor/exec.py +0 -0
  1233. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/postprocessor/ffmpeg.py +0 -0
  1234. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/postprocessor/metadataparser.py +0 -0
  1235. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/postprocessor/modify_chapters.py +0 -0
  1236. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/postprocessor/movefilesafterdownload.py +0 -0
  1237. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/postprocessor/sponsorblock.py +0 -0
  1238. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/postprocessor/xattrpp.py +0 -0
  1239. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/socks.py +0 -0
  1240. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/update.py +0 -0
  1241. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/utils/__init__.py +0 -0
  1242. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/utils/_deprecated.py +0 -0
  1243. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/utils/_legacy.py +0 -0
  1244. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/utils/_utils.py +0 -0
  1245. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/utils/jslib/__init__.py +0 -0
  1246. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/utils/jslib/devalue.py +0 -0
  1247. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/utils/networking.py +0 -0
  1248. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/utils/progress.py +0 -0
  1249. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/utils/traversal.py +0 -0
  1250. {yt_dlp-2025.11.8.232845.dev0 → yt_dlp-2025.11.11.5312.dev0}/yt_dlp/webvtt.py +0 -0
@@ -217,6 +217,7 @@ Christian Pointner
217
217
  Christoph Döpmann
218
218
  Christoph Flathmann
219
219
  Christoph Moench-Tegeder
220
+ Christopher Albert
220
221
  Christopher Krooss
221
222
  Christopher Neugebauer
222
223
  Christopher Schreiner
@@ -355,6 +356,7 @@ Eze Livinsky
355
356
  FND
356
357
  Fabi019
357
358
  Fabian Stahl
359
+ Fahim
358
360
  Fai
359
361
  Fam0r
360
362
  Felix S
@@ -839,6 +841,7 @@ Philipp Hagemeister
839
841
  Philipp Stehle
840
842
  Philipp Waldhauer
841
843
  Phạm Ngọc Quang Nam
844
+ Pierce Brooks
842
845
  Pierre
843
846
  Pierre Fenoll
844
847
  Pierre Mdawar
@@ -1233,6 +1236,7 @@ dwemthy
1233
1236
  dyn888
1234
1237
  e2dk4r
1235
1238
  ealgase
1239
+ eientei95
1236
1240
  einstein95
1237
1241
  ekangmonyet
1238
1242
  enigmaquip
@@ -1385,6 +1389,7 @@ marieell
1385
1389
  mars67857
1386
1390
  martin54
1387
1391
  masta79
1392
+ matyb08
1388
1393
  mc2avr
1389
1394
  mcd1992
1390
1395
  megapro17
@@ -1460,6 +1465,7 @@ patrickslin
1460
1465
  permunkle
1461
1466
  peugeot
1462
1467
  pgaig
1468
+ pha1n0q
1463
1469
  phaer
1464
1470
  phan-ctrl
1465
1471
  phi
@@ -4,23 +4,32 @@
4
4
  # To create a release, dispatch the https://github.com/yt-dlp/yt-dlp/actions/workflows/release.yml workflow on master
5
5
  -->
6
6
 
7
- ### 2025.11.08.232845
7
+ ### 2025.11.11.005312
8
8
 
9
9
  #### Core changes
10
+ - **cookies**: [Allow `--cookies-from-browser` for Safari on iOS](https://github.com/yt-dlp/yt-dlp/commit/e6414d64e73d86d65bb357e5ad59d0ca080d5812) ([#14950](https://github.com/yt-dlp/yt-dlp/issues/14950)) by [pha1n0q](https://github.com/pha1n0q)
10
11
  - **sponsorblock**: [Add `hook` category](https://github.com/yt-dlp/yt-dlp/commit/52f3c56e83bbb25eec2496b0499768753732a093) ([#14845](https://github.com/yt-dlp/yt-dlp/issues/14845)) by [seproDev](https://github.com/seproDev)
11
12
  - **update**: [Fix PyInstaller onedir variant detection](https://github.com/yt-dlp/yt-dlp/commit/1c2ad94353d1c9e03615d20b6bbfc293286c7a32) ([#14800](https://github.com/yt-dlp/yt-dlp/issues/14800)) by [bashonly](https://github.com/bashonly)
12
13
 
13
14
  #### Extractor changes
15
+ - **1tv**: live: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/19c5d7c53013440ec4f3f56ebbb067531b272f3f) ([#14299](https://github.com/yt-dlp/yt-dlp/issues/14299)) by [swayll](https://github.com/swayll)
14
16
  - **ardaudiothek**: [Add extractors](https://github.com/yt-dlp/yt-dlp/commit/0046fbcbfceee32fa2f68a8ea00cca02765470b6) ([#14309](https://github.com/yt-dlp/yt-dlp/issues/14309)) by [evilpie](https://github.com/evilpie), [marieell](https://github.com/marieell)
15
- - **discoverynetworksde**: [Fix extraction](https://github.com/yt-dlp/yt-dlp/commit/10dea209d2460daf924c93835ddc2f0301cf2cd4) ([#14818](https://github.com/yt-dlp/yt-dlp/issues/14818)) by [dirkf](https://github.com/dirkf), [w4grfw](https://github.com/w4grfw)
17
+ - **bunnycdn**
18
+ - [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/228ae9f0f2b441fa1296db2ed2b7afbd4a9a62a1) ([#14954](https://github.com/yt-dlp/yt-dlp/issues/14954)) by [seproDev](https://github.com/seproDev)
19
+ - [Support player subdomain URLs](https://github.com/yt-dlp/yt-dlp/commit/3ef867451cd9604b4195dfee00db768619629b2d) ([#14979](https://github.com/yt-dlp/yt-dlp/issues/14979)) by [einstein95](https://github.com/einstein95)
20
+ - **discoverynetworksde**: [Fix extraction](https://github.com/yt-dlp/yt-dlp/commit/10dea209d2460daf924c93835ddc2f0301cf2cd4) ([#14818](https://github.com/yt-dlp/yt-dlp/issues/14818)) by [dirkf](https://github.com/dirkf), [w4grfw](https://github.com/w4grfw) (With fixes in [f3c255b](https://github.com/yt-dlp/yt-dlp/commit/f3c255b63bd26069151fc3d3ba6dc626bb62ad6e) by [bashonly](https://github.com/bashonly))
21
+ - **floatplane**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/1ac7e6005cd3be9fff0b28be189c3a68ecd4c593) ([#14984](https://github.com/yt-dlp/yt-dlp/issues/14984)) by [i3p9](https://github.com/i3p9)
16
22
  - **googledrive**
17
23
  - [Fix subtitles extraction](https://github.com/yt-dlp/yt-dlp/commit/6d05cee4df30774ddce5c5c751fd2118f40c24fe) ([#14809](https://github.com/yt-dlp/yt-dlp/issues/14809)) by [seproDev](https://github.com/seproDev)
18
24
  - [Rework extractor](https://github.com/yt-dlp/yt-dlp/commit/70f1098312fe53bc85358f7bd624370878b2fa28) ([#14746](https://github.com/yt-dlp/yt-dlp/issues/14746)) by [seproDev](https://github.com/seproDev)
19
25
  - **kika**: [Do not extract non-existent subtitles](https://github.com/yt-dlp/yt-dlp/commit/79f9232ffbd57dde91c372b673b42801edaa9e53) ([#14813](https://github.com/yt-dlp/yt-dlp/issues/14813)) by [InvalidUsernameException](https://github.com/InvalidUsernameException)
26
+ - **mux**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/a0bda3b78609593ce1127215fc035c1a308a89b6) ([#14914](https://github.com/yt-dlp/yt-dlp/issues/14914)) by [PierceLBrooks](https://github.com/PierceLBrooks), [seproDev](https://github.com/seproDev)
20
27
  - **nascarclassics**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/e8a6b1ca92f2a0ce2c187668165be23dc5506aab) ([#14866](https://github.com/yt-dlp/yt-dlp/issues/14866)) by [JrM2628](https://github.com/JrM2628)
21
28
  - **nbc**: [Detect and discard DRM formats](https://github.com/yt-dlp/yt-dlp/commit/ee3a106f34124f0e2d28f062f5302863fd7639be) ([#14844](https://github.com/yt-dlp/yt-dlp/issues/14844)) by [bashonly](https://github.com/bashonly)
22
29
  - **ntv.ru**: [Rework extractor](https://github.com/yt-dlp/yt-dlp/commit/5dde0d0c9fcef2ce57e486b2e563e0dff9b2845a) ([#14934](https://github.com/yt-dlp/yt-dlp/issues/14934)) by [anlar](https://github.com/anlar), [seproDev](https://github.com/seproDev) (With fixes in [a86eeaa](https://github.com/yt-dlp/yt-dlp/commit/a86eeaadf236ceaf6bb232eb410cf21572538aa6) by [seproDev](https://github.com/seproDev))
23
30
  - **play.tv**: [Update extractor for new domain](https://github.com/yt-dlp/yt-dlp/commit/73fd850d170e01c47c31aaa6aa8fe90856d9ad18) ([#14905](https://github.com/yt-dlp/yt-dlp/issues/14905)) by [thomasmllt](https://github.com/thomasmllt)
31
+ - **tubetugraz**: [Support alternate URL format](https://github.com/yt-dlp/yt-dlp/commit/f3597cfafcab4d7d4c6d41bff3647681301f1e6b) ([#14718](https://github.com/yt-dlp/yt-dlp/issues/14718)) by [krystophny](https://github.com/krystophny)
32
+ - **twitch**: stream: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/7eff676183518175ce495ae63291c89f9b39f02a) ([#14988](https://github.com/yt-dlp/yt-dlp/issues/14988)) by [seproDev](https://github.com/seproDev)
24
33
  - **urplay**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/808b1fed76fbd07840cc23a346c11334e3d34f43) ([#14785](https://github.com/yt-dlp/yt-dlp/issues/14785)) by [seproDev](https://github.com/seproDev)
25
34
  - **web.archive**: youtube: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/d9e3011fd1c3a75871a50e78533afe78ad427ce3) ([#14753](https://github.com/yt-dlp/yt-dlp/issues/14753)) by [seproDev](https://github.com/seproDev)
26
35
  - **xhamster**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/a1d6351c3fc82c07fa0ee70811ed84807f6bbb58) ([#14948](https://github.com/yt-dlp/yt-dlp/issues/14948)) by [CaramelConnoisseur](https://github.com/CaramelConnoisseur), [dhwz](https://github.com/dhwz)
@@ -29,7 +38,7 @@
29
38
  - [Fix `web_embedded` client extraction](https://github.com/yt-dlp/yt-dlp/commit/d6ee67725397807bbb5edcd0b2c94f5bca62d3f4) ([#14843](https://github.com/yt-dlp/yt-dlp/issues/14843)) by [bashonly](https://github.com/bashonly), [seproDev](https://github.com/seproDev)
30
39
  - [Fix auto-generated metadata extraction](https://github.com/yt-dlp/yt-dlp/commit/a56217f9f6c594f6c419ce8dce9134198a9d90d0) ([#13896](https://github.com/yt-dlp/yt-dlp/issues/13896)) by [TheQWERTYCodr](https://github.com/TheQWERTYCodr)
31
40
  - [Fix original language detection](https://github.com/yt-dlp/yt-dlp/commit/afc44022d0b736b2b3e87b52490bd35c53c53632) ([#14919](https://github.com/yt-dlp/yt-dlp/issues/14919)) by [bashonly](https://github.com/bashonly)
32
- - [Implement external n/sig solver](https://github.com/yt-dlp/yt-dlp/commit/6224a3898821965a7d6a2cb9cc2de40a0fd6e6bc) ([#14157](https://github.com/yt-dlp/yt-dlp/issues/14157)) by [bashonly](https://github.com/bashonly), [coletdjnz](https://github.com/coletdjnz), [Grub4K](https://github.com/Grub4K), [seproDev](https://github.com/seproDev) (With fixes in [ee98be4](https://github.com/yt-dlp/yt-dlp/commit/ee98be4ad767b77e4d8dd9bfd3c7d10f2e8397ff), [c0c9f30](https://github.com/yt-dlp/yt-dlp/commit/c0c9f30695db314df084e8701a7c376eb54f283c), [cacd163](https://github.com/yt-dlp/yt-dlp/commit/cacd1630a1a59e92f857d0d175c8730cffbf9801) by [bashonly](https://github.com/bashonly), [coletdjnz](https://github.com/coletdjnz), [seproDev](https://github.com/seproDev))
41
+ - [Implement external n/sig solver](https://github.com/yt-dlp/yt-dlp/commit/6224a3898821965a7d6a2cb9cc2de40a0fd6e6bc) ([#14157](https://github.com/yt-dlp/yt-dlp/issues/14157)) by [bashonly](https://github.com/bashonly), [coletdjnz](https://github.com/coletdjnz), [Grub4K](https://github.com/Grub4K), [seproDev](https://github.com/seproDev) (With fixes in [4b4223b](https://github.com/yt-dlp/yt-dlp/commit/4b4223b436fb03a12628679daed32ae4fc15ae4b), [ee98be4](https://github.com/yt-dlp/yt-dlp/commit/ee98be4ad767b77e4d8dd9bfd3c7d10f2e8397ff), [c0c9f30](https://github.com/yt-dlp/yt-dlp/commit/c0c9f30695db314df084e8701a7c376eb54f283c), [cacd163](https://github.com/yt-dlp/yt-dlp/commit/cacd1630a1a59e92f857d0d175c8730cffbf9801) by [bashonly](https://github.com/bashonly), [coletdjnz](https://github.com/coletdjnz), [seproDev](https://github.com/seproDev))
33
42
  - [Support collaborators](https://github.com/yt-dlp/yt-dlp/commit/f87cfadb5c3cba8e9dc4231c9554548e9edb3882) ([#14677](https://github.com/yt-dlp/yt-dlp/issues/14677)) by [seproDev](https://github.com/seproDev)
34
43
  - [Update ejs to 0.3.1](https://github.com/yt-dlp/yt-dlp/commit/8636a9bac3bed99984c1e297453660468ecf504b) ([#14933](https://github.com/yt-dlp/yt-dlp/issues/14933)) by [Grub4K](https://github.com/Grub4K)
35
44
  - tab: [Fix duration extraction for feeds](https://github.com/yt-dlp/yt-dlp/commit/1d2f0edaf978a5541cfb8f7e83fec433c65c1011) ([#14668](https://github.com/yt-dlp/yt-dlp/issues/14668)) by [WeidiDeng](https://github.com/WeidiDeng)
@@ -43,7 +52,11 @@
43
52
  - [Ensure underlying file object is closed when fully read](https://github.com/yt-dlp/yt-dlp/commit/5767fb4ab108dddb07fc839a3b0f4d323a7c4bea) ([#14935](https://github.com/yt-dlp/yt-dlp/issues/14935)) by [coletdjnz](https://github.com/coletdjnz)
44
53
 
45
54
  #### Misc. changes
55
+ - [Fix zsh path argument completion](https://github.com/yt-dlp/yt-dlp/commit/c96e9291ab7bd6e7da66d33424982c8b0b4431c7) ([#14953](https://github.com/yt-dlp/yt-dlp/issues/14953)) by [matyb08](https://github.com/matyb08)
56
+ - **build**: [Bump musllinux Python version to 3.14](https://github.com/yt-dlp/yt-dlp/commit/646904cd3a79429ec5fdc43f904b3f57ae213f34) ([#14623](https://github.com/yt-dlp/yt-dlp/issues/14623)) by [bashonly](https://github.com/bashonly)
57
+ - **cleanup**: Miscellaneous: [c63b4e2](https://github.com/yt-dlp/yt-dlp/commit/c63b4e2a2b81cc78397c8709ef53ffd29bada213) by [bashonly](https://github.com/bashonly), [matyb08](https://github.com/matyb08), [sepro](https://github.com/sepro)
46
58
  - **devscripts**: [Improve `install_deps` script](https://github.com/yt-dlp/yt-dlp/commit/73922e66e437fb4bb618bdc119a96375081bf508) ([#14766](https://github.com/yt-dlp/yt-dlp/issues/14766)) by [bashonly](https://github.com/bashonly)
59
+ - **test**: [Skip flaky tests if source unchanged](https://github.com/yt-dlp/yt-dlp/commit/ade8c2b36ff300edef87d48fd1ba835ac35c5b63) ([#14970](https://github.com/yt-dlp/yt-dlp/issues/14970)) by [bashonly](https://github.com/bashonly), [Grub4K](https://github.com/Grub4K)
47
60
 
48
61
  ### 2025.10.22
49
62
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: yt-dlp
3
- Version: 2025.11.8.232845.dev0
3
+ Version: 2025.11.11.5312.dev0
4
4
  Summary: A feature-rich command-line audio/video downloader
5
5
  Project-URL: Documentation, https://github.com/yt-dlp/yt-dlp#readme
6
6
  Project-URL: Repository, https://github.com/yt-dlp/yt-dlp
@@ -429,7 +429,7 @@ Tip: Use `CTRL`+`F` (or `Command`+`F`) to search by keywords
429
429
  containing directory ("-" for stdin). Can be
430
430
  used multiple times and inside other
431
431
  configuration files
432
- --plugin-dirs PATH Path to an additional directory to search
432
+ --plugin-dirs DIR Path to an additional directory to search
433
433
  for plugins. This option can be used
434
434
  multiple times to add multiple directories.
435
435
  Use "default" to search the default plugin
@@ -438,22 +438,33 @@ Tip: Use `CTRL`+`F` (or `Command`+`F`) to search by keywords
438
438
  including defaults and those provided by
439
439
  previous --plugin-dirs
440
440
  --js-runtimes RUNTIME[:PATH] Additional JavaScript runtime to enable,
441
- with an optional path to the runtime
442
- location. This option can be used multiple
443
- times to enable multiple runtimes. Supported
444
- runtimes: deno, node, bun, quickjs. By
445
- default, only "deno" runtime is enabled.
441
+ with an optional location for the runtime
442
+ (either the path to the binary or its
443
+ containing directory). This option can be
444
+ used multiple times to enable multiple
445
+ runtimes. Supported runtimes are (in order
446
+ of priority, from highest to lowest): deno,
447
+ node, quickjs, bun. Only "deno" is enabled
448
+ by default. The highest priority runtime
449
+ that is both enabled and available will be
450
+ used. In order to use a lower priority
451
+ runtime when "deno" is available, --no-js-
452
+ runtimes needs to be passed before enabling
453
+ other runtimes
446
454
  --no-js-runtimes Clear JavaScript runtimes to enable,
447
455
  including defaults and those provided by
448
456
  previous --js-runtimes
449
457
  --remote-components COMPONENT Remote components to allow yt-dlp to fetch
450
- when required. You can use this option
451
- multiple times to allow multiple components.
452
- Supported values: ejs:npm (external
453
- JavaScript components from npm), ejs:github
454
- (external JavaScript components from yt-dlp-
455
- ejs GitHub). By default, no remote
456
- components are allowed.
458
+ when required. This option is currently not
459
+ needed if you are using an official
460
+ executable or have the requisite version of
461
+ the yt-dlp-ejs package installed. You can
462
+ use this option multiple times to allow
463
+ multiple components. Supported values:
464
+ ejs:npm (external JavaScript components from
465
+ npm), ejs:github (external JavaScript
466
+ components from yt-dlp-ejs GitHub). By
467
+ default, no remote components are allowed
457
468
  --no-remote-components Disallow fetching of all remote components,
458
469
  including any previously allowed by
459
470
  --remote-components or defaults.
@@ -1244,7 +1255,7 @@ Predefined aliases for convenience and ease of use. Note that future
1244
1255
  You can configure yt-dlp by placing any supported command line option in a configuration file. The configuration is loaded from the following locations:
1245
1256
 
1246
1257
  1. **Main Configuration**:
1247
- * The file given to `--config-location`
1258
+ * The file given to `--config-locations`
1248
1259
  1. **Portable Configuration**: (Recommended for portable installations)
1249
1260
  * If using a binary, `yt-dlp.conf` in the same directory as the binary
1250
1261
  * If running from source-code, `yt-dlp.conf` in the parent directory of `yt_dlp`
@@ -1326,7 +1337,7 @@ yt-dlp --netrc-cmd 'gpg --decrypt ~/.authinfo.gpg' 'https://www.youtube.com/watc
1326
1337
 
1327
1338
  ### Notes about environment variables
1328
1339
  * Environment variables are normally specified as `${VARIABLE}`/`$VARIABLE` on UNIX and `%VARIABLE%` on Windows; but is always shown as `${VARIABLE}` in this documentation
1329
- * yt-dlp also allows using UNIX-style variables on Windows for path-like options; e.g. `--output`, `--config-location`
1340
+ * yt-dlp also allows using UNIX-style variables on Windows for path-like options; e.g. `--output`, `--config-locations`
1330
1341
  * If unset, `${XDG_CONFIG_HOME}` defaults to `~/.config` and `${XDG_CACHE_HOME}` to `~/.cache`
1331
1342
  * On Windows, `~` points to `${HOME}` if present; or, `${USERPROFILE}` or `${HOMEDRIVE}${HOMEPATH}` otherwise
1332
1343
  * On Windows, `${USERPROFILE}` generally points to `C:\Users\<user name>` and `${APPDATA}` to `${USERPROFILE}\AppData\Roaming`
@@ -364,7 +364,7 @@ Tip: Use `CTRL`+`F` (or `Command`+`F`) to search by keywords
364
364
  containing directory ("-" for stdin). Can be
365
365
  used multiple times and inside other
366
366
  configuration files
367
- --plugin-dirs PATH Path to an additional directory to search
367
+ --plugin-dirs DIR Path to an additional directory to search
368
368
  for plugins. This option can be used
369
369
  multiple times to add multiple directories.
370
370
  Use "default" to search the default plugin
@@ -373,22 +373,33 @@ Tip: Use `CTRL`+`F` (or `Command`+`F`) to search by keywords
373
373
  including defaults and those provided by
374
374
  previous --plugin-dirs
375
375
  --js-runtimes RUNTIME[:PATH] Additional JavaScript runtime to enable,
376
- with an optional path to the runtime
377
- location. This option can be used multiple
378
- times to enable multiple runtimes. Supported
379
- runtimes: deno, node, bun, quickjs. By
380
- default, only "deno" runtime is enabled.
376
+ with an optional location for the runtime
377
+ (either the path to the binary or its
378
+ containing directory). This option can be
379
+ used multiple times to enable multiple
380
+ runtimes. Supported runtimes are (in order
381
+ of priority, from highest to lowest): deno,
382
+ node, quickjs, bun. Only "deno" is enabled
383
+ by default. The highest priority runtime
384
+ that is both enabled and available will be
385
+ used. In order to use a lower priority
386
+ runtime when "deno" is available, --no-js-
387
+ runtimes needs to be passed before enabling
388
+ other runtimes
381
389
  --no-js-runtimes Clear JavaScript runtimes to enable,
382
390
  including defaults and those provided by
383
391
  previous --js-runtimes
384
392
  --remote-components COMPONENT Remote components to allow yt-dlp to fetch
385
- when required. You can use this option
386
- multiple times to allow multiple components.
387
- Supported values: ejs:npm (external
388
- JavaScript components from npm), ejs:github
389
- (external JavaScript components from yt-dlp-
390
- ejs GitHub). By default, no remote
391
- components are allowed.
393
+ when required. This option is currently not
394
+ needed if you are using an official
395
+ executable or have the requisite version of
396
+ the yt-dlp-ejs package installed. You can
397
+ use this option multiple times to allow
398
+ multiple components. Supported values:
399
+ ejs:npm (external JavaScript components from
400
+ npm), ejs:github (external JavaScript
401
+ components from yt-dlp-ejs GitHub). By
402
+ default, no remote components are allowed
392
403
  --no-remote-components Disallow fetching of all remote components,
393
404
  including any previously allowed by
394
405
  --remote-components or defaults.
@@ -1179,7 +1190,7 @@ Predefined aliases for convenience and ease of use. Note that future
1179
1190
  You can configure yt-dlp by placing any supported command line option in a configuration file. The configuration is loaded from the following locations:
1180
1191
 
1181
1192
  1. **Main Configuration**:
1182
- * The file given to `--config-location`
1193
+ * The file given to `--config-locations`
1183
1194
  1. **Portable Configuration**: (Recommended for portable installations)
1184
1195
  * If using a binary, `yt-dlp.conf` in the same directory as the binary
1185
1196
  * If running from source-code, `yt-dlp.conf` in the parent directory of `yt_dlp`
@@ -1261,7 +1272,7 @@ yt-dlp --netrc-cmd 'gpg --decrypt ~/.authinfo.gpg' 'https://www.youtube.com/watc
1261
1272
 
1262
1273
  ### Notes about environment variables
1263
1274
  * Environment variables are normally specified as `${VARIABLE}`/`$VARIABLE` on UNIX and `%VARIABLE%` on Windows; but is always shown as `${VARIABLE}` in this documentation
1264
- * yt-dlp also allows using UNIX-style variables on Windows for path-like options; e.g. `--output`, `--config-location`
1275
+ * yt-dlp also allows using UNIX-style variables on Windows for path-like options; e.g. `--output`, `--config-locations`
1265
1276
  * If unset, `${XDG_CONFIG_HOME}` defaults to `~/.config` and `${XDG_CACHE_HOME}` to `~/.cache`
1266
1277
  * On Windows, `~` points to `${HOME}` if present; or, `${USERPROFILE}` or `${HOMEDRIVE}${HOMEPATH}` otherwise
1267
1278
  * On Windows, `${USERPROFILE}` generally points to `C:\Users\<user name>` and `${APPDATA}` to `${USERPROFILE}\AppData\Roaming`
@@ -454,7 +454,7 @@ General Options:
454
454
  containing directory ("-" for stdin). Can be
455
455
  used multiple times and inside other
456
456
  configuration files
457
- --plugin-dirs PATH Path to an additional directory to search
457
+ --plugin-dirs DIR Path to an additional directory to search
458
458
  for plugins. This option can be used
459
459
  multiple times to add multiple directories.
460
460
  Use "default" to search the default plugin
@@ -463,22 +463,33 @@ General Options:
463
463
  including defaults and those provided by
464
464
  previous --plugin-dirs
465
465
  --js-runtimes RUNTIME[:PATH] Additional JavaScript runtime to enable,
466
- with an optional path to the runtime
467
- location. This option can be used multiple
468
- times to enable multiple runtimes. Supported
469
- runtimes: deno, node, bun, quickjs. By
470
- default, only "deno" runtime is enabled.
466
+ with an optional location for the runtime
467
+ (either the path to the binary or its
468
+ containing directory). This option can be
469
+ used multiple times to enable multiple
470
+ runtimes. Supported runtimes are (in order
471
+ of priority, from highest to lowest): deno,
472
+ node, quickjs, bun. Only "deno" is enabled
473
+ by default. The highest priority runtime
474
+ that is both enabled and available will be
475
+ used. In order to use a lower priority
476
+ runtime when "deno" is available, --no-js-
477
+ runtimes needs to be passed before enabling
478
+ other runtimes
471
479
  --no-js-runtimes Clear JavaScript runtimes to enable,
472
480
  including defaults and those provided by
473
481
  previous --js-runtimes
474
482
  --remote-components COMPONENT Remote components to allow yt-dlp to fetch
475
- when required. You can use this option
476
- multiple times to allow multiple components.
477
- Supported values: ejs:npm (external
478
- JavaScript components from npm), ejs:github
479
- (external JavaScript components from yt-dlp-
480
- ejs GitHub). By default, no remote
481
- components are allowed.
483
+ when required. This option is currently not
484
+ needed if you are using an official
485
+ executable or have the requisite version of
486
+ the yt-dlp-ejs package installed. You can
487
+ use this option multiple times to allow
488
+ multiple components. Supported values:
489
+ ejs:npm (external JavaScript components from
490
+ npm), ejs:github (external JavaScript
491
+ components from yt-dlp-ejs GitHub). By
492
+ default, no remote components are allowed
482
493
  --no-remote-components Disallow fetching of all remote components,
483
494
  including any previously allowed by
484
495
  --remote-components or defaults.
@@ -1287,7 +1298,7 @@ a configuration file. The configuration is loaded from the following
1287
1298
  locations:
1288
1299
 
1289
1300
  1. Main Configuration:
1290
- - The file given to --config-location
1301
+ - The file given to --config-locations
1291
1302
  2. Portable Configuration: (Recommended for portable installations)
1292
1303
  - If using a binary, yt-dlp.conf in the same directory as the
1293
1304
  binary
@@ -1402,7 +1413,7 @@ Notes about environment variables
1402
1413
  ${VARIABLE}/$VARIABLE on UNIX and %VARIABLE% on Windows; but is
1403
1414
  always shown as ${VARIABLE} in this documentation
1404
1415
  - yt-dlp also allows using UNIX-style variables on Windows for
1405
- path-like options; e.g. --output, --config-location
1416
+ path-like options; e.g. --output, --config-locations
1406
1417
  - If unset, ${XDG_CONFIG_HOME} defaults to ~/.config and
1407
1418
  ${XDG_CACHE_HOME} to ~/.cache
1408
1419
  - On Windows, ~ points to ${HOME} if present; or, ${USERPROFILE} or
@@ -17,9 +17,9 @@ complete --command yt-dlp --long-option no-config-locations --description 'Do no
17
17
  complete --command yt-dlp --long-option config-locations --description 'Location of the main configuration file; either the path to the config or its containing directory ("-" for stdin). Can be used multiple times and inside other configuration files'
18
18
  complete --command yt-dlp --long-option plugin-dirs --description 'Path to an additional directory to search for plugins. This option can be used multiple times to add multiple directories. Use "default" to search the default plugin directories (default)'
19
19
  complete --command yt-dlp --long-option no-plugin-dirs --description 'Clear plugin directories to search, including defaults and those provided by previous --plugin-dirs'
20
- complete --command yt-dlp --long-option js-runtimes --description 'Additional JavaScript runtime to enable, with an optional path to the runtime location. This option can be used multiple times to enable multiple runtimes. Supported runtimes: deno, node, bun, quickjs. By default, only "deno" runtime is enabled.'
20
+ complete --command yt-dlp --long-option js-runtimes --description 'Additional JavaScript runtime to enable, with an optional location for the runtime (either the path to the binary or its containing directory). This option can be used multiple times to enable multiple runtimes. Supported runtimes are (in order of priority, from highest to lowest): deno, node, quickjs, bun. Only "deno" is enabled by default. The highest priority runtime that is both enabled and available will be used. In order to use a lower priority runtime when "deno" is available, --no-js-runtimes needs to be passed before enabling other runtimes'
21
21
  complete --command yt-dlp --long-option no-js-runtimes --description 'Clear JavaScript runtimes to enable, including defaults and those provided by previous --js-runtimes'
22
- complete --command yt-dlp --long-option remote-components --description 'Remote components to allow yt-dlp to fetch when required. You can use this option multiple times to allow multiple components. Supported values: ejs:npm (external JavaScript components from npm), ejs:github (external JavaScript components from yt-dlp-ejs GitHub). By default, no remote components are allowed.'
22
+ complete --command yt-dlp --long-option remote-components --description 'Remote components to allow yt-dlp to fetch when required. This option is currently not needed if you are using an official executable or have the requisite version of the yt-dlp-ejs package installed. You can use this option multiple times to allow multiple components. Supported values: ejs:npm (external JavaScript components from npm), ejs:github (external JavaScript components from yt-dlp-ejs GitHub). By default, no remote components are allowed'
23
23
  complete --command yt-dlp --long-option no-remote-components --description 'Disallow fetching of all remote components, including any previously allowed by --remote-components or defaults.'
24
24
  complete --command yt-dlp --long-option flat-playlist --description 'Do not extract a playlist'"'"'s URL result entries; some entry metadata may be missing and downloading may be bypassed'
25
25
  complete --command yt-dlp --long-option no-flat-playlist --description 'Fully extract the videos of a playlist (default)'
@@ -3,8 +3,8 @@
3
3
  __yt_dlp() {
4
4
  local curcontext="$curcontext" fileopts diropts cur prev
5
5
  typeset -A opt_args
6
- fileopts="--download-archive|-a|--batch-file|--load-info-json|--cookies|--no-cookies"
7
- diropts="--cache-dir"
6
+ fileopts="--download-archive|-a|--batch-file|--load-info-json|--cookies|--no-cookies|--config-locations|--netrc-location|--ffmpeg-location"
7
+ diropts="--plugin-dirs|--cache-dir"
8
8
  cur=$words[CURRENT]
9
9
  case $cur in
10
10
  :)
@@ -17,6 +17,18 @@ def parse_args():
17
17
  parser = argparse.ArgumentParser(description='Run selected yt-dlp tests')
18
18
  parser.add_argument(
19
19
  'test', help='an extractor test, test path, or one of "core" or "download"', nargs='*')
20
+ parser.add_argument(
21
+ '--flaky',
22
+ action='store_true',
23
+ default=None,
24
+ help='Allow running flaky tests. (default: run, unless in CI)',
25
+ )
26
+ parser.add_argument(
27
+ '--no-flaky',
28
+ action='store_false',
29
+ dest='flaky',
30
+ help=argparse.SUPPRESS,
31
+ )
20
32
  parser.add_argument(
21
33
  '-k', help='run a test matching EXPRESSION. Same as "pytest -k"', metavar='EXPRESSION')
22
34
  parser.add_argument(
@@ -24,10 +36,11 @@ def parse_args():
24
36
  return parser.parse_args()
25
37
 
26
38
 
27
- def run_tests(*tests, pattern=None, ci=False):
39
+ def run_tests(*tests, pattern=None, ci=False, flaky: bool | None = None):
28
40
  # XXX: hatch uses `tests` if no arguments are passed
29
41
  run_core = 'core' in tests or 'tests' in tests or (not pattern and not tests)
30
42
  run_download = 'download' in tests
43
+ run_flaky = flaky or (flaky is None and not ci)
31
44
 
32
45
  pytest_args = args.pytest_args or os.getenv('HATCH_TEST_ARGS', '')
33
46
  arguments = ['pytest', '-Werror', '--tb=short', *shlex.split(pytest_args)]
@@ -44,6 +57,8 @@ def run_tests(*tests, pattern=None, ci=False):
44
57
  test if '/' in test
45
58
  else f'test/test_download.py::TestDownload::test_{fix_test_name(test)}'
46
59
  for test in tests)
60
+ if not run_flaky:
61
+ arguments.append('--disallow-flaky')
47
62
 
48
63
  print(f'Running {arguments}', flush=True)
49
64
  try:
@@ -72,6 +87,11 @@ if __name__ == '__main__':
72
87
  args = parse_args()
73
88
 
74
89
  os.chdir(Path(__file__).parent.parent)
75
- sys.exit(run_tests(*args.test, pattern=args.k, ci=bool(os.getenv('CI'))))
90
+ sys.exit(run_tests(
91
+ *args.test,
92
+ pattern=args.k,
93
+ ci=bool(os.getenv('CI')),
94
+ flaky=args.flaky,
95
+ ))
76
96
  except KeyboardInterrupt:
77
97
  pass
@@ -66,7 +66,9 @@ def list_wheel_contents(
66
66
  ) -> str:
67
67
  assert folders or files, 'at least one of "folders" or "files" must be True'
68
68
 
69
- path_gen = (zinfo.filename for zinfo in zipfile.ZipFile(io.BytesIO(wheel_data)).infolist())
69
+ with zipfile.ZipFile(io.BytesIO(wheel_data)) as zipf:
70
+ path_gen = (zinfo.filename for zinfo in zipf.infolist())
71
+
70
72
  filtered = filter(lambda path: path.startswith('yt_dlp_ejs/'), path_gen)
71
73
  if suffix:
72
74
  filtered = filter(lambda path: path.endswith(f'.{suffix}'), filtered)
@@ -18,6 +18,7 @@ def build_completion(opt_parser):
18
18
  for opt in group.option_list]
19
19
  opts_file = [opt for opt in opts if opt.metavar == 'FILE']
20
20
  opts_dir = [opt for opt in opts if opt.metavar == 'DIR']
21
+ opts_path = [opt for opt in opts if opt.metavar == 'PATH']
21
22
 
22
23
  fileopts = []
23
24
  for opt in opts_file:
@@ -26,6 +27,12 @@ def build_completion(opt_parser):
26
27
  if opt._long_opts:
27
28
  fileopts.extend(opt._long_opts)
28
29
 
30
+ for opt in opts_path:
31
+ if opt._short_opts:
32
+ fileopts.extend(opt._short_opts)
33
+ if opt._long_opts:
34
+ fileopts.extend(opt._long_opts)
35
+
29
36
  diropts = []
30
37
  for opt in opts_dir:
31
38
  if opt._short_opts:
@@ -12,6 +12,7 @@ The only reliable way to check if a site is supported is to try it.
12
12
  - **17live:vod**
13
13
  - **1News**: 1news.co.nz article videos
14
14
  - **1tv**: Первый канал
15
+ - **1tv:live**: Первый канал (прямой эфир)
15
16
  - **20min**: (**Currently broken**)
16
17
  - **23video**
17
18
  - **247sports**: (**Currently broken**)
@@ -846,6 +847,7 @@ The only reliable way to check if a site is supported is to try it.
846
847
  - **MusicdexArtist**
847
848
  - **MusicdexPlaylist**
848
849
  - **MusicdexSong**
850
+ - **Mux**
849
851
  - **Mx3**
850
852
  - **Mx3Neo**
851
853
  - **Mx3Volksmusik**
@@ -52,6 +52,33 @@ def skip_handlers_if(request, handler):
52
52
  pytest.skip(marker.args[1] if len(marker.args) > 1 else '')
53
53
 
54
54
 
55
+ @pytest.fixture(autouse=True)
56
+ def handler_flaky(request, handler):
57
+ """Mark a certain handler as being flaky.
58
+
59
+ This will skip the test if pytest does not get run using `--allow-flaky`
60
+
61
+ usage:
62
+ pytest.mark.handler_flaky('my_handler', os.name != 'nt', reason='reason')
63
+ """
64
+ for marker in request.node.iter_markers(handler_flaky.__name__):
65
+ if (
66
+ marker.args[0] == handler.RH_KEY
67
+ and (not marker.args[1:] or any(marker.args[1:]))
68
+ and request.config.getoption('disallow_flaky')
69
+ ):
70
+ reason = marker.kwargs.get('reason')
71
+ pytest.skip(f'flaky: {reason}' if reason else 'flaky')
72
+
73
+
74
+ def pytest_addoption(parser, pluginmanager):
75
+ parser.addoption(
76
+ '--disallow-flaky',
77
+ action='store_true',
78
+ help='disallow flaky tests from running.',
79
+ )
80
+
81
+
55
82
  def pytest_configure(config):
56
83
  config.addinivalue_line(
57
84
  'markers', 'skip_handler(handler): skip test for the given handler',
@@ -62,3 +89,6 @@ def pytest_configure(config):
62
89
  config.addinivalue_line(
63
90
  'markers', 'skip_handlers_if(handler): skip test for handlers when the condition is true',
64
91
  )
92
+ config.addinivalue_line(
93
+ 'markers', 'handler_flaky(handler): mark handler as flaky if condition is true',
94
+ )
@@ -247,6 +247,7 @@ def ctx(request):
247
247
 
248
248
  @pytest.mark.parametrize(
249
249
  'handler', ['Urllib', 'Requests', 'CurlCFFI'], indirect=True)
250
+ @pytest.mark.handler_flaky('CurlCFFI', reason='segfaults')
250
251
  @pytest.mark.parametrize('ctx', ['http'], indirect=True) # pure http proxy can only support http
251
252
  class TestHTTPProxy:
252
253
  def test_http_no_auth(self, handler, ctx):
@@ -315,6 +316,7 @@ class TestHTTPProxy:
315
316
  ('Requests', 'https'),
316
317
  ('CurlCFFI', 'https'),
317
318
  ], indirect=True)
319
+ @pytest.mark.handler_flaky('CurlCFFI', reason='segfaults')
318
320
  class TestHTTPConnectProxy:
319
321
  def test_http_connect_no_auth(self, handler, ctx):
320
322
  with ctx.http_server(HTTPConnectProxyHandler) as server_address:
@@ -312,6 +312,7 @@ class TestRequestHandlerBase:
312
312
 
313
313
 
314
314
  @pytest.mark.parametrize('handler', ['Urllib', 'Requests', 'CurlCFFI'], indirect=True)
315
+ @pytest.mark.handler_flaky('CurlCFFI', os.name == 'nt', reason='segfaults')
315
316
  class TestHTTPRequestHandler(TestRequestHandlerBase):
316
317
 
317
318
  def test_verify_cert(self, handler):
@@ -756,6 +757,7 @@ class TestHTTPRequestHandler(TestRequestHandlerBase):
756
757
 
757
758
 
758
759
  @pytest.mark.parametrize('handler', ['Urllib', 'Requests', 'CurlCFFI'], indirect=True)
760
+ @pytest.mark.handler_flaky('CurlCFFI', reason='segfaults')
759
761
  class TestClientCertificate:
760
762
  @classmethod
761
763
  def setup_class(cls):
@@ -1060,6 +1062,7 @@ class TestRequestsRequestHandler(TestRequestHandlerBase):
1060
1062
 
1061
1063
 
1062
1064
  @pytest.mark.parametrize('handler', ['CurlCFFI'], indirect=True)
1065
+ @pytest.mark.handler_flaky('CurlCFFI', os.name == 'nt', reason='segfaults')
1063
1066
  class TestCurlCFFIRequestHandler(TestRequestHandlerBase):
1064
1067
 
1065
1068
  @pytest.mark.parametrize('params,extensions', [
@@ -295,6 +295,7 @@ def ctx(request):
295
295
  ('Websockets', 'ws'),
296
296
  ('CurlCFFI', 'http'),
297
297
  ], indirect=True)
298
+ @pytest.mark.handler_flaky('CurlCFFI', reason='segfaults')
298
299
  class TestSocks4Proxy:
299
300
  def test_socks4_no_auth(self, handler, ctx):
300
301
  with handler() as rh:
@@ -370,6 +371,7 @@ class TestSocks4Proxy:
370
371
  ('Websockets', 'ws'),
371
372
  ('CurlCFFI', 'http'),
372
373
  ], indirect=True)
374
+ @pytest.mark.handler_flaky('CurlCFFI', reason='segfaults')
373
375
  class TestSocks5Proxy:
374
376
 
375
377
  def test_socks5_no_auth(self, handler, ctx):
@@ -38,6 +38,13 @@ from yt_dlp.utils.networking import HTTPHeaderDict
38
38
  TEST_DIR = os.path.dirname(os.path.abspath(__file__))
39
39
 
40
40
 
41
+ pytestmark = pytest.mark.handler_flaky(
42
+ 'Websockets',
43
+ os.name != 'nt' and sys.implementation.name == 'pypy',
44
+ reason='segfaults',
45
+ )
46
+
47
+
41
48
  def websocket_handler(websocket):
42
49
  for message in websocket:
43
50
  if isinstance(message, bytes):