We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
bongacams.com moved to bongacams.net
### DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

- [X] I understand that I will be **blocked** if I remove or skip any mandatory\* field

### Checklist

- [X] I'm reporting a broken site
- [X] I've verified that I'm running yt-dlp version **2022.09.01** ([update instructions](https://github.com/yt-dlp/yt-dlp#update)) or later (specify commit)
- [X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
- [X] I've checked that all URLs and arguments with special characters are [properly quoted or escaped](https://github.com/yt-dlp/yt-dlp/wiki/FAQ#video-url-contains-an-ampersand--and-im-getting-some-strange-output-1-2839-or-v-is-not-recognized-as-an-internal-or-external-command)
- [X] I've searched the [bugtracker](https://github.com/yt-dlp/yt-dlp/issues?q=) for similar issues **including closed ones**. DO NOT post duplicates
- [X] I've read the [guidelines for opening an issue](https://github.com/yt-dlp/yt-dlp/blob/master/CONTRIBUTING.md#opening-an-issue)
- [X] I've read about [sharing account credentials](https://github.com/yt-dlp/yt-dlp/blob/master/CONTRIBUTING.md#are-you-willing-to-share-account-details-if-needed) and I'm willing to share it if required

### Provide a description that is worded well enough to be understood

bongacams.com has been moved to the new bongacams.net domain, please fix the code to work in the bongacams.net domain


bongacams.com moved to bongacams.net
### DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

- [X] I understand that I will be **blocked** if I remove or skip any mandatory\* field

### Checklist

- [X] I'm reporting a broken site
- [X] I've verified that I'm running yt-dlp version **2022.09.01** ([update instructions](https://github.com/yt-dlp/yt-dlp#update)) or later (specify commit)
- [X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
- [X] I've checked that all URLs and arguments with special characters are [properly quoted or escaped](https://github.com/yt-dlp/yt-dlp/wiki/FAQ#video-url-contains-an-ampersand--and-im-getting-some-strange-output-1-2839-or-v-is-not-recognized-as-an-internal-or-external-command)
- [X] I've searched the [bugtracker](https://github.com/yt-dlp/yt-dlp/issues?q=) for similar issues **including closed ones**. DO NOT post duplicates
- [X] I've read the [guidelines for opening an issue](https://github.com/yt-dlp/yt-dlp/blob/master/CONTRIBUTING.md#opening-an-issue)
- [X] I've read about [sharing account credentials](https://github.com/yt-dlp/yt-dlp/blob/master/CONTRIBUTING.md#are-you-willing-to-share-account-details-if-needed) and I'm willing to share it if required

### Provide a description that is worded well enough to be understood

bongacams.com has been moved to the new bongacams.net domain, please fix the code to work in the bongacams.net domain



--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `yt_dlp/extractor/bongacams.py`
Content:
```
1 from .common import InfoExtractor
2 from ..compat import compat_str
3 from ..utils import (
4     int_or_none,
5     try_get,
6     urlencode_postdata,
7 )
8 
9 
10 class BongaCamsIE(InfoExtractor):
11     _VALID_URL = r'https?://(?P<host>(?:[^/]+\.)?bongacams\d*\.com)/(?P<id>[^/?&#]+)'
12     _TESTS = [{
13         'url': 'https://de.bongacams.com/azumi-8',
14         'only_matching': True,
15     }, {
16         'url': 'https://cn.bongacams.com/azumi-8',
17         'only_matching': True,
18     }]
19 
20     def _real_extract(self, url):
21         mobj = self._match_valid_url(url)
22         host = mobj.group('host')
23         channel_id = mobj.group('id')
24 
25         amf = self._download_json(
26             'https://%s/tools/amf.php' % host, channel_id,
27             data=urlencode_postdata((
28                 ('method', 'getRoomData'),
29                 ('args[]', channel_id),
30                 ('args[]', 'false'),
31             )), headers={'X-Requested-With': 'XMLHttpRequest'})
32 
33         server_url = amf['localData']['videoServerUrl']
34 
35         uploader_id = try_get(
36             amf, lambda x: x['performerData']['username'], compat_str) or channel_id
37         uploader = try_get(
38             amf, lambda x: x['performerData']['displayName'], compat_str)
39         like_count = int_or_none(try_get(
40             amf, lambda x: x['performerData']['loversCount']))
41 
42         formats = self._extract_m3u8_formats(
43             '%s/hls/stream_%s/playlist.m3u8' % (server_url, uploader_id),
44             channel_id, 'mp4', m3u8_id='hls', live=True)
45         self._sort_formats(formats)
46 
47         return {
48             'id': channel_id,
49             'title': uploader or uploader_id,
50             'uploader': uploader,
51             'uploader_id': uploader_id,
52             'like_count': like_count,
53             'age_limit': 18,
54             'is_live': True,
55             'formats': formats,
56         }
57
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/yt_dlp/extractor/bongacams.py b/yt_dlp/extractor/bongacams.py
--- a/yt_dlp/extractor/bongacams.py
+++ b/yt_dlp/extractor/bongacams.py
@@ -8,13 +8,28 @@
 
 
 class BongaCamsIE(InfoExtractor):
-    _VALID_URL = r'https?://(?P<host>(?:[^/]+\.)?bongacams\d*\.com)/(?P<id>[^/?&#]+)'
+    _VALID_URL = r'https?://(?P<host>(?:[^/]+\.)?bongacams\d*\.(?:com|net))/(?P<id>[^/?&#]+)'
     _TESTS = [{
         'url': 'https://de.bongacams.com/azumi-8',
         'only_matching': True,
     }, {
         'url': 'https://cn.bongacams.com/azumi-8',
         'only_matching': True,
+    }, {
+        'url': 'https://de.bongacams.net/claireashton',
+        'info_dict': {
+            'id': 'claireashton',
+            'ext': 'mp4',
+            'title': r're:ClaireAshton \d{4}-\d{2}-\d{2} \d{2}:\d{2}',
+            'age_limit': 18,
+            'uploader_id': 'ClaireAshton',
+            'uploader': 'ClaireAshton',
+            'like_count': int,
+            'is_live': True,
+        },
+        'params': {
+            'skip_download': True,
+        },
     }]
 
     def _real_extract(self, url):

{"golden_diff": "diff --git a/yt_dlp/extractor/bongacams.py b/yt_dlp/extractor/bongacams.py\n--- a/yt_dlp/extractor/bongacams.py\n+++ b/yt_dlp/extractor/bongacams.py\n@@ -8,13 +8,28 @@\n \n \n class BongaCamsIE(InfoExtractor):\n-    _VALID_URL = r'https?://(?P<host>(?:[^/]+\\.)?bongacams\\d*\\.com)/(?P<id>[^/?&#]+)'\n+    _VALID_URL = r'https?://(?P<host>(?:[^/]+\\.)?bongacams\\d*\\.(?:com|net))/(?P<id>[^/?&#]+)'\n     _TESTS = [{\n         'url': 'https://de.bongacams.com/azumi-8',\n         'only_matching': True,\n     }, {\n         'url': 'https://cn.bongacams.com/azumi-8',\n         'only_matching': True,\n+    }, {\n+        'url': 'https://de.bongacams.net/claireashton',\n+        'info_dict': {\n+            'id': 'claireashton',\n+            'ext': 'mp4',\n+            'title': r're:ClaireAshton \\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}',\n+            'age_limit': 18,\n+            'uploader_id': 'ClaireAshton',\n+            'uploader': 'ClaireAshton',\n+            'like_count': int,\n+            'is_live': True,\n+        },\n+        'params': {\n+            'skip_download': True,\n+        },\n     }]\n \n     def _real_extract(self, url):\n", "issue": "bongacams.com moved to bongacams.net\n### DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE\r\n\r\n- [X] I understand that I will be **blocked** if I remove or skip any mandatory\\* field\r\n\r\n### Checklist\r\n\r\n- [X] I'm reporting a broken site\r\n- [X] I've verified that I'm running yt-dlp version **2022.09.01** ([update instructions](https://github.com/yt-dlp/yt-dlp#update)) or later (specify commit)\r\n- [X] I've checked that all provided URLs are playable in a browser with the same IP and same login details\r\n- [X] I've checked that all URLs and arguments with special characters are [properly quoted or escaped](https://github.com/yt-dlp/yt-dlp/wiki/FAQ#video-url-contains-an-ampersand--and-im-getting-some-strange-output-1-2839-or-v-is-not-recognized-as-an-internal-or-external-command)\r\n- [X] I've searched the [bugtracker](https://github.com/yt-dlp/yt-dlp/issues?q=) for similar issues **including closed ones**. DO NOT post duplicates\r\n- [X] I've read the [guidelines for opening an issue](https://github.com/yt-dlp/yt-dlp/blob/master/CONTRIBUTING.md#opening-an-issue)\r\n- [X] I've read about [sharing account credentials](https://github.com/yt-dlp/yt-dlp/blob/master/CONTRIBUTING.md#are-you-willing-to-share-account-details-if-needed) and I'm willing to share it if required\r\n\r\n### Provide a description that is worded well enough to be understood\r\n\r\nbongacams.com has been moved to the new bongacams.net domain, please fix the code to work in the bongacams.net domain\r\n\r\n\nbongacams.com moved to bongacams.net\n### DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE\r\n\r\n- [X] I understand that I will be **blocked** if I remove or skip any mandatory\\* field\r\n\r\n### Checklist\r\n\r\n- [X] I'm reporting a broken site\r\n- [X] I've verified that I'm running yt-dlp version **2022.09.01** ([update instructions](https://github.com/yt-dlp/yt-dlp#update)) or later (specify commit)\r\n- [X] I've checked that all provided URLs are playable in a browser with the same IP and same login details\r\n- [X] I've checked that all URLs and arguments with special characters are [properly quoted or escaped](https://github.com/yt-dlp/yt-dlp/wiki/FAQ#video-url-contains-an-ampersand--and-im-getting-some-strange-output-1-2839-or-v-is-not-recognized-as-an-internal-or-external-command)\r\n- [X] I've searched the [bugtracker](https://github.com/yt-dlp/yt-dlp/issues?q=) for similar issues **including closed ones**. DO NOT post duplicates\r\n- [X] I've read the [guidelines for opening an issue](https://github.com/yt-dlp/yt-dlp/blob/master/CONTRIBUTING.md#opening-an-issue)\r\n- [X] I've read about [sharing account credentials](https://github.com/yt-dlp/yt-dlp/blob/master/CONTRIBUTING.md#are-you-willing-to-share-account-details-if-needed) and I'm willing to share it if required\r\n\r\n### Provide a description that is worded well enough to be understood\r\n\r\nbongacams.com has been moved to the new bongacams.net domain, please fix the code to work in the bongacams.net domain\r\n\r\n\n", "before_files": [{"content": "from .common import InfoExtractor\nfrom ..compat import compat_str\nfrom ..utils import (\n    int_or_none,\n    try_get,\n    urlencode_postdata,\n)\n\n\nclass BongaCamsIE(InfoExtractor):\n    _VALID_URL = r'https?://(?P<host>(?:[^/]+\\.)?bongacams\\d*\\.com)/(?P<id>[^/?&#]+)'\n    _TESTS = [{\n        'url': 'https://de.bongacams.com/azumi-8',\n        'only_matching': True,\n    }, {\n        'url': 'https://cn.bongacams.com/azumi-8',\n        'only_matching': True,\n    }]\n\n    def _real_extract(self, url):\n        mobj = self._match_valid_url(url)\n        host = mobj.group('host')\n        channel_id = mobj.group('id')\n\n        amf = self._download_json(\n            'https://%s/tools/amf.php' % host, channel_id,\n            data=urlencode_postdata((\n                ('method', 'getRoomData'),\n                ('args[]', channel_id),\n                ('args[]', 'false'),\n            )), headers={'X-Requested-With': 'XMLHttpRequest'})\n\n        server_url = amf['localData']['videoServerUrl']\n\n        uploader_id = try_get(\n            amf, lambda x: x['performerData']['username'], compat_str) or channel_id\n        uploader = try_get(\n            amf, lambda x: x['performerData']['displayName'], compat_str)\n        like_count = int_or_none(try_get(\n            amf, lambda x: x['performerData']['loversCount']))\n\n        formats = self._extract_m3u8_formats(\n            '%s/hls/stream_%s/playlist.m3u8' % (server_url, uploader_id),\n            channel_id, 'mp4', m3u8_id='hls', live=True)\n        self._sort_formats(formats)\n\n        return {\n            'id': channel_id,\n            'title': uploader or uploader_id,\n            'uploader': uploader,\n            'uploader_id': uploader_id,\n            'like_count': like_count,\n            'age_limit': 18,\n            'is_live': True,\n            'formats': formats,\n        }\n", "path": "yt_dlp/extractor/bongacams.py"}], "after_files": [{"content": "from .common import InfoExtractor\nfrom ..compat import compat_str\nfrom ..utils import (\n    int_or_none,\n    try_get,\n    urlencode_postdata,\n)\n\n\nclass BongaCamsIE(InfoExtractor):\n    _VALID_URL = r'https?://(?P<host>(?:[^/]+\\.)?bongacams\\d*\\.(?:com|net))/(?P<id>[^/?&#]+)'\n    _TESTS = [{\n        'url': 'https://de.bongacams.com/azumi-8',\n        'only_matching': True,\n    }, {\n        'url': 'https://cn.bongacams.com/azumi-8',\n        'only_matching': True,\n    }, {\n        'url': 'https://de.bongacams.net/claireashton',\n        'info_dict': {\n            'id': 'claireashton',\n            'ext': 'mp4',\n            'title': r're:ClaireAshton \\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}',\n            'age_limit': 18,\n            'uploader_id': 'ClaireAshton',\n            'uploader': 'ClaireAshton',\n            'like_count': int,\n            'is_live': True,\n        },\n        'params': {\n            'skip_download': True,\n        },\n    }]\n\n    def _real_extract(self, url):\n        mobj = self._match_valid_url(url)\n        host = mobj.group('host')\n        channel_id = mobj.group('id')\n\n        amf = self._download_json(\n            'https://%s/tools/amf.php' % host, channel_id,\n            data=urlencode_postdata((\n                ('method', 'getRoomData'),\n                ('args[]', channel_id),\n                ('args[]', 'false'),\n            )), headers={'X-Requested-With': 'XMLHttpRequest'})\n\n        server_url = amf['localData']['videoServerUrl']\n\n        uploader_id = try_get(\n            amf, lambda x: x['performerData']['username'], compat_str) or channel_id\n        uploader = try_get(\n            amf, lambda x: x['performerData']['displayName'], compat_str)\n        like_count = int_or_none(try_get(\n            amf, lambda x: x['performerData']['loversCount']))\n\n        formats = self._extract_m3u8_formats(\n            '%s/hls/stream_%s/playlist.m3u8' % (server_url, uploader_id),\n            channel_id, 'mp4', m3u8_id='hls', live=True)\n        self._sort_formats(formats)\n\n        return {\n            'id': channel_id,\n            'title': uploader or uploader_id,\n            'uploader': uploader,\n            'uploader_id': uploader_id,\n            'like_count': like_count,\n            'age_limit': 18,\n            'is_live': True,\n            'formats': formats,\n        }\n", "path": "yt_dlp/extractor/bongacams.py"}]}