bizyengine 1.2.37__py3-none-any.whl → 1.2.39__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.
@@ -1,7 +1,7 @@
1
1
  from bizyengine.core import BizyAirBaseNode, pop_api_key_and_prompt_id
2
2
 
3
3
  _FACERESTORE_MODELS = [
4
- # "none",
4
+ "none",
5
5
  "codeformer-v0.1.0.pth",
6
6
  # "GFPGANv1.3.onnx",
7
7
  # "GFPGANv1.3.pth",
@@ -7,8 +7,10 @@ from dataclasses import dataclass, field
7
7
  from typing import Any, Dict, List
8
8
 
9
9
  import comfy
10
+ import requests
10
11
 
11
12
  from bizyengine.core.commands.base import Command, Processor # type: ignore
13
+ from bizyengine.core.common import client
12
14
  from bizyengine.core.common.caching import BizyAirTaskCache, CacheConfig
13
15
  from bizyengine.core.common.client import headers, send_request
14
16
  from bizyengine.core.common.env_var import (
@@ -159,6 +161,9 @@ class BizyAirTask:
159
161
 
160
162
 
161
163
  class PromptServer(Command):
164
+ MAX_POLLING_TIME = 60 * 60
165
+ POLLING_INTERVAL = 10
166
+
162
167
  cache_manager: BizyAirTaskCache = BizyAirTaskCache(
163
168
  config=CacheConfig.from_config(config_manager.get_cache_config())
164
169
  )
@@ -178,8 +183,57 @@ class PromptServer(Command):
178
183
  and "task_id" in result.get("data", {})
179
184
  )
180
185
 
186
+ def is_fass_task(self, result: Dict[str, Any]) -> bool:
187
+ return (
188
+ result.get("request_id", None) is not None
189
+ and result.get("query_url", None) is not None
190
+ )
191
+
192
+ def _get_fass_result(self, result: Dict[str, Any]) -> Dict[str, Any]:
193
+ request_id = result.get("request_id", None)
194
+ query_url = f"{BIZYAIR_SERVER_ADDRESS}/supernode/status?request_id={request_id}"
195
+ return self._poll_fass_for_completion(
196
+ query_url,
197
+ )
198
+
199
+ def _poll_fass_for_completion(self, query_url, **kwargs):
200
+ start_time = time.time()
201
+ headers = client.headers(api_key=kwargs.get("api_key", None))
202
+ task_failed, failed_reason = False, None
203
+ while time.time() - start_time < self.MAX_POLLING_TIME and not task_failed:
204
+ try:
205
+ resp_body = client.send_request(
206
+ method="GET", url=query_url, headers=headers
207
+ )
208
+ data = resp_body.get("data", {})
209
+ if data.get("status") == "Succeed":
210
+ result_url = data["data_url"]
211
+ result_resp = requests.get(result_url)
212
+ out = result_resp.json()
213
+ return out
214
+ elif data.get("status") == "Failed":
215
+ task_failed, failed_reason = True, f"Task failed: {data}"
216
+ raise RuntimeError(f"Task failed: {data}")
217
+ time.sleep(self.POLLING_INTERVAL)
218
+ except Exception as e:
219
+ if BIZYAIR_DEBUG:
220
+ print(f"Response error: {e}\n{traceback.format_exc()}")
221
+ time.sleep(self.POLLING_INTERVAL)
222
+
223
+ if task_failed:
224
+ raise RuntimeError(f"Task failed: {failed_reason}")
225
+ raise TimeoutError("Task processing timeout")
226
+
181
227
  def _get_result(self, result: Dict[str, Any], *, cache_key: str = None, **kwargs):
182
228
  try:
229
+ if self.is_fass_task(result):
230
+ self.cache_manager.set(cache_key, result)
231
+ result = self._get_fass_result(result)
232
+ result = result.get("data", {}).get("payload", None)
233
+ assert result is not None, "Output payload should not be None"
234
+ self.cache_manager.set(cache_key, result, overwrite=True)
235
+ return result
236
+
183
237
  response_data = result["data"]
184
238
  if BizyAirTask.check_inputs(result):
185
239
  self.cache_manager.set(cache_key, result)
@@ -132,6 +132,8 @@ def process_response_data(response_data: dict) -> dict:
132
132
  if "result" in response_data:
133
133
  try:
134
134
  msg = json.loads(response_data["result"])
135
+ if "request_id" in response_data and "request_id" not in msg:
136
+ msg["request_id"] = response_data["request_id"]
135
137
  except json.JSONDecodeError:
136
138
  raise ValueError(f"Failed to decode JSON from response. {response_data=}")
137
139
  else:
@@ -161,6 +163,7 @@ def send_request(
161
163
  )
162
164
  with urllib.request.urlopen(req) as response:
163
165
  response_data = response.read().decode("utf-8")
166
+
164
167
  except urllib.error.URLError as e:
165
168
  error_message = str(e)
166
169
  response_body = e.read().decode("utf-8") if hasattr(e, "read") else "N/A"
@@ -1,45 +1,56 @@
1
1
  {
2
- "checkpoints": [{
3
- "sdxl": [
4
- "counterfeitxl_v25.safetensors",
5
- "dreamshaperXL_lightningDPMSDE.safetensors",
6
- "dreamshaperXL_v21TurboDPMSDE.safetensors",
7
- "HelloWorldXL_v70.safetensors",
8
- "juggernautXL_v9Rdphoto2Lightning.safetensors",
9
- "Juggernaut-XL_v9_RunDiffusionPhoto_v2.safetensors",
10
- "Juggernaut_X_RunDiffusion_Hyper.safetensors",
11
- "mannEDreams_v004.safetensors",
12
- "realisticStockPhoto_v20.safetensors",
13
- "samaritan3dCartoon_v40SDXL.safetensors"
14
- ],
15
- "sd15": [
16
- "dreamshaper_8.safetensors"
17
- ]
18
- },
19
- "sd3.5_large.safetensors", "sd3.5_large_turbo.safetensors"],
20
- "clip_vision": [{
21
- "models": [
22
- "CLIP-ViT-H-14-laion2B-s32B-b79K.safetensors"
23
- ],
24
- "kolors": [
25
- "pytorch_model.bin"
26
- ]
27
- }, "sigclip_vision_patch14_384.safetensors"],
28
- "controlnet": [{
29
- "kolors": [
30
- "Kolors-ControlNet-Canny.safetensors",
31
- "Kolors-ControlNet-Depth.safetensors"
32
- ],
33
- "sdxl": [
34
- "diffusion_pytorch_model_promax.safetensors"
35
- ],
36
- "sd15": [
37
- "control_v11f1e_sd15_tile.pth"
38
- ],
39
- "instantid": [
40
- "diffusion_pytorch_model.safetensors"
41
- ]
42
- }, "sd3.5_large_controlnet_blur.safetensors", "sd3.5_large_controlnet_canny.safetensors", "sd3.5_large_controlnet_depth.safetensors"],
2
+ "checkpoints": [
3
+ {
4
+ "sdxl": [
5
+ "counterfeitxl_v25.safetensors",
6
+ "dreamshaperXL_lightningDPMSDE.safetensors",
7
+ "dreamshaperXL_v21TurboDPMSDE.safetensors",
8
+ "HelloWorldXL_v70.safetensors",
9
+ "juggernautXL_v9Rdphoto2Lightning.safetensors",
10
+ "Juggernaut-XL_v9_RunDiffusionPhoto_v2.safetensors",
11
+ "Juggernaut_X_RunDiffusion_Hyper.safetensors",
12
+ "mannEDreams_v004.safetensors",
13
+ "realisticStockPhoto_v20.safetensors",
14
+ "samaritan3dCartoon_v40SDXL.safetensors"
15
+ ],
16
+ "sd15": [
17
+ "dreamshaper_8.safetensors"
18
+ ]
19
+ },
20
+ "sd3.5_large.safetensors",
21
+ "sd3.5_large_turbo.safetensors"
22
+ ],
23
+ "clip_vision": [
24
+ {
25
+ "models": [
26
+ "CLIP-ViT-H-14-laion2B-s32B-b79K.safetensors"
27
+ ],
28
+ "kolors": [
29
+ "pytorch_model.bin"
30
+ ]
31
+ },
32
+ "sigclip_vision_patch14_384.safetensors"
33
+ ],
34
+ "controlnet": [
35
+ {
36
+ "kolors": [
37
+ "Kolors-ControlNet-Canny.safetensors",
38
+ "Kolors-ControlNet-Depth.safetensors"
39
+ ],
40
+ "sdxl": [
41
+ "diffusion_pytorch_model_promax.safetensors"
42
+ ],
43
+ "sd15": [
44
+ "control_v11f1e_sd15_tile.pth"
45
+ ],
46
+ "instantid": [
47
+ "diffusion_pytorch_model.safetensors"
48
+ ]
49
+ },
50
+ "sd3.5_large_controlnet_blur.safetensors",
51
+ "sd3.5_large_controlnet_canny.safetensors",
52
+ "sd3.5_large_controlnet_depth.safetensors"
53
+ ],
43
54
  "ipadapter": {
44
55
  "kolors": [
45
56
  "ip_adapter_plus_general.bin"
@@ -54,36 +65,53 @@
54
65
  "meijia_flux_lora_rank16_bf16.safetensors"
55
66
  ]
56
67
  },
57
- "unet": ["shuttle-3.1-aesthetic.safetensors",
58
- "flux1-dev-kontext_fp8_scaled.safetensors", "flux1-dev-kontext-onediff.safetensors", {
59
- "kolors": [
60
- "Kolors-Inpainting.safetensors",
61
- "Kolors.safetensors"
62
- ],
63
- "flux": [
64
- "flux1-schnell.sft",
65
- "flux1-dev.sft",
66
- "pixelwave-flux1-dev.safetensors",
67
- "flux1-canny-dev.safetensors",
68
- "flux1-depth-dev.safetensors",
69
- "flux1-fill-dev.safetensors"
70
- ]
71
- }],
72
- "vae": [{
73
- "sdxl": [
74
- "sdxl_vae.safetensors"
75
- ],
76
- "flux": [
77
- "ae.sft"
78
- ]
79
- }, "flux.1-canny-vae.safetensors", "flux.1-depth-vae.safetensors", "flux.1-fill-vae.safetensors"],
68
+ "unet": [
69
+ "shuttle-3.1-aesthetic.safetensors",
70
+ "wan2.2_t2v_high_noise_14B_fp8_scaled.safetensors",
71
+ "wan2.2_t2v_low_noise_14B_fp8_scaled.safetensors",
72
+ "flux1-dev-kontext_fp8_scaled.safetensors",
73
+ "flux1-dev-kontext-onediff.safetensors",
74
+ {
75
+ "kolors": [
76
+ "Kolors-Inpainting.safetensors",
77
+ "Kolors.safetensors"
78
+ ],
79
+ "flux": [
80
+ "flux1-schnell.sft",
81
+ "flux1-dev.sft",
82
+ "pixelwave-flux1-dev.safetensors",
83
+ "flux1-canny-dev.safetensors",
84
+ "flux1-depth-dev.safetensors",
85
+ "flux1-fill-dev.safetensors"
86
+ ]
87
+ }
88
+ ],
89
+ "vae": [
90
+ {
91
+ "sdxl": [
92
+ "sdxl_vae.safetensors"
93
+ ],
94
+ "flux": [
95
+ "ae.sft"
96
+ ]
97
+ },
98
+ "flux.1-canny-vae.safetensors",
99
+ "flux.1-depth-vae.safetensors",
100
+ "flux.1-fill-vae.safetensors",
101
+ "wan_2.1_vae.safetensors"
102
+ ],
80
103
  "clip": [
81
104
  "clip_l.safetensors",
82
105
  "clip_g.safetensors",
83
106
  "t5xxl_fp16.safetensors",
84
- "t5xxl_fp8_e4m3fn.safetensors"
107
+ "t5xxl_fp8_e4m3fn.safetensors",
108
+ "umt5_xxl_fp8_e4m3fn_scaled.safetensors"
109
+ ],
110
+ "text_encoders": [
111
+ "t5xxl_fp16.safetensors",
112
+ "clip_l.safetensors",
113
+ "umt5_xxl_fp8_e4m3fn_scaled.safetensors"
85
114
  ],
86
- "text_encoders":["t5xxl_fp16.safetensors","clip_l.safetensors"],
87
115
  "upscale_models": [
88
116
  "4x_NMKD-Siax_200k.pth",
89
117
  "RealESRGAN_x4plus.pth",
@@ -436,3 +436,36 @@ model_rules:
436
436
  - class_type: "ReActorFaceSwap"
437
437
  - class_type: "ReActorFaceSwapOpt"
438
438
  - class_type: "ReActorRestoreFace"
439
+
440
+ - mode_type: Wan2.2-T2V
441
+ base_model: Wan
442
+ describe: Wan
443
+ score: 1
444
+ route: /supernode/bizyair-wan-2.2-t2v
445
+ nodes:
446
+ - class_type: 'UNETLoader'
447
+ inputs:
448
+ unet_name:
449
+ - ^wan2.2_t2v_high_noise_14B_fp8_scaled.safetensors$
450
+
451
+ - mode_type: Wan2.2-T2V
452
+ base_model: Wan
453
+ describe: Wan
454
+ score: 1
455
+ route: /supernode/bizyair-wan-2.2-t2v
456
+ nodes:
457
+ - class_type: 'UNETLoader'
458
+ inputs:
459
+ unet_name:
460
+ - ^wan2.2_t2v_low_noise_14B_fp8_scaled.safetensors$
461
+
462
+ - mode_type: Wan2.2-T2V-VAE
463
+ base_model: Wan
464
+ describe: Wan
465
+ score: 1
466
+ route: /supernode/bizyair-wan-2.2-t2v
467
+ nodes:
468
+ - class_type: 'VAELoader'
469
+ inputs:
470
+ vae_name:
471
+ - ^wan_2.1_vae.safetensors$
bizyengine/misc/nodes.py CHANGED
@@ -761,7 +761,9 @@ class UNETLoader(BizyAirBaseNode):
761
761
  # "default": "",
762
762
  # },
763
763
  # ),
764
- "weight_dtype": (["default", "fp8_e4m3fn", "fp8_e5m2"],),
764
+ "weight_dtype": (
765
+ ["default", "fp8_e4m3fn", "fp8_e5m2", "fp8_e4m3fn_fast"],
766
+ ),
765
767
  }
766
768
  }
767
769
 
@@ -1001,6 +1003,41 @@ class DualCLIPLoader(BizyAirBaseNode):
1001
1003
  # return (model,)
1002
1004
 
1003
1005
 
1006
+ class CLIPLoader(BizyAirBaseNode):
1007
+ @classmethod
1008
+ def INPUT_TYPES(s):
1009
+ return {
1010
+ "required": {
1011
+ "clip_name": (folder_paths.get_filename_list("text_encoders"),),
1012
+ "type": (
1013
+ [
1014
+ "stable_diffusion",
1015
+ "stable_cascade",
1016
+ "sd3",
1017
+ "stable_audio",
1018
+ "mochi",
1019
+ "ltxv",
1020
+ "pixart",
1021
+ "cosmos",
1022
+ "lumina2",
1023
+ "wan",
1024
+ "hidream",
1025
+ "chroma",
1026
+ "ace",
1027
+ "omnigen2",
1028
+ ],
1029
+ ),
1030
+ },
1031
+ "optional": {
1032
+ "device": (["default", "cpu"], {"advanced": True}),
1033
+ },
1034
+ }
1035
+
1036
+ RETURN_TYPES = ("CLIP",)
1037
+ # FUNCTION = "load_clip"
1038
+ CATEGORY = "advanced/loaders"
1039
+
1040
+
1004
1041
  class KSamplerSelect(BizyAirBaseNode):
1005
1042
  @classmethod
1006
1043
  def INPUT_TYPES(s):
bizyengine/version.txt CHANGED
@@ -1 +1 @@
1
- 1.2.37
1
+ 1.2.39
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bizyengine
3
- Version: 1.2.37
3
+ Version: 1.2.39
4
4
  Summary: [a/BizyAir](https://github.com/siliconflow/BizyAir) Comfy Nodes that can run in any environment.
5
5
  Author-email: SiliconFlow <yaochi@siliconflow.cn>
6
6
  Project-URL: Repository, https://github.com/siliconflow/BizyAir
@@ -1,5 +1,5 @@
1
1
  bizyengine/__init__.py,sha256=GP9V-JM07fz7uv_qTB43QEA2rKdrVJxi5I7LRnn_3ZQ,914
2
- bizyengine/version.txt,sha256=zNmHiYPF0_GTeNWPvfhfA7ylwXeApdKIpM69CYGIy_A,7
2
+ bizyengine/version.txt,sha256=9oNira_RnApeSDu5Wu73K540tdB-LBj2UA4KTjIiSMM,7
3
3
  bizyengine/bizy_server/__init__.py,sha256=SP9oSblnPo4KQyh7yOGD26YCskFAcQHAZy04nQBNRIw,200
4
4
  bizyengine/bizy_server/api_client.py,sha256=t6cwob7hs993oy5WdFcjKtIzfi3S_eUhODdDVv_Hedo,43822
5
5
  bizyengine/bizy_server/errno.py,sha256=1UiFmE2U7r7hCHgsw4-p_YL0VCmTJc9NyYDEbhkanaY,16336
@@ -28,7 +28,7 @@ bizyengine/bizyair_extras/nodes_ip2p.py,sha256=GSEFJvrs4f2tv0xwYkWqc8uhsXrzAJVPv
28
28
  bizyengine/bizyair_extras/nodes_janus_pro.py,sha256=hAdMsS09RkRHZn9cNwpmyOaH7ODOMjVt9SbBsD-UvbM,2665
29
29
  bizyengine/bizyair_extras/nodes_model_advanced.py,sha256=RR2pzvlNW7NEcgtRcQSLZ8Vy7_ygA0NOZDjd7ZfzX5k,1756
30
30
  bizyengine/bizyair_extras/nodes_nunchaku.py,sha256=E0E8f9LmEzfn4a_LdWIUBatV9n-8RFLSYlPb90SKKxs,8222
31
- bizyengine/bizyair_extras/nodes_reactor.py,sha256=VphkM941bGEMNVQUw4rqKxue9ycS24CV8O0cxIMLmM4,8159
31
+ bizyengine/bizyair_extras/nodes_reactor.py,sha256=hbm0HGQWAr_qMcWjp0nMZMtF4mUjTfPw8yK1rq1miAI,8157
32
32
  bizyengine/bizyair_extras/nodes_sam2.py,sha256=JTrB7ELwhw6_uOjykRWK9KyOqpYoOtJiGKMxFUbHnNQ,10554
33
33
  bizyengine/bizyair_extras/nodes_sd3.py,sha256=lZCxj0IFmuxk1fZTDcRKgVV5QWHjkUdpR4w9-DZbMf4,1727
34
34
  bizyengine/bizyair_extras/nodes_segment_anything.py,sha256=x1ei2UggHnB8T6aUtK_ZcUehMALEyLUnDoD5SNJCbFU,7249
@@ -56,15 +56,15 @@ bizyengine/core/commands/invoker.py,sha256=8wcIMd8k44o96LAvxFrIiKOlVtf1MW-AcMDXs
56
56
  bizyengine/core/commands/processors/model_hosting_processor.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
57
57
  bizyengine/core/commands/processors/prompt_processor.py,sha256=jG0EuphvtycH5Dm-frBGtlIcxkTCXiFMQ1vFMvi_Re0,4963
58
58
  bizyengine/core/commands/servers/model_server.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
59
- bizyengine/core/commands/servers/prompt_server.py,sha256=f5qTTyoe7_cFJ8xESG--mvP2axATKUgHyTBeV6JrBCI,8529
59
+ bizyengine/core/commands/servers/prompt_server.py,sha256=0QjpAB1JG90yq4a8zvzPtUfqALd5J7Mq69W4I4Ma6xQ,10866
60
60
  bizyengine/core/common/__init__.py,sha256=GicZw6YeAZk1PsKmFDt9dm1F75zPUlpia9Q_ki5vW1Y,179
61
61
  bizyengine/core/common/caching.py,sha256=hRNsSrfNxgc1zzvBzLVjMY0iMkKqA0TBCr-iYhEpzik,6946
62
- bizyengine/core/common/client.py,sha256=1Ka8DIjbmD9Gme9c_Q1zwXXueSCP3_OSdEDyGYEol50,10396
62
+ bizyengine/core/common/client.py,sha256=mP24Hxe_y20VXxVFdUz6HtLBzATUS4d8nr-rNf2KNwc,10535
63
63
  bizyengine/core/common/env_var.py,sha256=1EAW3gOXY2bKouCqrGa583vTJRdDasQ1IsFTnzDg7Dk,3450
64
64
  bizyengine/core/common/utils.py,sha256=bm-XmSPy83AyjD0v5EfWp6jiO6_5p7rkZ_HQAuVmgmo,3086
65
65
  bizyengine/core/configs/conf.py,sha256=D_UWG9SSJnK5EhbrfNFryJQ8hUwwdvhOGlq1TielwpI,3830
66
- bizyengine/core/configs/models.json,sha256=NqYVmp-ICpr1vFgafWjJMu5dyuRt9ffVUJmov3_-xRY,2746
67
- bizyengine/core/configs/models.yaml,sha256=0fNJo2VsAaEonhPpUdKesP1hiKkjMs-DrkuvmkBB8es,10668
66
+ bizyengine/core/configs/models.json,sha256=rmH1BQp-j4nWiSo22QJhGIIb3y_Yycfmpkhseq6dgD8,3190
67
+ bizyengine/core/configs/models.yaml,sha256=SgCyNGE-ia5GDgROF9ATDE6YdLYzqoNuVsKP0XjXJ8w,11442
68
68
  bizyengine/core/path_utils/__init__.py,sha256=JVpqNHgaKiEtTI8_r47af8GtWHxrtOockQ6Qpzp9_MQ,260
69
69
  bizyengine/core/path_utils/path_manager.py,sha256=tRVAcpsYvfWD-tK7khLvNCZayB0wpU9L0tRTH4ZESzM,10549
70
70
  bizyengine/core/path_utils/utils.py,sha256=kQfPQjGU27qF9iyzRxLSRg5cMsd-VixuCUldART7cgY,2394
@@ -72,14 +72,14 @@ bizyengine/misc/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
72
72
  bizyengine/misc/auth.py,sha256=DwKy4en1a58RgO5TRdE0EMjjEjlxmerNHAOMNVZRacE,2672
73
73
  bizyengine/misc/llm.py,sha256=d0GEnY7CzDZ9AokBkOsshZ-KC7KpR_VzEcBvHTfwVoc,13528
74
74
  bizyengine/misc/mzkolors.py,sha256=xjJZ5Ct5Wh3WxSOK-ojX7a_fPvl_hA8qWIDKFUwBuvk,2827
75
- bizyengine/misc/nodes.py,sha256=e5TkJAFRPXT7OtLt1Lwnk7_tpu4q2zgiWNWDClRaIhA,43655
75
+ bizyengine/misc/nodes.py,sha256=DnHqxurkhSrsFie9a0aupKA05NUA_E5IZxq19HDzMCk,44723
76
76
  bizyengine/misc/nodes_controlnet_aux.py,sha256=w7rASZmnBqhZCalDd7oVPjJpx6b31sPFxqlo3aWoAHc,16399
77
77
  bizyengine/misc/nodes_controlnet_union_sdxl.py,sha256=fYyu_XMY7mcX1Ad9x30q1tYB8mmCurMY48lCEylKrA4,5831
78
78
  bizyengine/misc/route_sam.py,sha256=-bMIR2QalfnszipGxSxvDAHGJa5gPSrjkYPb5baaRg4,1561
79
79
  bizyengine/misc/segment_anything.py,sha256=wNKYwlYPMszfwj23524geFZJjZaG4eye65SGaUnh77I,8941
80
80
  bizyengine/misc/supernode.py,sha256=STN9gaxfTSErH8OiHeZa47d8z-G9S0I7fXuJvHQOBFM,4532
81
81
  bizyengine/misc/utils.py,sha256=deQjBgLAkxIr-NaOMm77TcgBT3ExAp0MFm5ehUJ3CGs,6829
82
- bizyengine-1.2.37.dist-info/METADATA,sha256=V_kjR253UcajGPvUnh5vtmqSbqPw8CKN2F11HB7P0F8,675
83
- bizyengine-1.2.37.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
84
- bizyengine-1.2.37.dist-info/top_level.txt,sha256=2zapzqxX-we5cRyJkGf9bd5JinRtXp3-_uDI-xCAnc0,11
85
- bizyengine-1.2.37.dist-info/RECORD,,
82
+ bizyengine-1.2.39.dist-info/METADATA,sha256=Bp5tyJOcAiD4ubGW7LloYfZqK3ft46RxeYyiGh3CJ8M,675
83
+ bizyengine-1.2.39.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
84
+ bizyengine-1.2.39.dist-info/top_level.txt,sha256=2zapzqxX-we5cRyJkGf9bd5JinRtXp3-_uDI-xCAnc0,11
85
+ bizyengine-1.2.39.dist-info/RECORD,,