webscout 8.2.9__py3-none-any.whl → 8.3__py3-none-any.whl

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.

Potentially problematic release.


This version of webscout might be problematic. Click here for more details.

Files changed (63) hide show
  1. webscout/AIauto.py +2 -2
  2. webscout/Provider/Blackboxai.py +2 -0
  3. webscout/Provider/ChatSandbox.py +2 -1
  4. webscout/Provider/Deepinfra.py +1 -1
  5. webscout/Provider/HeckAI.py +1 -1
  6. webscout/Provider/LambdaChat.py +1 -0
  7. webscout/Provider/MCPCore.py +7 -3
  8. webscout/Provider/OPENAI/BLACKBOXAI.py +1017 -766
  9. webscout/Provider/OPENAI/Cloudflare.py +31 -14
  10. webscout/Provider/OPENAI/FalconH1.py +457 -0
  11. webscout/Provider/OPENAI/FreeGemini.py +29 -13
  12. webscout/Provider/OPENAI/NEMOTRON.py +26 -14
  13. webscout/Provider/OPENAI/PI.py +427 -0
  14. webscout/Provider/OPENAI/Qwen3.py +303 -282
  15. webscout/Provider/OPENAI/TwoAI.py +29 -12
  16. webscout/Provider/OPENAI/__init__.py +3 -1
  17. webscout/Provider/OPENAI/ai4chat.py +33 -23
  18. webscout/Provider/OPENAI/api.py +78 -12
  19. webscout/Provider/OPENAI/base.py +2 -0
  20. webscout/Provider/OPENAI/c4ai.py +31 -10
  21. webscout/Provider/OPENAI/chatgpt.py +41 -22
  22. webscout/Provider/OPENAI/chatgptclone.py +32 -13
  23. webscout/Provider/OPENAI/chatsandbox.py +7 -3
  24. webscout/Provider/OPENAI/copilot.py +26 -10
  25. webscout/Provider/OPENAI/deepinfra.py +327 -321
  26. webscout/Provider/OPENAI/e2b.py +77 -99
  27. webscout/Provider/OPENAI/exaai.py +13 -10
  28. webscout/Provider/OPENAI/exachat.py +10 -6
  29. webscout/Provider/OPENAI/flowith.py +7 -3
  30. webscout/Provider/OPENAI/freeaichat.py +10 -6
  31. webscout/Provider/OPENAI/glider.py +10 -6
  32. webscout/Provider/OPENAI/heckai.py +11 -8
  33. webscout/Provider/OPENAI/llmchatco.py +9 -7
  34. webscout/Provider/OPENAI/mcpcore.py +10 -7
  35. webscout/Provider/OPENAI/multichat.py +3 -1
  36. webscout/Provider/OPENAI/netwrck.py +10 -6
  37. webscout/Provider/OPENAI/oivscode.py +12 -9
  38. webscout/Provider/OPENAI/opkfc.py +14 -3
  39. webscout/Provider/OPENAI/scirachat.py +14 -8
  40. webscout/Provider/OPENAI/sonus.py +10 -6
  41. webscout/Provider/OPENAI/standardinput.py +18 -9
  42. webscout/Provider/OPENAI/textpollinations.py +14 -7
  43. webscout/Provider/OPENAI/toolbaz.py +16 -10
  44. webscout/Provider/OPENAI/typefully.py +14 -7
  45. webscout/Provider/OPENAI/typegpt.py +10 -6
  46. webscout/Provider/OPENAI/uncovrAI.py +22 -8
  47. webscout/Provider/OPENAI/venice.py +10 -6
  48. webscout/Provider/OPENAI/writecream.py +166 -163
  49. webscout/Provider/OPENAI/x0gpt.py +367 -365
  50. webscout/Provider/OPENAI/yep.py +384 -382
  51. webscout/Provider/PI.py +2 -1
  52. webscout/Provider/__init__.py +0 -2
  53. webscout/Provider/granite.py +41 -6
  54. webscout/Provider/oivscode.py +37 -37
  55. webscout/Provider/scnet.py +1 -0
  56. webscout/version.py +1 -1
  57. {webscout-8.2.9.dist-info → webscout-8.3.dist-info}/METADATA +2 -1
  58. {webscout-8.2.9.dist-info → webscout-8.3.dist-info}/RECORD +62 -61
  59. {webscout-8.2.9.dist-info → webscout-8.3.dist-info}/WHEEL +1 -1
  60. webscout/Provider/ChatGPTGratis.py +0 -194
  61. {webscout-8.2.9.dist-info → webscout-8.3.dist-info}/entry_points.txt +0 -0
  62. {webscout-8.2.9.dist-info → webscout-8.3.dist-info}/licenses/LICENSE.md +0 -0
  63. {webscout-8.2.9.dist-info → webscout-8.3.dist-info}/top_level.txt +0 -0
webscout/Provider/PI.py CHANGED
@@ -158,7 +158,8 @@ class PiAI(Provider):
158
158
  except CurlError as e: # Catch CurlError
159
159
  raise exceptions.FailedToGenerateResponseError(f"Failed to start conversation (CurlError): {e}") from e
160
160
  except Exception as e: # Catch other potential exceptions (like HTTPError, JSONDecodeError)
161
- err_text = getattr(e, 'response', None) and getattr(e.response, 'text', '')
161
+ # Extract error text from the response if available
162
+ err_text = e.response.text if hasattr(e, 'response') and hasattr(e.response, 'text') else ''
162
163
  raise exceptions.FailedToGenerateResponseError(f"Failed to start conversation ({type(e).__name__}): {e} - {err_text}") from e
163
164
 
164
165
  def ask(
@@ -42,7 +42,6 @@ from .chatglm import *
42
42
  from .hermes import *
43
43
  from .TextPollinationsAI import *
44
44
  from .Glider import *
45
- from .ChatGPTGratis import *
46
45
  from .QwenLM import *
47
46
  from .granite import *
48
47
  from .WiseCat import *
@@ -111,7 +110,6 @@ __all__ = [
111
110
  'WiseCat',
112
111
  'IBMGranite',
113
112
  'QwenLM',
114
- 'ChatGPTGratis',
115
113
  'LambdaChat',
116
114
  'TextPollinationsAI',
117
115
  'GliderAI',
@@ -14,11 +14,11 @@ class IBMGranite(Provider):
14
14
  using Lit agent for the user agent.
15
15
  """
16
16
 
17
- AVAILABLE_MODELS = ["granite-3-8b-instruct", "granite-3-2-8b-instruct"]
17
+ AVAILABLE_MODELS = ["granite-3-8b-instruct", "granite-3-2-8b-instruct", "granite-3-3-8b-instruct"]
18
18
 
19
19
  def __init__(
20
20
  self,
21
- api_key: str,
21
+ api_key: str = None,
22
22
  is_conversation: bool = True,
23
23
  max_tokens: int = 600, # Note: max_tokens is not used by this API
24
24
  timeout: int = 30,
@@ -28,7 +28,7 @@ class IBMGranite(Provider):
28
28
  proxies: dict = {},
29
29
  history_offset: int = 10250,
30
30
  act: str = None,
31
- model: str = "granite-3-2-8b-instruct",
31
+ model: str = "granite-3-3-8b-instruct",
32
32
  system_prompt: str = "You are a helpful AI assistant.",
33
33
  thinking: bool = False,
34
34
  ):
@@ -36,6 +36,10 @@ class IBMGranite(Provider):
36
36
  if model not in self.AVAILABLE_MODELS:
37
37
  raise ValueError(f"Invalid model: {model}. Choose from: {self.AVAILABLE_MODELS}")
38
38
 
39
+ # Auto-generate API key if not provided or empty
40
+ if not api_key:
41
+ api_key = self.generate_api_key()
42
+
39
43
  # Initialize curl_cffi Session
40
44
  self.session = Session()
41
45
  self.is_conversation = is_conversation
@@ -55,6 +59,7 @@ class IBMGranite(Provider):
55
59
  "content-type": "application/json",
56
60
  "origin": "https://www.ibm.com", # Keep origin
57
61
  "referer": "https://www.ibm.com/", # Keep referer
62
+ "User-Agent": Lit().random(),
58
63
  }
59
64
  self.headers["Authorization"] = f"Bearer {api_key}"
60
65
 
@@ -84,6 +89,36 @@ class IBMGranite(Provider):
84
89
  return chunk[1]
85
90
  return None
86
91
 
92
+ @staticmethod
93
+ def generate_api_key() -> str:
94
+ """
95
+ Auto-generate an API key (sessionId) by making a GET request to the Granite auth endpoint.
96
+ Returns:
97
+ str: The sessionId to be used as the API key.
98
+ Raises:
99
+ Exception: If the sessionId cannot be retrieved.
100
+ """
101
+ session = Session()
102
+ headers = {
103
+ "User-Agent": Lit().random(),
104
+ "Origin": "https://www.ibm.com",
105
+ "Referer": "https://d18n68ssusgr7r.cloudfront.net/",
106
+ "Accept": "application/json,application/jsonl",
107
+ }
108
+ session.headers.update(headers)
109
+ url = "https://d18n68ssusgr7r.cloudfront.net/v1/auth"
110
+ resp = session.get(url, timeout=15, impersonate="chrome110")
111
+ if resp.status_code != 200:
112
+ raise Exception(f"Failed to get Granite API key: {resp.status_code} - {resp.text}")
113
+ try:
114
+ data = resp.json()
115
+ session_id = data.get("sessionId")
116
+ if not session_id:
117
+ raise Exception(f"No sessionId in Granite auth response: {data}")
118
+ return session_id
119
+ except Exception as e:
120
+ raise Exception(f"Failed to parse Granite auth response: {e}")
121
+
87
122
  def ask(
88
123
  self,
89
124
  prompt: str,
@@ -117,8 +152,9 @@ class IBMGranite(Provider):
117
152
  {"role": "system", "content": self.system_prompt},
118
153
  {"role": "user", "content": conversation_prompt},
119
154
  ],
120
- "stream": True # API seems to require stream=True based on response format
121
155
  }
156
+ if self.thinking:
157
+ payload["thinking"] = True
122
158
 
123
159
  def for_stream():
124
160
  streaming_text = "" # Initialize outside try block
@@ -227,9 +263,8 @@ if __name__ == "__main__":
227
263
  from rich import print
228
264
  # Example usage: Initialize without logging.
229
265
  ai = IBMGranite(
230
- api_key="", # press f12 to see the API key
231
266
  thinking=True,
232
267
  )
233
- response = ai.chat("write a poem about AI", stream=True)
268
+ response = ai.chat("How many r in strawberry", stream=True)
234
269
  for chunk in response:
235
270
  print(chunk, end="", flush=True)
@@ -262,43 +262,43 @@ class oivscode(Provider):
262
262
  return response["text"]
263
263
  return ""
264
264
 
265
- # def fetch_available_models(self):
266
- # """Fetches available models from the /models endpoint of all API endpoints and prints models per endpoint."""
267
- # endpoints = self.api_endpoints.copy()
268
- # random.shuffle(endpoints)
269
- # results = {}
270
- # errors = []
271
- # for endpoint in endpoints:
272
- # models_url = endpoint.replace('/v1/chat/completions', '/v1/models')
273
- # try:
274
- # response = self.session.get(models_url, timeout=self.timeout)
275
- # if response.ok:
276
- # data = response.json()
277
- # if isinstance(data, dict) and "data" in data:
278
- # models = [m["id"] if isinstance(m, dict) and "id" in m else m for m in data["data"]]
279
- # elif isinstance(data, list):
280
- # models = data
281
- # else:
282
- # models = list(data.keys()) if isinstance(data, dict) else []
283
- # results[models_url] = models
284
- # else:
285
- # errors.append(f"Failed to fetch models from {models_url}: {response.status_code} {response.text}")
286
- # except Exception as e:
287
- # errors.append(f"Error fetching from {models_url}: {e}")
288
- # if results:
289
- # for url, models in results.items():
290
- # print(f"Models from {url}:")
291
- # if models:
292
- # for m in sorted(models):
293
- # print(f" {m}")
294
- # else:
295
- # print(" No models found.")
296
- # return results
297
- # else:
298
- # print("No models found from any endpoint.")
299
- # for err in errors:
300
- # print(err)
301
- # return {}
265
+ def fetch_available_models(self):
266
+ """Fetches available models from the /models endpoint of all API endpoints and prints models per endpoint."""
267
+ endpoints = self.api_endpoints.copy()
268
+ random.shuffle(endpoints)
269
+ results = {}
270
+ errors = []
271
+ for endpoint in endpoints:
272
+ models_url = endpoint.replace('/v1/chat/completions', '/v1/models')
273
+ try:
274
+ response = self.session.get(models_url, timeout=self.timeout)
275
+ if response.ok:
276
+ data = response.json()
277
+ if isinstance(data, dict) and "data" in data:
278
+ models = [m["id"] if isinstance(m, dict) and "id" in m else m for m in data["data"]]
279
+ elif isinstance(data, list):
280
+ models = data
281
+ else:
282
+ models = list(data.keys()) if isinstance(data, dict) else []
283
+ results[models_url] = models
284
+ else:
285
+ errors.append(f"Failed to fetch models from {models_url}: {response.status_code} {response.text}")
286
+ except Exception as e:
287
+ errors.append(f"Error fetching from {models_url}: {e}")
288
+ if results:
289
+ for url, models in results.items():
290
+ print(f"Models from {url}:")
291
+ if models:
292
+ for m in sorted(models):
293
+ print(f" {m}")
294
+ else:
295
+ print(" No models found.")
296
+ return results
297
+ else:
298
+ print("No models found from any endpoint.")
299
+ for err in errors:
300
+ print(err)
301
+ return {}
302
302
 
303
303
  if __name__ == "__main__":
304
304
  from rich import print
@@ -18,6 +18,7 @@ class SCNet(Provider):
18
18
  {"modelId": 5, "name": "Deepseek-r1-70B"},
19
19
  {"modelId": 7, "name": "QWQ-32B"},
20
20
  {"modelId": 8, "name": "minimax-text-01-456B"},
21
+ {"modelId": 9, "name": "Qwen3-30B-A3B"}, # Added new model
21
22
  # Add more models here as needed
22
23
  ]
23
24
  MODEL_NAME_TO_ID = {m["name"]: m["modelId"] for m in AVAILABLE_MODELS}
webscout/version.py CHANGED
@@ -1,2 +1,2 @@
1
- __version__ = "8.2.9"
1
+ __version__ = "8.3"
2
2
  __prog__ = "webscout"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: webscout
3
- Version: 8.2.9
3
+ Version: 8.3
4
4
  Summary: Search for anything using Google, DuckDuckGo, phind.com, Contains AI models, can transcribe yt videos, temporary email and phone number generation, has TTS support, webai (terminal gpt and open interpreter) and offline LLMs and more
5
5
  Author-email: OEvortex <helpingai5@gmail.com>
6
6
  License: HelpingAI
@@ -61,6 +61,7 @@ Requires-Dist: gradio_client
61
61
  Requires-Dist: psutil
62
62
  Requires-Dist: aiohttp
63
63
  Requires-Dist: zstandard
64
+ Requires-Dist: brotli
64
65
  Provides-Extra: dev
65
66
  Requires-Dist: ruff>=0.1.6; extra == "dev"
66
67
  Requires-Dist: pytest>=7.4.2; extra == "dev"
@@ -1,4 +1,4 @@
1
- webscout/AIauto.py,sha256=gr2UdF3myB-FchtE4wkQPGjwSd7JGd4RHjonl7_S87M,10452
1
+ webscout/AIauto.py,sha256=xkTaQFXNCScE8P-w_oJ6jnWxnYodhLn-3-fiSbT0a9c,10504
2
2
  webscout/AIbase.py,sha256=oT1z3Z6vWD7HgKAuqGYhDMJJdwVe7UbA_GzkFU9b7u8,12368
3
3
  webscout/AIutel.py,sha256=U_U2ccopCLRjAKyRQiibr3FF4oTls8xHOfFZpWSkcaI,30709
4
4
  webscout/Bard.py,sha256=VTvnSapEleBnw-O6CM_-4PiijhsLFx_B7gauknV58p4,45280
@@ -15,7 +15,7 @@ webscout/prompt_manager.py,sha256=j4MLYx3SpeeTxzsbgUGAHWLtJ1HAF6eaWOzJCAiGND4,10
15
15
  webscout/tempid.py,sha256=lqTTOjVSwDMmC0UoThdyshFyIAxTikVaN613-6K3g_s,4968
16
16
  webscout/update_checker.py,sha256=5FCr6p1zLVASXcXkxKEgR7bFvICbpzJdgRTr3teKFCs,4217
17
17
  webscout/utils.py,sha256=o2hU3qaVPk25sog3e4cyVZO3l8xwaZpYRziZPotEzNo,3075
18
- webscout/version.py,sha256=sHy6W3UcX83TKV1GW25bCzyX2pW0EyKM-uhLmjwy60I,46
18
+ webscout/version.py,sha256=J20fRfjuVn8-snJv1OWxrqOoA8ioIRHgqwh_-JsIzaA,44
19
19
  webscout/webscout_search.py,sha256=PfkBjaIKwTkL3JmpLz8Z1FNdQIqwvCMeSSMLi2tI9Jg,48185
20
20
  webscout/webscout_search_async.py,sha256=rf2dAWw8z78M-UN6CQU-vbW8IXYLdCGyO6R7jVSkQck,27502
21
21
  webscout/yep_search.py,sha256=gCXleUK_1Gy6B6fMPZ8MurwboPiMmbft3bhk1qISCdQ,12295
@@ -70,13 +70,12 @@ webscout/Provider/AI21.py,sha256=kyr07xbalGQuR-wP9L5W7c_ri5-PEEvyj42jLV56XaE,622
70
70
  webscout/Provider/Aitopia.py,sha256=m01z55uTYvtCANJ-kSCkvVMsYAIDT_1F5HBxVWLNz2I,12948
71
71
  webscout/Provider/AllenAI.py,sha256=pCj0OktBSeFp90KzrC16F4P9qB3CqHnpfEYY_0zZFPs,19270
72
72
  webscout/Provider/Andi.py,sha256=-Pf3ptSL7PMpVzj2WawopKNFKCC5ZhhH0e5kUFNiIb4,8778
73
- webscout/Provider/Blackboxai.py,sha256=l9SkOOoxNAZrYFZVmxaj5quQVmMFpqi4J8dEdM9ITMQ,41246
73
+ webscout/Provider/Blackboxai.py,sha256=6uMhfr8_8aX5K9Czl-JfwDzt4QY-qh1URzJv7VjubU8,41412
74
74
  webscout/Provider/ChatGPTClone.py,sha256=3nr_ijQIFyQBbQlGsnjsMMiBgf03WB6KKT5CXrXQE_E,9904
75
- webscout/Provider/ChatGPTGratis.py,sha256=HgqvYSfSvbfqG-nh3vpBWj9TweWn-yrOzoV3MNCZNTA,7511
76
- webscout/Provider/ChatSandbox.py,sha256=q-QsoRxTuWQ9f8iq5N5yH_2S6qj6YBhfoLFudnACxxE,13333
75
+ webscout/Provider/ChatSandbox.py,sha256=P9fiF-Pmx_0XHV1eo4sBV_H9FybTTcoYifkf-6H61WI,13438
77
76
  webscout/Provider/Cloudflare.py,sha256=tcjXK50ghqxmLP0VC8kUQkslgVn9JDB7adxlJHNHIrM,14454
78
77
  webscout/Provider/Cohere.py,sha256=oL9kAv--RSkEQxwkPTq1Wi57Wkgg0WNvL82CpTj22YY,8264
79
- webscout/Provider/Deepinfra.py,sha256=CQY5UnY5ItGyWcDjRJpfWhH_5NCxJskWgSvoYJC0n_0,15018
78
+ webscout/Provider/Deepinfra.py,sha256=lCjsAMxhoq-FbJ-8ztZCU0HbL1jT9PHqQy29joK1jcU,15057
80
79
  webscout/Provider/ExaAI.py,sha256=plbjF5LYyZS4elLWKtD6AURDQS3O9xAGBScpDGPHWiY,9783
81
80
  webscout/Provider/ExaChat.py,sha256=us5sOKwGR7a36Oe24yinXvszLd5IKHMa93QgmeZwV60,13119
82
81
  webscout/Provider/Flowith.py,sha256=w5rpUmRkoAL-WqrKMyRrsTTDmsPN2Cc5zyRBy7_48mY,8605
@@ -86,21 +85,21 @@ webscout/Provider/GithubChat.py,sha256=vBPjsLchav-kuond0D2kaIo8_QsrYDPYNwKF-D4yK
86
85
  webscout/Provider/GizAI.py,sha256=o8liIlSPz0MDTqLLGwtLiX3iSAsEuJfX1Cl8UNGOpfQ,10865
87
86
  webscout/Provider/Glider.py,sha256=MbgKflBwSrvsOKW3Ya-ijKc3Hxh_L6LnD6tfUSFKsoQ,9342
88
87
  webscout/Provider/Groq.py,sha256=V6nDhue-AEOJLc1-BP6ZOwsUxpjXP1SqBLTG07dhwWc,36880
89
- webscout/Provider/HeckAI.py,sha256=vbWTSztnd2OV_tCsRUMNvtOA1YXzQ-enYmb0scnHIjc,16532
88
+ webscout/Provider/HeckAI.py,sha256=prob1oYb5tHI2_-3ZmVkjPa3vRefWi6US56kLWZBHwg,16536
90
89
  webscout/Provider/HuggingFaceChat.py,sha256=xRhaXs22ipUE8qbZ40PljA6nssRwow0xdYedXHYXuCY,21854
91
90
  webscout/Provider/Hunyuan.py,sha256=FjFcqVhexIpEuljUsGJN4t12bMQvGmzrmc4D1kBLdNk,12332
92
91
  webscout/Provider/Jadve.py,sha256=oJEdqchuS6a8FquVc26fxM_OJEPzWSMmjwRcHpw_18g,13052
93
92
  webscout/Provider/Koboldai.py,sha256=K_bAuRMYRkHzN1Qjh0hP6N3oWN_2KoqHpucROmoyLUY,15363
94
- webscout/Provider/LambdaChat.py,sha256=ybFS3rKpWSd_Hjlu81ZyNOb_-H39USfPZbB00CmoqCU,18670
93
+ webscout/Provider/LambdaChat.py,sha256=V2WbFNPOsf5WxUvRHhMoWr6a5KsMBbNqfEoKV5tbNOM,18701
95
94
  webscout/Provider/Llama3.py,sha256=9f-7ha23OdvUthKUqLwBpSBBZzWPmadJPESyDOUKbC0,10770
96
- webscout/Provider/MCPCore.py,sha256=q_rN7gkrt6Fc-sNMVXvaRzmz-KvFllaFtmTmFO9fQPw,12545
95
+ webscout/Provider/MCPCore.py,sha256=xdcmCvWlt5tA8jqdVbaDfChSLi2zroZiUY555X1zieE,12748
97
96
  webscout/Provider/Marcus.py,sha256=JDjjpmimsWCgrRqZFPGxuHIZ5M98d2ijFzMie86CZvs,8352
98
97
  webscout/Provider/Nemotron.py,sha256=_hCFLNhynRX-rMtKXKRpKzrKKFzyWGlQ8uQC-8v0l6w,7948
99
98
  webscout/Provider/Netwrck.py,sha256=Fstf8bK5dnE4fRLKDumbdFsiF0EIW147AEgsbzezM6A,11812
100
99
  webscout/Provider/OLLAMA.py,sha256=k8EbK_EqH02xiTtqubViKsHebyJFLUwug5zeP1HkDa4,15155
101
100
  webscout/Provider/OpenGPT.py,sha256=yzJkYC8ePmx5p5r-tBNLMqsGBV2Fq1cHRtgEAfHNGjk,8898
102
101
  webscout/Provider/Openai.py,sha256=TC4BkezoLqimaqOwzX-nYC9w7hXbDCajm-bzkdyl-gA,20433
103
- webscout/Provider/PI.py,sha256=UvVNenB2M3mbR3xcQTWcWmd9ck-iZXBJTjLB6cMATWM,18584
102
+ webscout/Provider/PI.py,sha256=BN7O_R8Dky2_c2NiVeJhwCgqMfgWWvm8Gc7mW20TzhY,18666
104
103
  webscout/Provider/Perplexitylabs.py,sha256=e0k7tuh99dedBTkQxytvfwPS6x6hlaFVpZyrpvy4_Xs,16621
105
104
  webscout/Provider/QwenLM.py,sha256=lxnSF38wrupb1e7XhN8f0py8v6efwOndFh2SwvIy7Sc,10430
106
105
  webscout/Provider/Reka.py,sha256=dWw4vX91nJhAn-X1SXK72gttRaTqWNGUBFaeRJobTJg,8519
@@ -115,7 +114,7 @@ webscout/Provider/WiseCat.py,sha256=TgsGFi6nSTls1_9yuGY-iITB5y2LobHoi5zvWZ8yWlY,
115
114
  webscout/Provider/WrDoChat.py,sha256=Idjrg0IEmeRU6V2qm8SGuqkNowSh5iVsC9N3krPP-l4,13902
116
115
  webscout/Provider/Writecream.py,sha256=_uNU1EcGpv80Xo47fye40FbQVuIWAUd6m9OUYZ3Khcc,9332
117
116
  webscout/Provider/WritingMate.py,sha256=fOZ5Tu1A-PKFpl10ekheEy0h0qclSoO__KkBrci_aiI,12332
118
- webscout/Provider/__init__.py,sha256=u8t5Rd-6mpMjgdS-XGHL1baOB1mcXWln4QtVWOCyAF4,3872
117
+ webscout/Provider/__init__.py,sha256=ZrPnNkxVYZqeJWuHXc4r-8kNXY4yP6MhEwHXLbvY38E,3820
119
118
  webscout/Provider/ai4chat.py,sha256=4PvQxPAWlaDgSyo5Dg1W6BVIUDTHq0rFK0H7rcBiCOI,6845
120
119
  webscout/Provider/akashgpt.py,sha256=iJke-aCmTT_8RmrJbSAZayhtIimum1h680diJwBxdOI,13045
121
120
  webscout/Provider/asksteve.py,sha256=qDRe4X6EmgOkhzRz8AAMYUSQFuO5k_84jwgPWKFkjGY,8985
@@ -126,7 +125,7 @@ webscout/Provider/copilot.py,sha256=MhDpo1ZHs-Uf-CEIYDB6J3t2rPeI9pP6QDCGffsBoIg,
126
125
  webscout/Provider/elmo.py,sha256=PiiRLwkyHsPmAY8uydd_TuWe2qVXbs_wfW5u4Ytbqp8,12875
127
126
  webscout/Provider/freeaichat.py,sha256=yKTGYYrv_v3xoOcsXc83F0qTBv5rjFKPuZQLX-vRhIQ,9963
128
127
  webscout/Provider/geminiapi.py,sha256=-_QbDBF_IiYyOJ0_uAIcE-gfzIs8H86nA5VWX52SRoY,8505
129
- webscout/Provider/granite.py,sha256=EodpTbTkAGZUq7cVEe0UHqJCyWZvhKw9MhwDaYTye3I,10771
128
+ webscout/Provider/granite.py,sha256=7a9cCqS0JmJ0klUVoiIFz7qmsbcPIfvlBXY2Ag_z7tg,12181
130
129
  webscout/Provider/hermes.py,sha256=Dw3zQQ1r850_qhNSMGwQBO6EfpTsN91yV9QZaDVHCi0,10720
131
130
  webscout/Provider/julius.py,sha256=ra20kGPafLDgV8gd2Z-Yce5eKlgSjFl4CpyHtEmHIlg,8583
132
131
  webscout/Provider/koala.py,sha256=pOxU-bptIZYi4JDiBoqxbMeVLpFRIROVbL8HHv5wgNE,6611
@@ -137,10 +136,10 @@ webscout/Provider/llmchatco.py,sha256=xW6ZtlYUVbiUsYIFixFDup2lIZgzhzjZM2bl2C-N6N
137
136
  webscout/Provider/lmarena.py,sha256=wPwj0xv1x1cPx10DgYTsJatl5MIqjc61Q0GypfGigOA,9640
138
137
  webscout/Provider/meta.py,sha256=uQw0yS80eXoPqVfmWvwE_pvjTVYDDiTu4xrmfKmrqI0,30741
139
138
  webscout/Provider/multichat.py,sha256=3ZxV7C7KG4T6sKttHf0jO83eGjgaPlRszVZnZBR2JI8,15043
140
- webscout/Provider/oivscode.py,sha256=VhLnzCV8s5YB5ttG90kW1Id3yapQvYqs450YwmsIGSA,12794
139
+ webscout/Provider/oivscode.py,sha256=LkHqRzsQ4XbYLo64oUVztTuUGffqiBWw8bdB8Q8aEXU,12720
141
140
  webscout/Provider/samurai.py,sha256=xwl5CXgV5E_93ATMDXh6QtUKuLK7h0kuGN7JWAJLOCc,8446
142
141
  webscout/Provider/scira_chat.py,sha256=EhyHT3PIYWo6L3Bpc3zOsabLjQQ83kNTJGrFsX6CCv0,12416
143
- webscout/Provider/scnet.py,sha256=Nwibdm1LV96QOjqVVIgX_Qro70MVdRDVBF4gLXcevnI,11358
142
+ webscout/Provider/scnet.py,sha256=L-9rJNyl5JLrVBvM8u0rOsR0mqn8x-grr10CjHC_Emk,11427
144
143
  webscout/Provider/searchchat.py,sha256=AMKFIMhAfnmIYCHtKmePf_rUvcbboDoi65H4WOCdInw,12464
145
144
  webscout/Provider/sonus.py,sha256=OaXzLYC7RndmVV4rDbBThhOhmOpAq3EYDG11NdYEgV8,11300
146
145
  webscout/Provider/talkai.py,sha256=18EB9FPx2rOWdnuqMtBZc_QbLWKNFj06n1Xdtm6npwg,7613
@@ -164,52 +163,54 @@ webscout/Provider/AISEARCH/scira_search.py,sha256=VI-0t-jb926xYrs3rt_5f8WKEph4QS
164
163
  webscout/Provider/AISEARCH/webpilotai_search.py,sha256=eBjfuXB_HNkTL5Z_--JyrwH8e4cJ52hcwrB-rV0_KQU,11511
165
164
  webscout/Provider/HF_space/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
166
165
  webscout/Provider/HF_space/qwen_qwen2.py,sha256=IulE7bAMSbR530pFTanWzMFb4UJ9qF_NKoGiHkXxcjc,7612
167
- webscout/Provider/OPENAI/BLACKBOXAI.py,sha256=JxRMgD8lA5PxxRrF7XoUyrDQkEaRggEup9uZ0TXpFrU,34384
168
- webscout/Provider/OPENAI/Cloudflare.py,sha256=xK6tW70sTevqftLXcKJ3rmqDoxN1Nc0HDih_GugBVrY,14009
169
- webscout/Provider/OPENAI/FreeGemini.py,sha256=ZVR8P6AnXq2VX1RI_YJsG9RM3TqNQQf6nVyAmaq3HHs,10266
170
- webscout/Provider/OPENAI/NEMOTRON.py,sha256=tYYrSApnZqH1Xa34I0MBo0LfUhJooE6yjR1n4RbHI9k,8931
171
- webscout/Provider/OPENAI/Qwen3.py,sha256=dMAVSrZ5MarAEIE49pTHiId2P2nhptZhUBwFi-JcgNA,14517
166
+ webscout/Provider/OPENAI/BLACKBOXAI.py,sha256=975iNMVKKSDgPdJanhnV8WHxaYlJa8tHW0aItpK4i7g,45066
167
+ webscout/Provider/OPENAI/Cloudflare.py,sha256=jGvB6iInA2U1hjZ5TVy_Pt3U47u0zEgyZireNYQVHIY,14765
168
+ webscout/Provider/OPENAI/FalconH1.py,sha256=ISWDHCuR7hKZbmWesxG83n5ihq1v3a8HTWs_0gktse0,22454
169
+ webscout/Provider/OPENAI/FreeGemini.py,sha256=8QNiVs4s9eh0g-lKSL4Y3J35C3P47GIe5MhuEmsI6Vw,11227
170
+ webscout/Provider/OPENAI/NEMOTRON.py,sha256=ZwBgNe3b466zkJ7JYtzLvobQte-Gppk1_YOBGGk6Mc8,9731
171
+ webscout/Provider/OPENAI/PI.py,sha256=MHkX7wsXJIdItwOfMMGEo8OzlZXIaolopBda7b_SpfQ,15185
172
+ webscout/Provider/OPENAI/Qwen3.py,sha256=PoHqRSrJjPoR-7Yrb-4lwKL0UlpCUjA92pH0_evWVjQ,15770
172
173
  webscout/Provider/OPENAI/README.md,sha256=79byCKwbN7dsanSOyNpGHY7hA7qNdIVi0nuezUHtJaY,25051
173
- webscout/Provider/OPENAI/TwoAI.py,sha256=MDVOgl5D7nukMAgLsGMZVaBi5ptdGaH8iXGXrzhsGkE,13678
174
- webscout/Provider/OPENAI/__init__.py,sha256=zgP260SsHyhXC7vv-qfJWgYBTPIASmDwxxZqK2_Exwc,1123
175
- webscout/Provider/OPENAI/ai4chat.py,sha256=qzdTZ5A-GGCQBFeepphK-hAunAKOi69e4iDUhdp7Hfw,10551
176
- webscout/Provider/OPENAI/api.py,sha256=ajyNSc5KMWaN4Q3UGApb89d0kDAqnNzb0EAw0nKFtyM,43262
177
- webscout/Provider/OPENAI/base.py,sha256=NKLnMUB_mylS7oNwkjKITBJdqAVc7P7uGYwor-1jw7M,9446
178
- webscout/Provider/OPENAI/c4ai.py,sha256=1EnakYMsOUEXuPOnr5gi1TNQpH1OepZtqM0kx3GbQ4M,14533
179
- webscout/Provider/OPENAI/chatgpt.py,sha256=ky7qY-BXIpxXISlvOilASwufwWt92e2meOcUwYc-Ma8,19769
180
- webscout/Provider/OPENAI/chatgptclone.py,sha256=fFvlf3Cy8lNJOMfotkf5UkcJSKZm3wdZCNY-b5DlhTc,19119
181
- webscout/Provider/OPENAI/chatsandbox.py,sha256=gT1ZsY_9VJj0iUUjuIRIsiZuuRiVFz0zDveDWfbr6SA,6667
182
- webscout/Provider/OPENAI/copilot.py,sha256=yKvyPdxc_tTllT9PI51prkBg1AeFdUGLxC-gIlmGcH8,8488
183
- webscout/Provider/OPENAI/deepinfra.py,sha256=YPhmhFxyHDrftNYAoMBcIeXqoxsVZkhJpVB48JRvxIo,13909
184
- webscout/Provider/OPENAI/e2b.py,sha256=dE-VDaZdzpLv368DfUPVyTpmSZ0PDGGYYCMUCcF6zl8,55725
185
- webscout/Provider/OPENAI/exaai.py,sha256=mQIaHi5IJLGzCK5PMH_TqjH95pZWmwRLpYKGWa6wiQA,14655
186
- webscout/Provider/OPENAI/exachat.py,sha256=QOP7stAP48dzukkBHBBq9KY03ENv5sKybAqPj8JuygI,15185
187
- webscout/Provider/OPENAI/flowith.py,sha256=XIwvmL03HMcc0hXm4_wagXNYhYSltMzySVb919Jfgx0,6290
188
- webscout/Provider/OPENAI/freeaichat.py,sha256=RF61DP1rzVILDNrMLeh13kFBMTkGM0vGsbQ1vluOnkM,11782
189
- webscout/Provider/OPENAI/glider.py,sha256=EdAocgS4TEydqc32OT4Tv6aZ_6HgPnxuZzJTTrSqW-s,13311
174
+ webscout/Provider/OPENAI/TwoAI.py,sha256=seRAKgp10vg5ilacJ6f5kfXytVshM1Bx4b1VJvVNk34,14590
175
+ webscout/Provider/OPENAI/__init__.py,sha256=Y5LMQdVAMLzrEDsl8zfaFr-rRuJ5sY2hlik7G9NBL14,1189
176
+ webscout/Provider/OPENAI/ai4chat.py,sha256=I0o7ZnGzG_2-PZfDDEbTMPh5OCx-4LfqfNcUFFdZAGY,11273
177
+ webscout/Provider/OPENAI/api.py,sha256=4llWqSPLQkjz6wpSXIN2Aj1Jy0B2uCQz7XkMHO96foE,47485
178
+ webscout/Provider/OPENAI/base.py,sha256=bfBELRMcFaUrZO2KFUvUO-FK1rMEjOekIPQeFLvPwFc,9527
179
+ webscout/Provider/OPENAI/c4ai.py,sha256=f0rzU1a5B3NJDNfOjvFoyTlDdmwuwL_3NfFr2uKqkxY,15636
180
+ webscout/Provider/OPENAI/chatgpt.py,sha256=OGMexhPL7T6C114tfI4Ne9JUeInxQ8KXq8jvstB5Wwo,20351
181
+ webscout/Provider/OPENAI/chatgptclone.py,sha256=Ek4dCDl0wjfamtLlU6T9gOfymfRUY7FtLuNWMIvk3TQ,19990
182
+ webscout/Provider/OPENAI/chatsandbox.py,sha256=nmFQdZaj6puw28Hux57f-E8UYqNQnaMnQBOdhnd-ZQY,6999
183
+ webscout/Provider/OPENAI/copilot.py,sha256=6I6BsRTRfYehZxraTf5r0flWUl3-QBwLMVFuc6XWe-Y,9395
184
+ webscout/Provider/OPENAI/deepinfra.py,sha256=-R7jmS2XJE6v6xVln3e4oqq6d-7w-HBzOG6FSaX2YyQ,13986
185
+ webscout/Provider/OPENAI/e2b.py,sha256=G14AEMB-PgMNxMHXr33Jmnolzl86h9W8IBMWEUYkhnE,60813
186
+ webscout/Provider/OPENAI/exaai.py,sha256=D7i2zpxQhjo_LRnO0nzAU651aOWgXM_9_AQjcRX2IY0,15066
187
+ webscout/Provider/OPENAI/exachat.py,sha256=z95aqrunxVNlF_y_REGz_hhxirQP18DrBrGYlabiMlA,15632
188
+ webscout/Provider/OPENAI/flowith.py,sha256=x9pZBfD_RLI1WhSmM8DitkGgcWSbbXzaC18nQUwBh9M,6481
189
+ webscout/Provider/OPENAI/freeaichat.py,sha256=4lReAFaRRWobeH_A8WNcqlaOqA-uc0kWqAa10gocasY,12229
190
+ webscout/Provider/OPENAI/glider.py,sha256=DpVOvgZZQXCuaHJPKGqrvis4EkVlXxX5s207nDz7evE,13758
190
191
  webscout/Provider/OPENAI/groq.py,sha256=if3RBZmFwqSKtYPwlVzK_YGGGlFv4dRxw2obGs8MvRE,14564
191
- webscout/Provider/OPENAI/heckai.py,sha256=CGFsxSPMhOTOljtJEIukmwam-nU_uq4P76sJA58BG7w,11260
192
- webscout/Provider/OPENAI/llmchatco.py,sha256=KX512cUmfqhjs4PyJfyNJ9VVBsVX8qZc21mSZHrSTiw,14995
193
- webscout/Provider/OPENAI/mcpcore.py,sha256=a0Gs21gSqs2gXBgSgqFcqG1UN82bEpDhlHzwbJC3FNY,16868
194
- webscout/Provider/OPENAI/multichat.py,sha256=TjAhsb2rBLwqZrAwwxWM7ZwH2MtnlLQovXQJM_Se2Dg,13864
195
- webscout/Provider/OPENAI/netwrck.py,sha256=9ppH1TnpzomrqAmgoryx600WOLF9H1d8yDI3ObHMFeY,12840
196
- webscout/Provider/OPENAI/oivscode.py,sha256=u0txwHD48_I7ixyGypPtpgIplsF4Yy4qoeIv9pLp8OI,11413
197
- webscout/Provider/OPENAI/opkfc.py,sha256=xDnQXs8WUfYNOaequpxQ0TLzV-Ztbm3upRWZ6SbqRzQ,21011
192
+ webscout/Provider/OPENAI/heckai.py,sha256=br0Zj_rvOCL1w_N3SVltiVlQQQhlCwAb-WOhaFaEwh4,11709
193
+ webscout/Provider/OPENAI/llmchatco.py,sha256=CUcFgZuuV4njk9HEocnCGnLg7zcTB1k1awRJSHX5NFA,15371
194
+ webscout/Provider/OPENAI/mcpcore.py,sha256=9cIelx-TjiFk3fiKVWSFuyyQkJqogKhWveoQ-PmIov8,17313
195
+ webscout/Provider/OPENAI/multichat.py,sha256=r65SxO4GxolYCs5Phoys_1xZtIEqolyW-I539Zj_mXM,13989
196
+ webscout/Provider/OPENAI/netwrck.py,sha256=vWeh8T3VdC4EdD6Rd-9PrdPOFQnl4RRqlBuXlSenvfE,13287
197
+ webscout/Provider/OPENAI/oivscode.py,sha256=Gjw2SETSIkIGREk5BfdEkkQL_RjnI8jFcwxLmUvlzOE,11875
198
+ webscout/Provider/OPENAI/opkfc.py,sha256=LAzGgt87eVpSYNLgfS7drCd2eY779Fe32yuMqgaBmZE,21584
198
199
  webscout/Provider/OPENAI/pydantic_imports.py,sha256=Sg4zmm4xHWGZSsVwtUG9eS24JQLRECNjZLmrwce8ADc,3362
199
- webscout/Provider/OPENAI/scirachat.py,sha256=WR95bLO8kBNS3M3Rtohm1NHoQKu7eQqfK349yrtanOg,18789
200
- webscout/Provider/OPENAI/sonus.py,sha256=mdOWtR6Nel-jtpq9K7zjeYCwFS2FxrcjGMilU-uXkg4,10712
201
- webscout/Provider/OPENAI/standardinput.py,sha256=WnDaBmSH4GtGnPTv5iT1ru-RCN83kx1iSFo65GoMGuU,18876
202
- webscout/Provider/OPENAI/textpollinations.py,sha256=QXC0cEVM-i3RuPC8w8dvEmPEiIdgKIE6RSxXrNBp2o8,12653
203
- webscout/Provider/OPENAI/toolbaz.py,sha256=FZSqX6DLpWtY8FsQnQHiSzmqL9WDHz_NbZ30qo3_7xI,14186
204
- webscout/Provider/OPENAI/typefully.py,sha256=0C5319bpoYNbqTk2lE9mJ7Kj0DkKhB82rfOQNRqsBdU,12523
205
- webscout/Provider/OPENAI/typegpt.py,sha256=6SnJ-6Q6rwjewML2EDabtqPjxV1zoa8Kfe8df-OwGNA,13700
206
- webscout/Provider/OPENAI/uncovrAI.py,sha256=yF9NX4noLW298_6Q2QfvrtJM6ULx6HBiEaiHwnTjhd8,17564
200
+ webscout/Provider/OPENAI/scirachat.py,sha256=ezUpCRUC3d8th-uq6TyToZ9n3vO2cLkdc8bQKIwqf1A,19426
201
+ webscout/Provider/OPENAI/sonus.py,sha256=nRUJkK0T08Ao1WLF5ySmCpfH4x9C8wUXjezW4mygqJo,11159
202
+ webscout/Provider/OPENAI/standardinput.py,sha256=xBHWMRZcPwDJZaQvszaZmKwFzV3wCpwnoynSvsIqhTQ,19547
203
+ webscout/Provider/OPENAI/textpollinations.py,sha256=6KHxk41zvqPqhDNPSASHO-_QzpKPCM6KL4tpchgW3yw,13134
204
+ webscout/Provider/OPENAI/toolbaz.py,sha256=W0FZ2FJEAO2cXVc69-1A2MtQA53Y4Y7izquOhsQBvmc,14623
205
+ webscout/Provider/OPENAI/typefully.py,sha256=yuOf1Idb6LCkK_YT4c9ABnjTuwRzSzffX-OAumSqrJQ,13004
206
+ webscout/Provider/OPENAI/typegpt.py,sha256=AmujoLfxQnBt-2C_aWOnF6ra-xn5WKCASKTRuVjTv8k,14147
207
+ webscout/Provider/OPENAI/uncovrAI.py,sha256=3a6h1ixmLZGglRuPVV1rhoDRgNkxTCVTuklegJ-6JY4,18333
207
208
  webscout/Provider/OPENAI/utils.py,sha256=CsYjGuw05dgwH0kBs0-NXRsOrcW7Xa0hyrOzxlLo4QA,10492
208
- webscout/Provider/OPENAI/venice.py,sha256=S8fLwi1iV-1ch7urABTXZeCJYdIefwgbFPlJ24K5q-g,15694
209
+ webscout/Provider/OPENAI/venice.py,sha256=OLexvhEDEBe0r9mHiclwzDovU8OStQqouUUyeJrEcr0,16141
209
210
  webscout/Provider/OPENAI/wisecat.py,sha256=fvD_Lz1wIpHiWTG2zdA5lr53vR3biHtMJ-1WZbkNnJQ,14071
210
- webscout/Provider/OPENAI/writecream.py,sha256=OZuZf9PhwA1CVgj6YOMGZZX1bBf88FKzY-RM2QV-4vw,6181
211
- webscout/Provider/OPENAI/x0gpt.py,sha256=O7exrq3e00TXUDIx1vaU41XtYwgtgG3YMt0geo6YFPY,12710
212
- webscout/Provider/OPENAI/yep.py,sha256=cKcrt_bKDnYB-cJ0rmh9xEFpjn7MUYEctnjXINQpG84,15524
211
+ webscout/Provider/OPENAI/writecream.py,sha256=c7q42oLXyxb9njsIl3I7Agg_-vFY_biu64U7MfNlKd8,6363
212
+ webscout/Provider/OPENAI/x0gpt.py,sha256=gQ2zzaz-Xc7tx5VJb6OKnSIUUio1xGAvbc8VVwVXhx0,12676
213
+ webscout/Provider/OPENAI/yep.py,sha256=7usplghYdHEEmBZtp2xtb_qSFdLJAvU0GVnM0ceak1c,15505
213
214
  webscout/Provider/TTI/README.md,sha256=v76lwYPMMKKsFyE6IAWISlQ06ergXFIUZrKeKk-RXa0,3040
214
215
  webscout/Provider/TTI/__init__.py,sha256=8Yk672eXLvwPzNu5jqoY99HaW6iSQJclrp6Doi38jM0,158
215
216
  webscout/Provider/TTI/aiarta.py,sha256=XaJoSbWEilsdp-skA8cbYJ7FIvmGrQJUBma01djTj-k,15052
@@ -281,9 +282,9 @@ webscout/zeroart/__init__.py,sha256=3reMOf41PFtYVhq2wjFpJbIIHWRcy63efeUpolWm1P0,
281
282
  webscout/zeroart/base.py,sha256=nkf3WAE3YxKIpOFJ4Xf01T7dyWlbi98F1mIYo6vDux8,2365
282
283
  webscout/zeroart/effects.py,sha256=DOMPCNk-IwhnUrXsYSx5oSWeYQ6KN7T_jZOYdEofyMg,3345
283
284
  webscout/zeroart/fonts.py,sha256=ZiyQqA0BFN2IH5Ldijqe93rTiROmqPgxpeDtUNmmeRw,38812
284
- webscout-8.2.9.dist-info/licenses/LICENSE.md,sha256=hyfFlVn7pWcrvuvs-piB8k4J8DlXdOsYje9RyPxc6Ik,7543
285
- webscout-8.2.9.dist-info/METADATA,sha256=8cHwshLgiHnkC5s-qQTAzeqqLTGNJhnkUn2JJCh54LI,33975
286
- webscout-8.2.9.dist-info/WHEEL,sha256=zaaOINJESkSfm_4HQVc5ssNzHCPXhJm0kEUakpsEHaU,91
287
- webscout-8.2.9.dist-info/entry_points.txt,sha256=vNBz7_evRXZsauyv4kgW3oXUKS3r_yvMa_YP9-FLD8U,119
288
- webscout-8.2.9.dist-info/top_level.txt,sha256=nYIw7OKBQDr_Z33IzZUKidRD3zQEo8jOJYkMVMeN334,9
289
- webscout-8.2.9.dist-info/RECORD,,
285
+ webscout-8.3.dist-info/licenses/LICENSE.md,sha256=hyfFlVn7pWcrvuvs-piB8k4J8DlXdOsYje9RyPxc6Ik,7543
286
+ webscout-8.3.dist-info/METADATA,sha256=GjkxJZaDXwxb-EmtgZbnQnXTO4TOh48pjz06u6hJ-a8,33996
287
+ webscout-8.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
288
+ webscout-8.3.dist-info/entry_points.txt,sha256=vNBz7_evRXZsauyv4kgW3oXUKS3r_yvMa_YP9-FLD8U,119
289
+ webscout-8.3.dist-info/top_level.txt,sha256=nYIw7OKBQDr_Z33IzZUKidRD3zQEo8jOJYkMVMeN334,9
290
+ webscout-8.3.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.8.0)
2
+ Generator: setuptools (80.9.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5