anyscale 0.25.0__py3-none-any.whl → 0.25.2__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.
- anyscale/__init__.py +10 -0
- anyscale/_private/anyscale_client/anyscale_client.py +35 -9
- anyscale/_private/anyscale_client/common.py +32 -3
- anyscale/_private/anyscale_client/fake_anyscale_client.py +69 -6
- anyscale/_private/docgen/__main__.py +9 -2
- anyscale/_private/docgen/api.md +13 -0
- anyscale/_private/docgen/models.md +3 -3
- anyscale/client/README.md +4 -0
- anyscale/client/openapi_client/__init__.py +2 -0
- anyscale/client/openapi_client/api/default_api.py +233 -0
- anyscale/client/openapi_client/models/__init__.py +2 -0
- anyscale/client/openapi_client/models/baseimagesenum.py +43 -1
- anyscale/client/openapi_client/models/decorated_interactive_session.py +1 -57
- anyscale/client/openapi_client/models/decorated_job.py +1 -57
- anyscale/client/openapi_client/models/decorated_job_submission.py +1 -29
- anyscale/client/openapi_client/models/decorated_production_job.py +1 -29
- anyscale/client/openapi_client/models/decorated_session.py +1 -57
- anyscale/client/openapi_client/models/decorated_unified_job.py +1 -30
- anyscale/client/openapi_client/models/ha_jobs_sort_field.py +1 -2
- anyscale/client/openapi_client/models/internal_production_job.py +1 -29
- anyscale/client/openapi_client/models/jobs_sort_field.py +1 -2
- anyscale/client/openapi_client/models/serve_deployment_fast_api_docs_status.py +123 -0
- anyscale/client/openapi_client/models/serve_deployment_state.py +2 -1
- anyscale/client/openapi_client/models/servedeploymentfastapidocsstatus_response.py +121 -0
- anyscale/client/openapi_client/models/sessions_sort_field.py +1 -2
- anyscale/client/openapi_client/models/supportedbaseimagesenum.py +43 -1
- anyscale/client/openapi_client/models/unified_job_sort_field.py +1 -2
- anyscale/commands/cloud_commands.py +25 -8
- anyscale/commands/service_account_commands.py +65 -8
- anyscale/controllers/cloud_controller.py +29 -21
- anyscale/controllers/cluster_controller.py +1 -9
- anyscale/controllers/job_controller.py +0 -3
- anyscale/resource_quota/_private/resource_quota_sdk.py +15 -6
- anyscale/sdk/anyscale_client/api/default_api.py +119 -0
- anyscale/sdk/anyscale_client/models/baseimagesenum.py +43 -1
- anyscale/sdk/anyscale_client/models/jobs_sort_field.py +1 -2
- anyscale/sdk/anyscale_client/models/supportedbaseimagesenum.py +43 -1
- anyscale/service_account/__init__.py +88 -0
- anyscale/service_account/_private/service_account_sdk.py +101 -0
- anyscale/service_account/commands.py +147 -0
- anyscale/service_account/models.py +66 -0
- anyscale/shared_anyscale_utils/latest_ray_version.py +1 -1
- anyscale/shared_anyscale_utils/utils/id_gen.py +1 -0
- anyscale/util.py +8 -0
- anyscale/version.py +1 -1
- {anyscale-0.25.0.dist-info → anyscale-0.25.2.dist-info}/METADATA +1 -1
- {anyscale-0.25.0.dist-info → anyscale-0.25.2.dist-info}/RECORD +52 -47
- anyscale/controllers/service_account_controller.py +0 -168
- {anyscale-0.25.0.dist-info → anyscale-0.25.2.dist-info}/LICENSE +0 -0
- {anyscale-0.25.0.dist-info → anyscale-0.25.2.dist-info}/NOTICE +0 -0
- {anyscale-0.25.0.dist-info → anyscale-0.25.2.dist-info}/WHEEL +0 -0
- {anyscale-0.25.0.dist-info → anyscale-0.25.2.dist-info}/entry_points.txt +0 -0
- {anyscale-0.25.0.dist-info → anyscale-0.25.2.dist-info}/top_level.txt +0 -0
@@ -192,6 +192,12 @@ class SUPPORTEDBASEIMAGESENUM(object):
|
|
192
192
|
RAY_ML_2_40_0_PY311_GPU = "anyscale/ray-ml:2.40.0-py311-gpu"
|
193
193
|
RAY_ML_2_40_0_PY39_CPU = "anyscale/ray-ml:2.40.0-py39-cpu"
|
194
194
|
RAY_ML_2_40_0_PY39_GPU = "anyscale/ray-ml:2.40.0-py39-gpu"
|
195
|
+
RAY_ML_2_41_0_PY310_CPU = "anyscale/ray-ml:2.41.0-py310-cpu"
|
196
|
+
RAY_ML_2_41_0_PY310_GPU = "anyscale/ray-ml:2.41.0-py310-gpu"
|
197
|
+
RAY_ML_2_41_0_PY311_CPU = "anyscale/ray-ml:2.41.0-py311-cpu"
|
198
|
+
RAY_ML_2_41_0_PY311_GPU = "anyscale/ray-ml:2.41.0-py311-gpu"
|
199
|
+
RAY_ML_2_41_0_PY39_CPU = "anyscale/ray-ml:2.41.0-py39-cpu"
|
200
|
+
RAY_ML_2_41_0_PY39_GPU = "anyscale/ray-ml:2.41.0-py39-gpu"
|
195
201
|
RAY_ML_2_5_0_PY310_CPU = "anyscale/ray-ml:2.5.0-py310-cpu"
|
196
202
|
RAY_ML_2_5_0_PY310_GPU = "anyscale/ray-ml:2.5.0-py310-gpu"
|
197
203
|
RAY_ML_2_5_0_PY37_CPU = "anyscale/ray-ml:2.5.0-py37-cpu"
|
@@ -1084,6 +1090,42 @@ class SUPPORTEDBASEIMAGESENUM(object):
|
|
1084
1090
|
RAY_2_40_0_SLIM_PY39_CU118 = "anyscale/ray:2.40.0-slim-py39-cu118"
|
1085
1091
|
RAY_2_40_0_SLIM_PY39_CU121 = "anyscale/ray:2.40.0-slim-py39-cu121"
|
1086
1092
|
RAY_2_40_0_SLIM_PY39_CU123 = "anyscale/ray:2.40.0-slim-py39-cu123"
|
1093
|
+
RAY_2_41_0_PY310 = "anyscale/ray:2.41.0-py310"
|
1094
|
+
RAY_2_41_0_PY310_CU117 = "anyscale/ray:2.41.0-py310-cu117"
|
1095
|
+
RAY_2_41_0_PY310_CU118 = "anyscale/ray:2.41.0-py310-cu118"
|
1096
|
+
RAY_2_41_0_PY310_CU121 = "anyscale/ray:2.41.0-py310-cu121"
|
1097
|
+
RAY_2_41_0_PY310_CU123 = "anyscale/ray:2.41.0-py310-cu123"
|
1098
|
+
RAY_2_41_0_PY311 = "anyscale/ray:2.41.0-py311"
|
1099
|
+
RAY_2_41_0_PY311_CU117 = "anyscale/ray:2.41.0-py311-cu117"
|
1100
|
+
RAY_2_41_0_PY311_CU118 = "anyscale/ray:2.41.0-py311-cu118"
|
1101
|
+
RAY_2_41_0_PY311_CU121 = "anyscale/ray:2.41.0-py311-cu121"
|
1102
|
+
RAY_2_41_0_PY311_CU123 = "anyscale/ray:2.41.0-py311-cu123"
|
1103
|
+
RAY_2_41_0_PY312 = "anyscale/ray:2.41.0-py312"
|
1104
|
+
RAY_2_41_0_PY312_CU117 = "anyscale/ray:2.41.0-py312-cu117"
|
1105
|
+
RAY_2_41_0_PY312_CU118 = "anyscale/ray:2.41.0-py312-cu118"
|
1106
|
+
RAY_2_41_0_PY312_CU121 = "anyscale/ray:2.41.0-py312-cu121"
|
1107
|
+
RAY_2_41_0_PY312_CU123 = "anyscale/ray:2.41.0-py312-cu123"
|
1108
|
+
RAY_2_41_0_PY39 = "anyscale/ray:2.41.0-py39"
|
1109
|
+
RAY_2_41_0_PY39_CU117 = "anyscale/ray:2.41.0-py39-cu117"
|
1110
|
+
RAY_2_41_0_PY39_CU118 = "anyscale/ray:2.41.0-py39-cu118"
|
1111
|
+
RAY_2_41_0_PY39_CU121 = "anyscale/ray:2.41.0-py39-cu121"
|
1112
|
+
RAY_2_41_0_PY39_CU123 = "anyscale/ray:2.41.0-py39-cu123"
|
1113
|
+
RAY_2_41_0_SLIM_PY310 = "anyscale/ray:2.41.0-slim-py310"
|
1114
|
+
RAY_2_41_0_SLIM_PY310_CU118 = "anyscale/ray:2.41.0-slim-py310-cu118"
|
1115
|
+
RAY_2_41_0_SLIM_PY310_CU121 = "anyscale/ray:2.41.0-slim-py310-cu121"
|
1116
|
+
RAY_2_41_0_SLIM_PY310_CU123 = "anyscale/ray:2.41.0-slim-py310-cu123"
|
1117
|
+
RAY_2_41_0_SLIM_PY311 = "anyscale/ray:2.41.0-slim-py311"
|
1118
|
+
RAY_2_41_0_SLIM_PY311_CU118 = "anyscale/ray:2.41.0-slim-py311-cu118"
|
1119
|
+
RAY_2_41_0_SLIM_PY311_CU121 = "anyscale/ray:2.41.0-slim-py311-cu121"
|
1120
|
+
RAY_2_41_0_SLIM_PY311_CU123 = "anyscale/ray:2.41.0-slim-py311-cu123"
|
1121
|
+
RAY_2_41_0_SLIM_PY312 = "anyscale/ray:2.41.0-slim-py312"
|
1122
|
+
RAY_2_41_0_SLIM_PY312_CU118 = "anyscale/ray:2.41.0-slim-py312-cu118"
|
1123
|
+
RAY_2_41_0_SLIM_PY312_CU121 = "anyscale/ray:2.41.0-slim-py312-cu121"
|
1124
|
+
RAY_2_41_0_SLIM_PY312_CU123 = "anyscale/ray:2.41.0-slim-py312-cu123"
|
1125
|
+
RAY_2_41_0_SLIM_PY39 = "anyscale/ray:2.41.0-slim-py39"
|
1126
|
+
RAY_2_41_0_SLIM_PY39_CU118 = "anyscale/ray:2.41.0-slim-py39-cu118"
|
1127
|
+
RAY_2_41_0_SLIM_PY39_CU121 = "anyscale/ray:2.41.0-slim-py39-cu121"
|
1128
|
+
RAY_2_41_0_SLIM_PY39_CU123 = "anyscale/ray:2.41.0-slim-py39-cu123"
|
1087
1129
|
RAY_2_5_0_PY310 = "anyscale/ray:2.5.0-py310"
|
1088
1130
|
RAY_2_5_0_PY310_CU101 = "anyscale/ray:2.5.0-py310-cu101"
|
1089
1131
|
RAY_2_5_0_PY310_CU102 = "anyscale/ray:2.5.0-py310-cu102"
|
@@ -1501,7 +1543,7 @@ class SUPPORTEDBASEIMAGESENUM(object):
|
|
1501
1543
|
RAY_NIGHTLY_PY39_CU121 = "anyscale/ray:nightly-py39-cu121"
|
1502
1544
|
RAY_NIGHTLY_PY39_CU123 = "anyscale/ray:nightly-py39-cu123"
|
1503
1545
|
|
1504
|
-
allowable_values = [RAY_ML_2_0_0_PY37_CPU, RAY_ML_2_0_0_PY37_GPU, RAY_ML_2_0_0_PY38_CPU, RAY_ML_2_0_0_PY38_GPU, RAY_ML_2_0_1_PY37_CPU, RAY_ML_2_0_1_PY37_GPU, RAY_ML_2_0_1_PY38_CPU, RAY_ML_2_0_1_PY38_GPU, RAY_ML_2_1_0_PY37_CPU, RAY_ML_2_1_0_PY37_GPU, RAY_ML_2_1_0_PY38_CPU, RAY_ML_2_1_0_PY38_GPU, RAY_ML_2_10_0_PY310_CPU, RAY_ML_2_10_0_PY310_GPU, RAY_ML_2_10_0_PY38_CPU, RAY_ML_2_10_0_PY38_GPU, RAY_ML_2_10_0_PY39_CPU, RAY_ML_2_10_0_PY39_GPU, RAY_ML_2_11_0_PY310_CPU, RAY_ML_2_11_0_PY310_GPU, RAY_ML_2_11_0_PY311_CPU, RAY_ML_2_11_0_PY311_GPU, RAY_ML_2_11_0_PY39_CPU, RAY_ML_2_11_0_PY39_GPU, RAY_ML_2_12_0_PY310_CPU, RAY_ML_2_12_0_PY310_GPU, RAY_ML_2_12_0_PY311_CPU, RAY_ML_2_12_0_PY311_GPU, RAY_ML_2_12_0_PY39_CPU, RAY_ML_2_12_0_PY39_GPU, RAY_ML_2_2_0_PY310_CPU, RAY_ML_2_2_0_PY310_GPU, RAY_ML_2_2_0_PY37_CPU, RAY_ML_2_2_0_PY37_GPU, RAY_ML_2_2_0_PY38_CPU, RAY_ML_2_2_0_PY38_GPU, RAY_ML_2_2_0_PY39_CPU, RAY_ML_2_2_0_PY39_GPU, RAY_ML_2_20_0_PY310_CPU, RAY_ML_2_20_0_PY310_GPU, RAY_ML_2_20_0_PY311_CPU, RAY_ML_2_20_0_PY311_GPU, RAY_ML_2_20_0_PY39_CPU, RAY_ML_2_20_0_PY39_GPU, RAY_ML_2_21_0_PY310_CPU, RAY_ML_2_21_0_PY310_GPU, RAY_ML_2_21_0_PY311_CPU, RAY_ML_2_21_0_PY311_GPU, RAY_ML_2_21_0_PY39_CPU, RAY_ML_2_21_0_PY39_GPU, RAY_ML_2_22_0_PY310_CPU, RAY_ML_2_22_0_PY310_GPU, RAY_ML_2_22_0_PY311_CPU, RAY_ML_2_22_0_PY311_GPU, RAY_ML_2_22_0_PY39_CPU, RAY_ML_2_22_0_PY39_GPU, RAY_ML_2_23_0_PY310_CPU, RAY_ML_2_23_0_PY310_GPU, RAY_ML_2_23_0_PY311_CPU, RAY_ML_2_23_0_PY311_GPU, RAY_ML_2_23_0_PY39_CPU, RAY_ML_2_23_0_PY39_GPU, RAY_ML_2_24_0_PY310_CPU, RAY_ML_2_24_0_PY310_GPU, RAY_ML_2_24_0_PY311_CPU, RAY_ML_2_24_0_PY311_GPU, RAY_ML_2_24_0_PY39_CPU, RAY_ML_2_24_0_PY39_GPU, RAY_ML_2_3_0_PY310_CPU, RAY_ML_2_3_0_PY310_GPU, RAY_ML_2_3_0_PY37_CPU, RAY_ML_2_3_0_PY37_GPU, RAY_ML_2_3_0_PY38_CPU, RAY_ML_2_3_0_PY38_GPU, RAY_ML_2_3_0_PY39_CPU, RAY_ML_2_3_0_PY39_GPU, RAY_ML_2_3_1_PY310_CPU, RAY_ML_2_3_1_PY310_GPU, RAY_ML_2_3_1_PY37_CPU, RAY_ML_2_3_1_PY37_GPU, RAY_ML_2_3_1_PY38_CPU, RAY_ML_2_3_1_PY38_GPU, RAY_ML_2_3_1_PY39_CPU, RAY_ML_2_3_1_PY39_GPU, RAY_ML_2_30_0_PY310_CPU, RAY_ML_2_30_0_PY310_GPU, RAY_ML_2_30_0_PY311_CPU, RAY_ML_2_30_0_PY311_GPU, RAY_ML_2_30_0_PY39_CPU, RAY_ML_2_30_0_PY39_GPU, RAY_ML_2_31_0_PY310_CPU, RAY_ML_2_31_0_PY310_GPU, RAY_ML_2_31_0_PY311_CPU, RAY_ML_2_31_0_PY311_GPU, RAY_ML_2_31_0_PY39_CPU, RAY_ML_2_31_0_PY39_GPU, RAY_ML_2_32_0_PY310_CPU, RAY_ML_2_32_0_PY310_GPU, RAY_ML_2_32_0_PY311_CPU, RAY_ML_2_32_0_PY311_GPU, RAY_ML_2_32_0_PY39_CPU, RAY_ML_2_32_0_PY39_GPU, RAY_ML_2_33_0_PY310_CPU, RAY_ML_2_33_0_PY310_GPU, RAY_ML_2_33_0_PY311_CPU, RAY_ML_2_33_0_PY311_GPU, RAY_ML_2_33_0_PY39_CPU, RAY_ML_2_33_0_PY39_GPU, RAY_ML_2_34_0_PY310_CPU, RAY_ML_2_34_0_PY310_GPU, RAY_ML_2_34_0_PY311_CPU, RAY_ML_2_34_0_PY311_GPU, RAY_ML_2_34_0_PY39_CPU, RAY_ML_2_34_0_PY39_GPU, RAY_ML_2_35_0_PY310_CPU, RAY_ML_2_35_0_PY310_GPU, RAY_ML_2_35_0_PY311_CPU, RAY_ML_2_35_0_PY311_GPU, RAY_ML_2_35_0_PY39_CPU, RAY_ML_2_35_0_PY39_GPU, RAY_ML_2_36_0_PY310_CPU, RAY_ML_2_36_0_PY310_GPU, RAY_ML_2_36_0_PY311_CPU, RAY_ML_2_36_0_PY311_GPU, RAY_ML_2_36_0_PY39_CPU, RAY_ML_2_36_0_PY39_GPU, RAY_ML_2_36_1_PY310_CPU, RAY_ML_2_36_1_PY310_GPU, RAY_ML_2_36_1_PY311_CPU, RAY_ML_2_36_1_PY311_GPU, RAY_ML_2_36_1_PY39_CPU, RAY_ML_2_36_1_PY39_GPU, RAY_ML_2_37_0_PY310_CPU, RAY_ML_2_37_0_PY310_GPU, RAY_ML_2_37_0_PY311_CPU, RAY_ML_2_37_0_PY311_GPU, RAY_ML_2_37_0_PY39_CPU, RAY_ML_2_37_0_PY39_GPU, RAY_ML_2_38_0_PY310_CPU, RAY_ML_2_38_0_PY310_GPU, RAY_ML_2_38_0_PY311_CPU, RAY_ML_2_38_0_PY311_GPU, RAY_ML_2_38_0_PY39_CPU, RAY_ML_2_38_0_PY39_GPU, RAY_ML_2_39_0_PY310_CPU, RAY_ML_2_39_0_PY310_GPU, RAY_ML_2_39_0_PY311_CPU, RAY_ML_2_39_0_PY311_GPU, RAY_ML_2_39_0_PY39_CPU, RAY_ML_2_39_0_PY39_GPU, RAY_ML_2_4_0_PY310_CPU, RAY_ML_2_4_0_PY310_GPU, RAY_ML_2_4_0_PY37_CPU, RAY_ML_2_4_0_PY37_GPU, RAY_ML_2_4_0_PY38_CPU, RAY_ML_2_4_0_PY38_GPU, RAY_ML_2_4_0_PY39_CPU, RAY_ML_2_4_0_PY39_GPU, RAY_ML_2_40_0_PY310_CPU, RAY_ML_2_40_0_PY310_GPU, RAY_ML_2_40_0_PY311_CPU, RAY_ML_2_40_0_PY311_GPU, RAY_ML_2_40_0_PY39_CPU, RAY_ML_2_40_0_PY39_GPU, RAY_ML_2_5_0_PY310_CPU, RAY_ML_2_5_0_PY310_GPU, RAY_ML_2_5_0_PY37_CPU, RAY_ML_2_5_0_PY37_GPU, RAY_ML_2_5_0_PY38_CPU, RAY_ML_2_5_0_PY38_GPU, RAY_ML_2_5_0_PY39_CPU, RAY_ML_2_5_0_PY39_GPU, RAY_ML_2_5_1_PY310_CPU, RAY_ML_2_5_1_PY310_GPU, RAY_ML_2_5_1_PY37_CPU, RAY_ML_2_5_1_PY37_GPU, RAY_ML_2_5_1_PY38_CPU, RAY_ML_2_5_1_PY38_GPU, RAY_ML_2_5_1_PY39_CPU, RAY_ML_2_5_1_PY39_GPU, RAY_ML_2_6_0_PY310_CPU, RAY_ML_2_6_0_PY310_GPU, RAY_ML_2_6_0_PY38_CPU, RAY_ML_2_6_0_PY38_GPU, RAY_ML_2_6_0_PY39_CPU, RAY_ML_2_6_0_PY39_GPU, RAY_ML_2_6_1_PY310_CPU, RAY_ML_2_6_1_PY310_GPU, RAY_ML_2_6_1_PY38_CPU, RAY_ML_2_6_1_PY38_GPU, RAY_ML_2_6_1_PY39_CPU, RAY_ML_2_6_1_PY39_GPU, RAY_ML_2_6_2_PY310_CPU, RAY_ML_2_6_2_PY310_GPU, RAY_ML_2_6_2_PY38_CPU, RAY_ML_2_6_2_PY38_GPU, RAY_ML_2_6_2_PY39_CPU, RAY_ML_2_6_2_PY39_GPU, RAY_ML_2_6_3_PY310_CPU, RAY_ML_2_6_3_PY310_GPU, RAY_ML_2_6_3_PY38_CPU, RAY_ML_2_6_3_PY38_GPU, RAY_ML_2_6_3_PY39_CPU, RAY_ML_2_6_3_PY39_GPU, RAY_ML_2_7_0OPTIMIZED_PY310_CPU, RAY_ML_2_7_0OPTIMIZED_PY310_GPU, RAY_ML_2_7_0OPTIMIZED_PY38_CPU, RAY_ML_2_7_0OPTIMIZED_PY38_GPU, RAY_ML_2_7_0OPTIMIZED_PY39_CPU, RAY_ML_2_7_0OPTIMIZED_PY39_GPU, RAY_ML_2_7_1OPTIMIZED_PY310_CPU, RAY_ML_2_7_1OPTIMIZED_PY310_GPU, RAY_ML_2_7_1OPTIMIZED_PY38_CPU, RAY_ML_2_7_1OPTIMIZED_PY38_GPU, RAY_ML_2_7_1OPTIMIZED_PY39_CPU, RAY_ML_2_7_1OPTIMIZED_PY39_GPU, RAY_ML_2_7_2OPTIMIZED_PY310_CPU, RAY_ML_2_7_2OPTIMIZED_PY310_GPU, RAY_ML_2_7_2OPTIMIZED_PY38_CPU, RAY_ML_2_7_2OPTIMIZED_PY38_GPU, RAY_ML_2_7_2OPTIMIZED_PY39_CPU, RAY_ML_2_7_2OPTIMIZED_PY39_GPU, RAY_ML_2_8_0_PY310_CPU, RAY_ML_2_8_0_PY310_GPU, RAY_ML_2_8_0_PY38_CPU, RAY_ML_2_8_0_PY38_GPU, RAY_ML_2_8_0_PY39_CPU, RAY_ML_2_8_0_PY39_GPU, RAY_ML_2_8_1_PY310_CPU, RAY_ML_2_8_1_PY310_GPU, RAY_ML_2_8_1_PY38_CPU, RAY_ML_2_8_1_PY38_GPU, RAY_ML_2_8_1_PY39_CPU, RAY_ML_2_8_1_PY39_GPU, RAY_ML_2_9_0_PY310_CPU, RAY_ML_2_9_0_PY310_GPU, RAY_ML_2_9_0_PY38_CPU, RAY_ML_2_9_0_PY38_GPU, RAY_ML_2_9_0_PY39_CPU, RAY_ML_2_9_0_PY39_GPU, RAY_ML_2_9_1_PY310_CPU, RAY_ML_2_9_1_PY310_GPU, RAY_ML_2_9_1_PY38_CPU, RAY_ML_2_9_1_PY38_GPU, RAY_ML_2_9_1_PY39_CPU, RAY_ML_2_9_1_PY39_GPU, RAY_ML_2_9_2_PY310_CPU, RAY_ML_2_9_2_PY310_GPU, RAY_ML_2_9_2_PY38_CPU, RAY_ML_2_9_2_PY38_GPU, RAY_ML_2_9_2_PY39_CPU, RAY_ML_2_9_2_PY39_GPU, RAY_ML_2_9_3_PY310_CPU, RAY_ML_2_9_3_PY310_GPU, RAY_ML_2_9_3_PY38_CPU, RAY_ML_2_9_3_PY38_GPU, RAY_ML_2_9_3_PY39_CPU, RAY_ML_2_9_3_PY39_GPU, RAY_ML_NIGHTLY_PY310_GPU, RAY_ML_NIGHTLY_PY311_GPU, RAY_ML_NIGHTLY_PY312_GPU, RAY_ML_NIGHTLY_PY37_GPU, RAY_ML_NIGHTLY_PY38_GPU, RAY_ML_NIGHTLY_PY39_GPU, RAY_2_0_0_PY310, RAY_2_0_0_PY37, RAY_2_0_0_PY37_CU101, RAY_2_0_0_PY37_CU102, RAY_2_0_0_PY37_CU110, RAY_2_0_0_PY37_CU111, RAY_2_0_0_PY37_CU112, RAY_2_0_0_PY37_CU113, RAY_2_0_0_PY38, RAY_2_0_0_PY38_CU101, RAY_2_0_0_PY38_CU102, RAY_2_0_0_PY38_CU110, RAY_2_0_0_PY38_CU111, RAY_2_0_0_PY38_CU112, RAY_2_0_0_PY38_CU113, RAY_2_0_0_PY39, RAY_2_0_0_PY39_CU101, RAY_2_0_0_PY39_CU102, RAY_2_0_0_PY39_CU110, RAY_2_0_0_PY39_CU111, RAY_2_0_0_PY39_CU112, RAY_2_0_0_PY39_CU113, RAY_2_0_1_PY310, RAY_2_0_1_PY37, RAY_2_0_1_PY37_CU101, RAY_2_0_1_PY37_CU102, RAY_2_0_1_PY37_CU110, RAY_2_0_1_PY37_CU111, RAY_2_0_1_PY37_CU112, RAY_2_0_1_PY37_CU113, RAY_2_0_1_PY37_CU116, RAY_2_0_1_PY38, RAY_2_0_1_PY38_CU101, RAY_2_0_1_PY38_CU102, RAY_2_0_1_PY38_CU110, RAY_2_0_1_PY38_CU111, RAY_2_0_1_PY38_CU112, RAY_2_0_1_PY38_CU113, RAY_2_0_1_PY38_CU116, RAY_2_0_1_PY39, RAY_2_0_1_PY39_CU101, RAY_2_0_1_PY39_CU102, RAY_2_0_1_PY39_CU110, RAY_2_0_1_PY39_CU111, RAY_2_0_1_PY39_CU112, RAY_2_0_1_PY39_CU113, RAY_2_0_1_PY39_CU116, RAY_2_1_0_PY310, RAY_2_1_0_PY310_CU101, RAY_2_1_0_PY310_CU102, RAY_2_1_0_PY310_CU110, RAY_2_1_0_PY310_CU111, RAY_2_1_0_PY310_CU112, RAY_2_1_0_PY310_CU113, RAY_2_1_0_PY310_CU116, RAY_2_1_0_PY37, RAY_2_1_0_PY37_CU101, RAY_2_1_0_PY37_CU102, RAY_2_1_0_PY37_CU110, RAY_2_1_0_PY37_CU111, RAY_2_1_0_PY37_CU112, RAY_2_1_0_PY37_CU113, RAY_2_1_0_PY37_CU116, RAY_2_1_0_PY38, RAY_2_1_0_PY38_CU101, RAY_2_1_0_PY38_CU102, RAY_2_1_0_PY38_CU110, RAY_2_1_0_PY38_CU111, RAY_2_1_0_PY38_CU112, RAY_2_1_0_PY38_CU113, RAY_2_1_0_PY38_CU116, RAY_2_1_0_PY39, RAY_2_1_0_PY39_CU101, RAY_2_1_0_PY39_CU102, RAY_2_1_0_PY39_CU110, RAY_2_1_0_PY39_CU111, RAY_2_1_0_PY39_CU112, RAY_2_1_0_PY39_CU113, RAY_2_1_0_PY39_CU116, RAY_2_10_0_PY310, RAY_2_10_0_PY310_CU115, RAY_2_10_0_PY310_CU116, RAY_2_10_0_PY310_CU117, RAY_2_10_0_PY310_CU118, RAY_2_10_0_PY310_CU121, RAY_2_10_0_PY311, RAY_2_10_0_PY311_CU115, RAY_2_10_0_PY311_CU116, RAY_2_10_0_PY311_CU117, RAY_2_10_0_PY311_CU118, RAY_2_10_0_PY311_CU121, RAY_2_10_0_PY38, RAY_2_10_0_PY38_CU115, RAY_2_10_0_PY38_CU116, RAY_2_10_0_PY38_CU117, RAY_2_10_0_PY38_CU118, RAY_2_10_0_PY38_CU121, RAY_2_10_0_PY39, RAY_2_10_0_PY39_CU115, RAY_2_10_0_PY39_CU116, RAY_2_10_0_PY39_CU117, RAY_2_10_0_PY39_CU118, RAY_2_10_0_PY39_CU121, RAY_2_11_0_PY310, RAY_2_11_0_PY310_CU115, RAY_2_11_0_PY310_CU116, RAY_2_11_0_PY310_CU117, RAY_2_11_0_PY310_CU118, RAY_2_11_0_PY310_CU121, RAY_2_11_0_PY311, RAY_2_11_0_PY311_CU115, RAY_2_11_0_PY311_CU116, RAY_2_11_0_PY311_CU117, RAY_2_11_0_PY311_CU118, RAY_2_11_0_PY311_CU121, RAY_2_11_0_PY39, RAY_2_11_0_PY39_CU115, RAY_2_11_0_PY39_CU116, RAY_2_11_0_PY39_CU117, RAY_2_11_0_PY39_CU118, RAY_2_11_0_PY39_CU121, RAY_2_12_0_PY310, RAY_2_12_0_PY310_CU115, RAY_2_12_0_PY310_CU116, RAY_2_12_0_PY310_CU117, RAY_2_12_0_PY310_CU118, RAY_2_12_0_PY310_CU121, RAY_2_12_0_PY311, RAY_2_12_0_PY311_CU115, RAY_2_12_0_PY311_CU116, RAY_2_12_0_PY311_CU117, RAY_2_12_0_PY311_CU118, RAY_2_12_0_PY311_CU121, RAY_2_12_0_PY39, RAY_2_12_0_PY39_CU115, RAY_2_12_0_PY39_CU116, RAY_2_12_0_PY39_CU117, RAY_2_12_0_PY39_CU118, RAY_2_12_0_PY39_CU121, RAY_2_2_0_PY310, RAY_2_2_0_PY310_CU101, RAY_2_2_0_PY310_CU102, RAY_2_2_0_PY310_CU110, RAY_2_2_0_PY310_CU111, RAY_2_2_0_PY310_CU112, RAY_2_2_0_PY310_CU113, RAY_2_2_0_PY310_CU116, RAY_2_2_0_PY37, RAY_2_2_0_PY37_CU101, RAY_2_2_0_PY37_CU102, RAY_2_2_0_PY37_CU110, RAY_2_2_0_PY37_CU111, RAY_2_2_0_PY37_CU112, RAY_2_2_0_PY37_CU113, RAY_2_2_0_PY37_CU116, RAY_2_2_0_PY38, RAY_2_2_0_PY38_CU101, RAY_2_2_0_PY38_CU102, RAY_2_2_0_PY38_CU110, RAY_2_2_0_PY38_CU111, RAY_2_2_0_PY38_CU112, RAY_2_2_0_PY38_CU113, RAY_2_2_0_PY38_CU116, RAY_2_2_0_PY39, RAY_2_2_0_PY39_CU101, RAY_2_2_0_PY39_CU102, RAY_2_2_0_PY39_CU110, RAY_2_2_0_PY39_CU111, RAY_2_2_0_PY39_CU112, RAY_2_2_0_PY39_CU113, RAY_2_2_0_PY39_CU116, RAY_2_20_0_PY310, RAY_2_20_0_PY310_CU115, RAY_2_20_0_PY310_CU116, RAY_2_20_0_PY310_CU117, RAY_2_20_0_PY310_CU118, RAY_2_20_0_PY310_CU121, RAY_2_20_0_PY311, RAY_2_20_0_PY311_CU115, RAY_2_20_0_PY311_CU116, RAY_2_20_0_PY311_CU117, RAY_2_20_0_PY311_CU118, RAY_2_20_0_PY311_CU121, RAY_2_20_0_PY39, RAY_2_20_0_PY39_CU115, RAY_2_20_0_PY39_CU116, RAY_2_20_0_PY39_CU117, RAY_2_20_0_PY39_CU118, RAY_2_20_0_PY39_CU121, RAY_2_21_0_PY310, RAY_2_21_0_PY310_CU115, RAY_2_21_0_PY310_CU116, RAY_2_21_0_PY310_CU117, RAY_2_21_0_PY310_CU118, RAY_2_21_0_PY310_CU121, RAY_2_21_0_PY311, RAY_2_21_0_PY311_CU115, RAY_2_21_0_PY311_CU116, RAY_2_21_0_PY311_CU117, RAY_2_21_0_PY311_CU118, RAY_2_21_0_PY311_CU121, RAY_2_21_0_PY39, RAY_2_21_0_PY39_CU115, RAY_2_21_0_PY39_CU116, RAY_2_21_0_PY39_CU117, RAY_2_21_0_PY39_CU118, RAY_2_21_0_PY39_CU121, RAY_2_21_0_SLIM_PY310, RAY_2_21_0_SLIM_PY310_CU118, RAY_2_21_0_SLIM_PY310_CU121, RAY_2_21_0_SLIM_PY311, RAY_2_21_0_SLIM_PY311_CU118, RAY_2_21_0_SLIM_PY311_CU121, RAY_2_21_0_SLIM_PY39, RAY_2_21_0_SLIM_PY39_CU118, RAY_2_21_0_SLIM_PY39_CU121, RAY_2_22_0_PY310, RAY_2_22_0_PY310_CU115, RAY_2_22_0_PY310_CU116, RAY_2_22_0_PY310_CU117, RAY_2_22_0_PY310_CU118, RAY_2_22_0_PY310_CU121, RAY_2_22_0_PY311, RAY_2_22_0_PY311_CU115, RAY_2_22_0_PY311_CU116, RAY_2_22_0_PY311_CU117, RAY_2_22_0_PY311_CU118, RAY_2_22_0_PY311_CU121, RAY_2_22_0_PY39, RAY_2_22_0_PY39_CU115, RAY_2_22_0_PY39_CU116, RAY_2_22_0_PY39_CU117, RAY_2_22_0_PY39_CU118, RAY_2_22_0_PY39_CU121, RAY_2_22_0_SLIM_PY310, RAY_2_22_0_SLIM_PY310_CU118, RAY_2_22_0_SLIM_PY310_CU121, RAY_2_22_0_SLIM_PY311, RAY_2_22_0_SLIM_PY311_CU118, RAY_2_22_0_SLIM_PY311_CU121, RAY_2_22_0_SLIM_PY39, RAY_2_22_0_SLIM_PY39_CU118, RAY_2_22_0_SLIM_PY39_CU121, RAY_2_23_0_PY310, RAY_2_23_0_PY310_CU115, RAY_2_23_0_PY310_CU116, RAY_2_23_0_PY310_CU117, RAY_2_23_0_PY310_CU118, RAY_2_23_0_PY310_CU121, RAY_2_23_0_PY311, RAY_2_23_0_PY311_CU115, RAY_2_23_0_PY311_CU116, RAY_2_23_0_PY311_CU117, RAY_2_23_0_PY311_CU118, RAY_2_23_0_PY311_CU121, RAY_2_23_0_PY39, RAY_2_23_0_PY39_CU115, RAY_2_23_0_PY39_CU116, RAY_2_23_0_PY39_CU117, RAY_2_23_0_PY39_CU118, RAY_2_23_0_PY39_CU121, RAY_2_23_0_SLIM_PY310, RAY_2_23_0_SLIM_PY310_CU118, RAY_2_23_0_SLIM_PY310_CU121, RAY_2_23_0_SLIM_PY311, RAY_2_23_0_SLIM_PY311_CU118, RAY_2_23_0_SLIM_PY311_CU121, RAY_2_23_0_SLIM_PY39, RAY_2_23_0_SLIM_PY39_CU118, RAY_2_23_0_SLIM_PY39_CU121, RAY_2_24_0_PY310, RAY_2_24_0_PY310_CU115, RAY_2_24_0_PY310_CU116, RAY_2_24_0_PY310_CU117, RAY_2_24_0_PY310_CU118, RAY_2_24_0_PY310_CU121, RAY_2_24_0_PY311, RAY_2_24_0_PY311_CU115, RAY_2_24_0_PY311_CU116, RAY_2_24_0_PY311_CU117, RAY_2_24_0_PY311_CU118, RAY_2_24_0_PY311_CU121, RAY_2_24_0_PY39, RAY_2_24_0_PY39_CU115, RAY_2_24_0_PY39_CU116, RAY_2_24_0_PY39_CU117, RAY_2_24_0_PY39_CU118, RAY_2_24_0_PY39_CU121, RAY_2_24_0_SLIM_PY310, RAY_2_24_0_SLIM_PY310_CU118, RAY_2_24_0_SLIM_PY310_CU121, RAY_2_24_0_SLIM_PY311, RAY_2_24_0_SLIM_PY311_CU118, RAY_2_24_0_SLIM_PY311_CU121, RAY_2_24_0_SLIM_PY39, RAY_2_24_0_SLIM_PY39_CU118, RAY_2_24_0_SLIM_PY39_CU121, RAY_2_3_0_PY310, RAY_2_3_0_PY310_CU101, RAY_2_3_0_PY310_CU102, RAY_2_3_0_PY310_CU110, RAY_2_3_0_PY310_CU111, RAY_2_3_0_PY310_CU112, RAY_2_3_0_PY310_CU113, RAY_2_3_0_PY310_CU116, RAY_2_3_0_PY310_CU118, RAY_2_3_0_PY37, RAY_2_3_0_PY37_CU101, RAY_2_3_0_PY37_CU102, RAY_2_3_0_PY37_CU110, RAY_2_3_0_PY37_CU111, RAY_2_3_0_PY37_CU112, RAY_2_3_0_PY37_CU113, RAY_2_3_0_PY37_CU116, RAY_2_3_0_PY37_CU118, RAY_2_3_0_PY38, RAY_2_3_0_PY38_CU101, RAY_2_3_0_PY38_CU102, RAY_2_3_0_PY38_CU110, RAY_2_3_0_PY38_CU111, RAY_2_3_0_PY38_CU112, RAY_2_3_0_PY38_CU113, RAY_2_3_0_PY38_CU116, RAY_2_3_0_PY38_CU118, RAY_2_3_0_PY39, RAY_2_3_0_PY39_CU101, RAY_2_3_0_PY39_CU102, RAY_2_3_0_PY39_CU110, RAY_2_3_0_PY39_CU111, RAY_2_3_0_PY39_CU112, RAY_2_3_0_PY39_CU113, RAY_2_3_0_PY39_CU116, RAY_2_3_0_PY39_CU118, RAY_2_3_1_PY310, RAY_2_3_1_PY310_CU101, RAY_2_3_1_PY310_CU102, RAY_2_3_1_PY310_CU110, RAY_2_3_1_PY310_CU111, RAY_2_3_1_PY310_CU112, RAY_2_3_1_PY310_CU113, RAY_2_3_1_PY310_CU116, RAY_2_3_1_PY310_CU118, RAY_2_3_1_PY37, RAY_2_3_1_PY37_CU101, RAY_2_3_1_PY37_CU102, RAY_2_3_1_PY37_CU110, RAY_2_3_1_PY37_CU111, RAY_2_3_1_PY37_CU112, RAY_2_3_1_PY37_CU113, RAY_2_3_1_PY37_CU116, RAY_2_3_1_PY37_CU118, RAY_2_3_1_PY38, RAY_2_3_1_PY38_CU101, RAY_2_3_1_PY38_CU102, RAY_2_3_1_PY38_CU110, RAY_2_3_1_PY38_CU111, RAY_2_3_1_PY38_CU112, RAY_2_3_1_PY38_CU113, RAY_2_3_1_PY38_CU116, RAY_2_3_1_PY38_CU118, RAY_2_3_1_PY39, RAY_2_3_1_PY39_CU101, RAY_2_3_1_PY39_CU102, RAY_2_3_1_PY39_CU110, RAY_2_3_1_PY39_CU111, RAY_2_3_1_PY39_CU112, RAY_2_3_1_PY39_CU113, RAY_2_3_1_PY39_CU116, RAY_2_3_1_PY39_CU118, RAY_2_30_0_PY310, RAY_2_30_0_PY310_CU117, RAY_2_30_0_PY310_CU118, RAY_2_30_0_PY310_CU121, RAY_2_30_0_PY310_CU123, RAY_2_30_0_PY311, RAY_2_30_0_PY311_CU117, RAY_2_30_0_PY311_CU118, RAY_2_30_0_PY311_CU121, RAY_2_30_0_PY311_CU123, RAY_2_30_0_PY39, RAY_2_30_0_PY39_CU117, RAY_2_30_0_PY39_CU118, RAY_2_30_0_PY39_CU121, RAY_2_30_0_PY39_CU123, RAY_2_30_0_SLIM_PY310, RAY_2_30_0_SLIM_PY310_CU118, RAY_2_30_0_SLIM_PY310_CU121, RAY_2_30_0_SLIM_PY310_CU123, RAY_2_30_0_SLIM_PY311, RAY_2_30_0_SLIM_PY311_CU118, RAY_2_30_0_SLIM_PY311_CU121, RAY_2_30_0_SLIM_PY311_CU123, RAY_2_30_0_SLIM_PY39, RAY_2_30_0_SLIM_PY39_CU118, RAY_2_30_0_SLIM_PY39_CU121, RAY_2_30_0_SLIM_PY39_CU123, RAY_2_31_0_PY310, RAY_2_31_0_PY310_CU117, RAY_2_31_0_PY310_CU118, RAY_2_31_0_PY310_CU121, RAY_2_31_0_PY310_CU123, RAY_2_31_0_PY311, RAY_2_31_0_PY311_CU117, RAY_2_31_0_PY311_CU118, RAY_2_31_0_PY311_CU121, RAY_2_31_0_PY311_CU123, RAY_2_31_0_PY39, RAY_2_31_0_PY39_CU117, RAY_2_31_0_PY39_CU118, RAY_2_31_0_PY39_CU121, RAY_2_31_0_PY39_CU123, RAY_2_31_0_SLIM_PY310, RAY_2_31_0_SLIM_PY310_CU118, RAY_2_31_0_SLIM_PY310_CU121, RAY_2_31_0_SLIM_PY310_CU123, RAY_2_31_0_SLIM_PY311, RAY_2_31_0_SLIM_PY311_CU118, RAY_2_31_0_SLIM_PY311_CU121, RAY_2_31_0_SLIM_PY311_CU123, RAY_2_31_0_SLIM_PY39, RAY_2_31_0_SLIM_PY39_CU118, RAY_2_31_0_SLIM_PY39_CU121, RAY_2_31_0_SLIM_PY39_CU123, RAY_2_32_0_PY310, RAY_2_32_0_PY310_CU117, RAY_2_32_0_PY310_CU118, RAY_2_32_0_PY310_CU121, RAY_2_32_0_PY310_CU123, RAY_2_32_0_PY311, RAY_2_32_0_PY311_CU117, RAY_2_32_0_PY311_CU118, RAY_2_32_0_PY311_CU121, RAY_2_32_0_PY311_CU123, RAY_2_32_0_PY39, RAY_2_32_0_PY39_CU117, RAY_2_32_0_PY39_CU118, RAY_2_32_0_PY39_CU121, RAY_2_32_0_PY39_CU123, RAY_2_32_0_SLIM_PY310, RAY_2_32_0_SLIM_PY310_CU118, RAY_2_32_0_SLIM_PY310_CU121, RAY_2_32_0_SLIM_PY310_CU123, RAY_2_32_0_SLIM_PY311, RAY_2_32_0_SLIM_PY311_CU118, RAY_2_32_0_SLIM_PY311_CU121, RAY_2_32_0_SLIM_PY311_CU123, RAY_2_32_0_SLIM_PY39, RAY_2_32_0_SLIM_PY39_CU118, RAY_2_32_0_SLIM_PY39_CU121, RAY_2_32_0_SLIM_PY39_CU123, RAY_2_33_0_PY310, RAY_2_33_0_PY310_CU117, RAY_2_33_0_PY310_CU118, RAY_2_33_0_PY310_CU121, RAY_2_33_0_PY310_CU123, RAY_2_33_0_PY311, RAY_2_33_0_PY311_CU117, RAY_2_33_0_PY311_CU118, RAY_2_33_0_PY311_CU121, RAY_2_33_0_PY311_CU123, RAY_2_33_0_PY39, RAY_2_33_0_PY39_CU117, RAY_2_33_0_PY39_CU118, RAY_2_33_0_PY39_CU121, RAY_2_33_0_PY39_CU123, RAY_2_33_0_SLIM_PY310, RAY_2_33_0_SLIM_PY310_CU118, RAY_2_33_0_SLIM_PY310_CU121, RAY_2_33_0_SLIM_PY310_CU123, RAY_2_33_0_SLIM_PY311, RAY_2_33_0_SLIM_PY311_CU118, RAY_2_33_0_SLIM_PY311_CU121, RAY_2_33_0_SLIM_PY311_CU123, RAY_2_33_0_SLIM_PY39, RAY_2_33_0_SLIM_PY39_CU118, RAY_2_33_0_SLIM_PY39_CU121, RAY_2_33_0_SLIM_PY39_CU123, RAY_2_34_0_PY310, RAY_2_34_0_PY310_CU117, RAY_2_34_0_PY310_CU118, RAY_2_34_0_PY310_CU121, RAY_2_34_0_PY310_CU123, RAY_2_34_0_PY311, RAY_2_34_0_PY311_CU117, RAY_2_34_0_PY311_CU118, RAY_2_34_0_PY311_CU121, RAY_2_34_0_PY311_CU123, RAY_2_34_0_PY39, RAY_2_34_0_PY39_CU117, RAY_2_34_0_PY39_CU118, RAY_2_34_0_PY39_CU121, RAY_2_34_0_PY39_CU123, RAY_2_34_0_SLIM_PY310, RAY_2_34_0_SLIM_PY310_CU118, RAY_2_34_0_SLIM_PY310_CU121, RAY_2_34_0_SLIM_PY310_CU123, RAY_2_34_0_SLIM_PY311, RAY_2_34_0_SLIM_PY311_CU118, RAY_2_34_0_SLIM_PY311_CU121, RAY_2_34_0_SLIM_PY311_CU123, RAY_2_34_0_SLIM_PY39, RAY_2_34_0_SLIM_PY39_CU118, RAY_2_34_0_SLIM_PY39_CU121, RAY_2_34_0_SLIM_PY39_CU123, RAY_2_35_0_PY310, RAY_2_35_0_PY310_CU117, RAY_2_35_0_PY310_CU118, RAY_2_35_0_PY310_CU121, RAY_2_35_0_PY310_CU123, RAY_2_35_0_PY311, RAY_2_35_0_PY311_CU117, RAY_2_35_0_PY311_CU118, RAY_2_35_0_PY311_CU121, RAY_2_35_0_PY311_CU123, RAY_2_35_0_PY312, RAY_2_35_0_PY312_CU117, RAY_2_35_0_PY312_CU118, RAY_2_35_0_PY312_CU121, RAY_2_35_0_PY312_CU123, RAY_2_35_0_PY39, RAY_2_35_0_PY39_CU117, RAY_2_35_0_PY39_CU118, RAY_2_35_0_PY39_CU121, RAY_2_35_0_PY39_CU123, RAY_2_35_0_SLIM_PY310, RAY_2_35_0_SLIM_PY310_CU118, RAY_2_35_0_SLIM_PY310_CU121, RAY_2_35_0_SLIM_PY310_CU123, RAY_2_35_0_SLIM_PY311, RAY_2_35_0_SLIM_PY311_CU118, RAY_2_35_0_SLIM_PY311_CU121, RAY_2_35_0_SLIM_PY311_CU123, RAY_2_35_0_SLIM_PY312, RAY_2_35_0_SLIM_PY312_CU118, RAY_2_35_0_SLIM_PY312_CU121, RAY_2_35_0_SLIM_PY312_CU123, RAY_2_35_0_SLIM_PY39, RAY_2_35_0_SLIM_PY39_CU118, RAY_2_35_0_SLIM_PY39_CU121, RAY_2_35_0_SLIM_PY39_CU123, RAY_2_36_0_PY310, RAY_2_36_0_PY310_CU117, RAY_2_36_0_PY310_CU118, RAY_2_36_0_PY310_CU121, RAY_2_36_0_PY310_CU123, RAY_2_36_0_PY311, RAY_2_36_0_PY311_CU117, RAY_2_36_0_PY311_CU118, RAY_2_36_0_PY311_CU121, RAY_2_36_0_PY311_CU123, RAY_2_36_0_PY312, RAY_2_36_0_PY312_CU117, RAY_2_36_0_PY312_CU118, RAY_2_36_0_PY312_CU121, RAY_2_36_0_PY312_CU123, RAY_2_36_0_PY39, RAY_2_36_0_PY39_CU117, RAY_2_36_0_PY39_CU118, RAY_2_36_0_PY39_CU121, RAY_2_36_0_PY39_CU123, RAY_2_36_0_SLIM_PY310, RAY_2_36_0_SLIM_PY310_CU118, RAY_2_36_0_SLIM_PY310_CU121, RAY_2_36_0_SLIM_PY310_CU123, RAY_2_36_0_SLIM_PY311, RAY_2_36_0_SLIM_PY311_CU118, RAY_2_36_0_SLIM_PY311_CU121, RAY_2_36_0_SLIM_PY311_CU123, RAY_2_36_0_SLIM_PY312, RAY_2_36_0_SLIM_PY312_CU118, RAY_2_36_0_SLIM_PY312_CU121, RAY_2_36_0_SLIM_PY312_CU123, RAY_2_36_0_SLIM_PY39, RAY_2_36_0_SLIM_PY39_CU118, RAY_2_36_0_SLIM_PY39_CU121, RAY_2_36_0_SLIM_PY39_CU123, RAY_2_36_1_PY310, RAY_2_36_1_PY310_CU117, RAY_2_36_1_PY310_CU118, RAY_2_36_1_PY310_CU121, RAY_2_36_1_PY310_CU123, RAY_2_36_1_PY311, RAY_2_36_1_PY311_CU117, RAY_2_36_1_PY311_CU118, RAY_2_36_1_PY311_CU121, RAY_2_36_1_PY311_CU123, RAY_2_36_1_PY312, RAY_2_36_1_PY312_CU117, RAY_2_36_1_PY312_CU118, RAY_2_36_1_PY312_CU121, RAY_2_36_1_PY312_CU123, RAY_2_36_1_PY39, RAY_2_36_1_PY39_CU117, RAY_2_36_1_PY39_CU118, RAY_2_36_1_PY39_CU121, RAY_2_36_1_PY39_CU123, RAY_2_36_1_SLIM_PY310, RAY_2_36_1_SLIM_PY310_CU118, RAY_2_36_1_SLIM_PY310_CU121, RAY_2_36_1_SLIM_PY310_CU123, RAY_2_36_1_SLIM_PY311, RAY_2_36_1_SLIM_PY311_CU118, RAY_2_36_1_SLIM_PY311_CU121, RAY_2_36_1_SLIM_PY311_CU123, RAY_2_36_1_SLIM_PY312, RAY_2_36_1_SLIM_PY312_CU118, RAY_2_36_1_SLIM_PY312_CU121, RAY_2_36_1_SLIM_PY312_CU123, RAY_2_36_1_SLIM_PY39, RAY_2_36_1_SLIM_PY39_CU118, RAY_2_36_1_SLIM_PY39_CU121, RAY_2_36_1_SLIM_PY39_CU123, RAY_2_37_0_PY310, RAY_2_37_0_PY310_CU117, RAY_2_37_0_PY310_CU118, RAY_2_37_0_PY310_CU121, RAY_2_37_0_PY310_CU123, RAY_2_37_0_PY311, RAY_2_37_0_PY311_CU117, RAY_2_37_0_PY311_CU118, RAY_2_37_0_PY311_CU121, RAY_2_37_0_PY311_CU123, RAY_2_37_0_PY312, RAY_2_37_0_PY312_CU117, RAY_2_37_0_PY312_CU118, RAY_2_37_0_PY312_CU121, RAY_2_37_0_PY312_CU123, RAY_2_37_0_PY39, RAY_2_37_0_PY39_CU117, RAY_2_37_0_PY39_CU118, RAY_2_37_0_PY39_CU121, RAY_2_37_0_PY39_CU123, RAY_2_37_0_SLIM_PY310, RAY_2_37_0_SLIM_PY310_CU118, RAY_2_37_0_SLIM_PY310_CU121, RAY_2_37_0_SLIM_PY310_CU123, RAY_2_37_0_SLIM_PY311, RAY_2_37_0_SLIM_PY311_CU118, RAY_2_37_0_SLIM_PY311_CU121, RAY_2_37_0_SLIM_PY311_CU123, RAY_2_37_0_SLIM_PY312, RAY_2_37_0_SLIM_PY312_CU118, RAY_2_37_0_SLIM_PY312_CU121, RAY_2_37_0_SLIM_PY312_CU123, RAY_2_37_0_SLIM_PY39, RAY_2_37_0_SLIM_PY39_CU118, RAY_2_37_0_SLIM_PY39_CU121, RAY_2_37_0_SLIM_PY39_CU123, RAY_2_38_0_PY310, RAY_2_38_0_PY310_CU117, RAY_2_38_0_PY310_CU118, RAY_2_38_0_PY310_CU121, RAY_2_38_0_PY310_CU123, RAY_2_38_0_PY311, RAY_2_38_0_PY311_CU117, RAY_2_38_0_PY311_CU118, RAY_2_38_0_PY311_CU121, RAY_2_38_0_PY311_CU123, RAY_2_38_0_PY312, RAY_2_38_0_PY312_CU117, RAY_2_38_0_PY312_CU118, RAY_2_38_0_PY312_CU121, RAY_2_38_0_PY312_CU123, RAY_2_38_0_PY39, RAY_2_38_0_PY39_CU117, RAY_2_38_0_PY39_CU118, RAY_2_38_0_PY39_CU121, RAY_2_38_0_PY39_CU123, RAY_2_38_0_SLIM_PY310, RAY_2_38_0_SLIM_PY310_CU118, RAY_2_38_0_SLIM_PY310_CU121, RAY_2_38_0_SLIM_PY310_CU123, RAY_2_38_0_SLIM_PY311, RAY_2_38_0_SLIM_PY311_CU118, RAY_2_38_0_SLIM_PY311_CU121, RAY_2_38_0_SLIM_PY311_CU123, RAY_2_38_0_SLIM_PY312, RAY_2_38_0_SLIM_PY312_CU118, RAY_2_38_0_SLIM_PY312_CU121, RAY_2_38_0_SLIM_PY312_CU123, RAY_2_38_0_SLIM_PY39, RAY_2_38_0_SLIM_PY39_CU118, RAY_2_38_0_SLIM_PY39_CU121, RAY_2_38_0_SLIM_PY39_CU123, RAY_2_39_0_PY310, RAY_2_39_0_PY310_CU117, RAY_2_39_0_PY310_CU118, RAY_2_39_0_PY310_CU121, RAY_2_39_0_PY310_CU123, RAY_2_39_0_PY311, RAY_2_39_0_PY311_CU117, RAY_2_39_0_PY311_CU118, RAY_2_39_0_PY311_CU121, RAY_2_39_0_PY311_CU123, RAY_2_39_0_PY312, RAY_2_39_0_PY312_CU117, RAY_2_39_0_PY312_CU118, RAY_2_39_0_PY312_CU121, RAY_2_39_0_PY312_CU123, RAY_2_39_0_PY39, RAY_2_39_0_PY39_CU117, RAY_2_39_0_PY39_CU118, RAY_2_39_0_PY39_CU121, RAY_2_39_0_PY39_CU123, RAY_2_39_0_SLIM_PY310, RAY_2_39_0_SLIM_PY310_CU118, RAY_2_39_0_SLIM_PY310_CU121, RAY_2_39_0_SLIM_PY310_CU123, RAY_2_39_0_SLIM_PY311, RAY_2_39_0_SLIM_PY311_CU118, RAY_2_39_0_SLIM_PY311_CU121, RAY_2_39_0_SLIM_PY311_CU123, RAY_2_39_0_SLIM_PY312, RAY_2_39_0_SLIM_PY312_CU118, RAY_2_39_0_SLIM_PY312_CU121, RAY_2_39_0_SLIM_PY312_CU123, RAY_2_39_0_SLIM_PY39, RAY_2_39_0_SLIM_PY39_CU118, RAY_2_39_0_SLIM_PY39_CU121, RAY_2_39_0_SLIM_PY39_CU123, RAY_2_4_0_PY310, RAY_2_4_0_PY310_CU101, RAY_2_4_0_PY310_CU102, RAY_2_4_0_PY310_CU110, RAY_2_4_0_PY310_CU111, RAY_2_4_0_PY310_CU112, RAY_2_4_0_PY310_CU113, RAY_2_4_0_PY310_CU116, RAY_2_4_0_PY310_CU118, RAY_2_4_0_PY37, RAY_2_4_0_PY37_CU101, RAY_2_4_0_PY37_CU102, RAY_2_4_0_PY37_CU110, RAY_2_4_0_PY37_CU111, RAY_2_4_0_PY37_CU112, RAY_2_4_0_PY37_CU113, RAY_2_4_0_PY37_CU116, RAY_2_4_0_PY37_CU118, RAY_2_4_0_PY38, RAY_2_4_0_PY38_CU101, RAY_2_4_0_PY38_CU102, RAY_2_4_0_PY38_CU110, RAY_2_4_0_PY38_CU111, RAY_2_4_0_PY38_CU112, RAY_2_4_0_PY38_CU113, RAY_2_4_0_PY38_CU116, RAY_2_4_0_PY38_CU118, RAY_2_4_0_PY39, RAY_2_4_0_PY39_CU101, RAY_2_4_0_PY39_CU102, RAY_2_4_0_PY39_CU110, RAY_2_4_0_PY39_CU111, RAY_2_4_0_PY39_CU112, RAY_2_4_0_PY39_CU113, RAY_2_4_0_PY39_CU116, RAY_2_4_0_PY39_CU118, RAY_2_40_0_PY310, RAY_2_40_0_PY310_CU117, RAY_2_40_0_PY310_CU118, RAY_2_40_0_PY310_CU121, RAY_2_40_0_PY310_CU123, RAY_2_40_0_PY311, RAY_2_40_0_PY311_CU117, RAY_2_40_0_PY311_CU118, RAY_2_40_0_PY311_CU121, RAY_2_40_0_PY311_CU123, RAY_2_40_0_PY312, RAY_2_40_0_PY312_CU117, RAY_2_40_0_PY312_CU118, RAY_2_40_0_PY312_CU121, RAY_2_40_0_PY312_CU123, RAY_2_40_0_PY39, RAY_2_40_0_PY39_CU117, RAY_2_40_0_PY39_CU118, RAY_2_40_0_PY39_CU121, RAY_2_40_0_PY39_CU123, RAY_2_40_0_SLIM_PY310, RAY_2_40_0_SLIM_PY310_CU118, RAY_2_40_0_SLIM_PY310_CU121, RAY_2_40_0_SLIM_PY310_CU123, RAY_2_40_0_SLIM_PY311, RAY_2_40_0_SLIM_PY311_CU118, RAY_2_40_0_SLIM_PY311_CU121, RAY_2_40_0_SLIM_PY311_CU123, RAY_2_40_0_SLIM_PY312, RAY_2_40_0_SLIM_PY312_CU118, RAY_2_40_0_SLIM_PY312_CU121, RAY_2_40_0_SLIM_PY312_CU123, RAY_2_40_0_SLIM_PY39, RAY_2_40_0_SLIM_PY39_CU118, RAY_2_40_0_SLIM_PY39_CU121, RAY_2_40_0_SLIM_PY39_CU123, RAY_2_5_0_PY310, RAY_2_5_0_PY310_CU101, RAY_2_5_0_PY310_CU102, RAY_2_5_0_PY310_CU110, RAY_2_5_0_PY310_CU111, RAY_2_5_0_PY310_CU112, RAY_2_5_0_PY310_CU113, RAY_2_5_0_PY310_CU116, RAY_2_5_0_PY310_CU118, RAY_2_5_0_PY37, RAY_2_5_0_PY37_CU101, RAY_2_5_0_PY37_CU102, RAY_2_5_0_PY37_CU110, RAY_2_5_0_PY37_CU111, RAY_2_5_0_PY37_CU112, RAY_2_5_0_PY37_CU113, RAY_2_5_0_PY37_CU116, RAY_2_5_0_PY37_CU118, RAY_2_5_0_PY38, RAY_2_5_0_PY38_CU101, RAY_2_5_0_PY38_CU102, RAY_2_5_0_PY38_CU110, RAY_2_5_0_PY38_CU111, RAY_2_5_0_PY38_CU112, RAY_2_5_0_PY38_CU113, RAY_2_5_0_PY38_CU116, RAY_2_5_0_PY38_CU118, RAY_2_5_0_PY39, RAY_2_5_0_PY39_CU101, RAY_2_5_0_PY39_CU102, RAY_2_5_0_PY39_CU110, RAY_2_5_0_PY39_CU111, RAY_2_5_0_PY39_CU112, RAY_2_5_0_PY39_CU113, RAY_2_5_0_PY39_CU116, RAY_2_5_0_PY39_CU118, RAY_2_5_1_PY310, RAY_2_5_1_PY310_CU101, RAY_2_5_1_PY310_CU102, RAY_2_5_1_PY310_CU110, RAY_2_5_1_PY310_CU111, RAY_2_5_1_PY310_CU112, RAY_2_5_1_PY310_CU113, RAY_2_5_1_PY310_CU116, RAY_2_5_1_PY310_CU118, RAY_2_5_1_PY37, RAY_2_5_1_PY37_CU101, RAY_2_5_1_PY37_CU102, RAY_2_5_1_PY37_CU110, RAY_2_5_1_PY37_CU111, RAY_2_5_1_PY37_CU112, RAY_2_5_1_PY37_CU113, RAY_2_5_1_PY37_CU116, RAY_2_5_1_PY37_CU118, RAY_2_5_1_PY38, RAY_2_5_1_PY38_CU101, RAY_2_5_1_PY38_CU102, RAY_2_5_1_PY38_CU110, RAY_2_5_1_PY38_CU111, RAY_2_5_1_PY38_CU112, RAY_2_5_1_PY38_CU113, RAY_2_5_1_PY38_CU116, RAY_2_5_1_PY38_CU118, RAY_2_5_1_PY39, RAY_2_5_1_PY39_CU101, RAY_2_5_1_PY39_CU102, RAY_2_5_1_PY39_CU110, RAY_2_5_1_PY39_CU111, RAY_2_5_1_PY39_CU112, RAY_2_5_1_PY39_CU113, RAY_2_5_1_PY39_CU116, RAY_2_5_1_PY39_CU118, RAY_2_6_0_PY310, RAY_2_6_0_PY310_CU115, RAY_2_6_0_PY310_CU116, RAY_2_6_0_PY310_CU117, RAY_2_6_0_PY310_CU118, RAY_2_6_0_PY37, RAY_2_6_0_PY37_CU115, RAY_2_6_0_PY37_CU116, RAY_2_6_0_PY37_CU117, RAY_2_6_0_PY37_CU118, RAY_2_6_0_PY38, RAY_2_6_0_PY38_CU115, RAY_2_6_0_PY38_CU116, RAY_2_6_0_PY38_CU117, RAY_2_6_0_PY38_CU118, RAY_2_6_0_PY39, RAY_2_6_0_PY39_CU115, RAY_2_6_0_PY39_CU116, RAY_2_6_0_PY39_CU117, RAY_2_6_0_PY39_CU118, RAY_2_6_1_PY310, RAY_2_6_1_PY310_CU115, RAY_2_6_1_PY310_CU116, RAY_2_6_1_PY310_CU117, RAY_2_6_1_PY310_CU118, RAY_2_6_1_PY37, RAY_2_6_1_PY37_CU115, RAY_2_6_1_PY37_CU116, RAY_2_6_1_PY37_CU117, RAY_2_6_1_PY37_CU118, RAY_2_6_1_PY38, RAY_2_6_1_PY38_CU115, RAY_2_6_1_PY38_CU116, RAY_2_6_1_PY38_CU117, RAY_2_6_1_PY38_CU118, RAY_2_6_1_PY39, RAY_2_6_1_PY39_CU115, RAY_2_6_1_PY39_CU116, RAY_2_6_1_PY39_CU117, RAY_2_6_1_PY39_CU118, RAY_2_6_2_PY310, RAY_2_6_2_PY310_CU115, RAY_2_6_2_PY310_CU116, RAY_2_6_2_PY310_CU117, RAY_2_6_2_PY310_CU118, RAY_2_6_2_PY37, RAY_2_6_2_PY37_CU115, RAY_2_6_2_PY37_CU116, RAY_2_6_2_PY37_CU117, RAY_2_6_2_PY37_CU118, RAY_2_6_2_PY38, RAY_2_6_2_PY38_CU115, RAY_2_6_2_PY38_CU116, RAY_2_6_2_PY38_CU117, RAY_2_6_2_PY38_CU118, RAY_2_6_2_PY39, RAY_2_6_2_PY39_CU115, RAY_2_6_2_PY39_CU116, RAY_2_6_2_PY39_CU117, RAY_2_6_2_PY39_CU118, RAY_2_6_3_PY310, RAY_2_6_3_PY310_CU115, RAY_2_6_3_PY310_CU116, RAY_2_6_3_PY310_CU117, RAY_2_6_3_PY310_CU118, RAY_2_6_3_PY37, RAY_2_6_3_PY37_CU115, RAY_2_6_3_PY37_CU116, RAY_2_6_3_PY37_CU117, RAY_2_6_3_PY37_CU118, RAY_2_6_3_PY38, RAY_2_6_3_PY38_CU115, RAY_2_6_3_PY38_CU116, RAY_2_6_3_PY38_CU117, RAY_2_6_3_PY38_CU118, RAY_2_6_3_PY39, RAY_2_6_3_PY39_CU115, RAY_2_6_3_PY39_CU116, RAY_2_6_3_PY39_CU117, RAY_2_6_3_PY39_CU118, RAY_2_7_0OPTIMIZED_PY310, RAY_2_7_0OPTIMIZED_PY310_CU115, RAY_2_7_0OPTIMIZED_PY310_CU116, RAY_2_7_0OPTIMIZED_PY310_CU117, RAY_2_7_0OPTIMIZED_PY310_CU118, RAY_2_7_0OPTIMIZED_PY310_CU121, RAY_2_7_0OPTIMIZED_PY311, RAY_2_7_0OPTIMIZED_PY311_CU115, RAY_2_7_0OPTIMIZED_PY311_CU116, RAY_2_7_0OPTIMIZED_PY311_CU117, RAY_2_7_0OPTIMIZED_PY311_CU118, RAY_2_7_0OPTIMIZED_PY311_CU121, RAY_2_7_0OPTIMIZED_PY37, RAY_2_7_0OPTIMIZED_PY37_CU115, RAY_2_7_0OPTIMIZED_PY37_CU116, RAY_2_7_0OPTIMIZED_PY37_CU117, RAY_2_7_0OPTIMIZED_PY37_CU118, RAY_2_7_0OPTIMIZED_PY37_CU121, RAY_2_7_0OPTIMIZED_PY38, RAY_2_7_0OPTIMIZED_PY38_CU115, RAY_2_7_0OPTIMIZED_PY38_CU116, RAY_2_7_0OPTIMIZED_PY38_CU117, RAY_2_7_0OPTIMIZED_PY38_CU118, RAY_2_7_0OPTIMIZED_PY38_CU121, RAY_2_7_0OPTIMIZED_PY39, RAY_2_7_0OPTIMIZED_PY39_CU115, RAY_2_7_0OPTIMIZED_PY39_CU116, RAY_2_7_0OPTIMIZED_PY39_CU117, RAY_2_7_0OPTIMIZED_PY39_CU118, RAY_2_7_0OPTIMIZED_PY39_CU121, RAY_2_7_1OPTIMIZED_PY310, RAY_2_7_1OPTIMIZED_PY310_CU115, RAY_2_7_1OPTIMIZED_PY310_CU116, RAY_2_7_1OPTIMIZED_PY310_CU117, RAY_2_7_1OPTIMIZED_PY310_CU118, RAY_2_7_1OPTIMIZED_PY310_CU121, RAY_2_7_1OPTIMIZED_PY311, RAY_2_7_1OPTIMIZED_PY311_CU115, RAY_2_7_1OPTIMIZED_PY311_CU116, RAY_2_7_1OPTIMIZED_PY311_CU117, RAY_2_7_1OPTIMIZED_PY311_CU118, RAY_2_7_1OPTIMIZED_PY311_CU121, RAY_2_7_1OPTIMIZED_PY37, RAY_2_7_1OPTIMIZED_PY37_CU115, RAY_2_7_1OPTIMIZED_PY37_CU116, RAY_2_7_1OPTIMIZED_PY37_CU117, RAY_2_7_1OPTIMIZED_PY37_CU118, RAY_2_7_1OPTIMIZED_PY37_CU121, RAY_2_7_1OPTIMIZED_PY38, RAY_2_7_1OPTIMIZED_PY38_CU115, RAY_2_7_1OPTIMIZED_PY38_CU116, RAY_2_7_1OPTIMIZED_PY38_CU117, RAY_2_7_1OPTIMIZED_PY38_CU118, RAY_2_7_1OPTIMIZED_PY38_CU121, RAY_2_7_1OPTIMIZED_PY39, RAY_2_7_1OPTIMIZED_PY39_CU115, RAY_2_7_1OPTIMIZED_PY39_CU116, RAY_2_7_1OPTIMIZED_PY39_CU117, RAY_2_7_1OPTIMIZED_PY39_CU118, RAY_2_7_1OPTIMIZED_PY39_CU121, RAY_2_7_2OPTIMIZED_PY310, RAY_2_7_2OPTIMIZED_PY310_CU115, RAY_2_7_2OPTIMIZED_PY310_CU116, RAY_2_7_2OPTIMIZED_PY310_CU117, RAY_2_7_2OPTIMIZED_PY310_CU118, RAY_2_7_2OPTIMIZED_PY310_CU121, RAY_2_7_2OPTIMIZED_PY311, RAY_2_7_2OPTIMIZED_PY311_CU115, RAY_2_7_2OPTIMIZED_PY311_CU116, RAY_2_7_2OPTIMIZED_PY311_CU117, RAY_2_7_2OPTIMIZED_PY311_CU118, RAY_2_7_2OPTIMIZED_PY311_CU121, RAY_2_7_2OPTIMIZED_PY37, RAY_2_7_2OPTIMIZED_PY37_CU115, RAY_2_7_2OPTIMIZED_PY37_CU116, RAY_2_7_2OPTIMIZED_PY37_CU117, RAY_2_7_2OPTIMIZED_PY37_CU118, RAY_2_7_2OPTIMIZED_PY37_CU121, RAY_2_7_2OPTIMIZED_PY38, RAY_2_7_2OPTIMIZED_PY38_CU115, RAY_2_7_2OPTIMIZED_PY38_CU116, RAY_2_7_2OPTIMIZED_PY38_CU117, RAY_2_7_2OPTIMIZED_PY38_CU118, RAY_2_7_2OPTIMIZED_PY38_CU121, RAY_2_7_2OPTIMIZED_PY39, RAY_2_7_2OPTIMIZED_PY39_CU115, RAY_2_7_2OPTIMIZED_PY39_CU116, RAY_2_7_2OPTIMIZED_PY39_CU117, RAY_2_7_2OPTIMIZED_PY39_CU118, RAY_2_7_2OPTIMIZED_PY39_CU121, RAY_2_8_0_PY310, RAY_2_8_0_PY310_CU115, RAY_2_8_0_PY310_CU116, RAY_2_8_0_PY310_CU117, RAY_2_8_0_PY310_CU118, RAY_2_8_0_PY310_CU121, RAY_2_8_0_PY311, RAY_2_8_0_PY311_CU115, RAY_2_8_0_PY311_CU116, RAY_2_8_0_PY311_CU117, RAY_2_8_0_PY311_CU118, RAY_2_8_0_PY311_CU121, RAY_2_8_0_PY38, RAY_2_8_0_PY38_CU115, RAY_2_8_0_PY38_CU116, RAY_2_8_0_PY38_CU117, RAY_2_8_0_PY38_CU118, RAY_2_8_0_PY38_CU121, RAY_2_8_0_PY39, RAY_2_8_0_PY39_CU115, RAY_2_8_0_PY39_CU116, RAY_2_8_0_PY39_CU117, RAY_2_8_0_PY39_CU118, RAY_2_8_0_PY39_CU121, RAY_2_8_1_PY310, RAY_2_8_1_PY310_CU115, RAY_2_8_1_PY310_CU116, RAY_2_8_1_PY310_CU117, RAY_2_8_1_PY310_CU118, RAY_2_8_1_PY310_CU121, RAY_2_8_1_PY311, RAY_2_8_1_PY311_CU115, RAY_2_8_1_PY311_CU116, RAY_2_8_1_PY311_CU117, RAY_2_8_1_PY311_CU118, RAY_2_8_1_PY311_CU121, RAY_2_8_1_PY38, RAY_2_8_1_PY38_CU115, RAY_2_8_1_PY38_CU116, RAY_2_8_1_PY38_CU117, RAY_2_8_1_PY38_CU118, RAY_2_8_1_PY38_CU121, RAY_2_8_1_PY39, RAY_2_8_1_PY39_CU115, RAY_2_8_1_PY39_CU116, RAY_2_8_1_PY39_CU117, RAY_2_8_1_PY39_CU118, RAY_2_8_1_PY39_CU121, RAY_2_9_0_PY310, RAY_2_9_0_PY310_CU115, RAY_2_9_0_PY310_CU116, RAY_2_9_0_PY310_CU117, RAY_2_9_0_PY310_CU118, RAY_2_9_0_PY310_CU121, RAY_2_9_0_PY311, RAY_2_9_0_PY311_CU115, RAY_2_9_0_PY311_CU116, RAY_2_9_0_PY311_CU117, RAY_2_9_0_PY311_CU118, RAY_2_9_0_PY311_CU121, RAY_2_9_0_PY38, RAY_2_9_0_PY38_CU115, RAY_2_9_0_PY38_CU116, RAY_2_9_0_PY38_CU117, RAY_2_9_0_PY38_CU118, RAY_2_9_0_PY38_CU121, RAY_2_9_0_PY39, RAY_2_9_0_PY39_CU115, RAY_2_9_0_PY39_CU116, RAY_2_9_0_PY39_CU117, RAY_2_9_0_PY39_CU118, RAY_2_9_0_PY39_CU121, RAY_2_9_1_PY310, RAY_2_9_1_PY310_CU115, RAY_2_9_1_PY310_CU116, RAY_2_9_1_PY310_CU117, RAY_2_9_1_PY310_CU118, RAY_2_9_1_PY310_CU121, RAY_2_9_1_PY311, RAY_2_9_1_PY311_CU115, RAY_2_9_1_PY311_CU116, RAY_2_9_1_PY311_CU117, RAY_2_9_1_PY311_CU118, RAY_2_9_1_PY311_CU121, RAY_2_9_1_PY38, RAY_2_9_1_PY38_CU115, RAY_2_9_1_PY38_CU116, RAY_2_9_1_PY38_CU117, RAY_2_9_1_PY38_CU118, RAY_2_9_1_PY38_CU121, RAY_2_9_1_PY39, RAY_2_9_1_PY39_CU115, RAY_2_9_1_PY39_CU116, RAY_2_9_1_PY39_CU117, RAY_2_9_1_PY39_CU118, RAY_2_9_1_PY39_CU121, RAY_2_9_2_PY310, RAY_2_9_2_PY310_CU115, RAY_2_9_2_PY310_CU116, RAY_2_9_2_PY310_CU117, RAY_2_9_2_PY310_CU118, RAY_2_9_2_PY310_CU121, RAY_2_9_2_PY311, RAY_2_9_2_PY311_CU115, RAY_2_9_2_PY311_CU116, RAY_2_9_2_PY311_CU117, RAY_2_9_2_PY311_CU118, RAY_2_9_2_PY311_CU121, RAY_2_9_2_PY38, RAY_2_9_2_PY38_CU115, RAY_2_9_2_PY38_CU116, RAY_2_9_2_PY38_CU117, RAY_2_9_2_PY38_CU118, RAY_2_9_2_PY38_CU121, RAY_2_9_2_PY39, RAY_2_9_2_PY39_CU115, RAY_2_9_2_PY39_CU116, RAY_2_9_2_PY39_CU117, RAY_2_9_2_PY39_CU118, RAY_2_9_2_PY39_CU121, RAY_2_9_3_PY310, RAY_2_9_3_PY310_CU115, RAY_2_9_3_PY310_CU116, RAY_2_9_3_PY310_CU117, RAY_2_9_3_PY310_CU118, RAY_2_9_3_PY310_CU121, RAY_2_9_3_PY311, RAY_2_9_3_PY311_CU115, RAY_2_9_3_PY311_CU116, RAY_2_9_3_PY311_CU117, RAY_2_9_3_PY311_CU118, RAY_2_9_3_PY311_CU121, RAY_2_9_3_PY38, RAY_2_9_3_PY38_CU115, RAY_2_9_3_PY38_CU116, RAY_2_9_3_PY38_CU117, RAY_2_9_3_PY38_CU118, RAY_2_9_3_PY38_CU121, RAY_2_9_3_PY39, RAY_2_9_3_PY39_CU115, RAY_2_9_3_PY39_CU116, RAY_2_9_3_PY39_CU117, RAY_2_9_3_PY39_CU118, RAY_2_9_3_PY39_CU121, RAY_NIGHTLY_PY310, RAY_NIGHTLY_PY310_CU117, RAY_NIGHTLY_PY310_CU118, RAY_NIGHTLY_PY310_CU121, RAY_NIGHTLY_PY310_CU123, RAY_NIGHTLY_PY311, RAY_NIGHTLY_PY311_CU117, RAY_NIGHTLY_PY311_CU118, RAY_NIGHTLY_PY311_CU121, RAY_NIGHTLY_PY311_CU123, RAY_NIGHTLY_PY312, RAY_NIGHTLY_PY312_CU117, RAY_NIGHTLY_PY312_CU118, RAY_NIGHTLY_PY312_CU121, RAY_NIGHTLY_PY312_CU123, RAY_NIGHTLY_PY37, RAY_NIGHTLY_PY37_CU117, RAY_NIGHTLY_PY37_CU118, RAY_NIGHTLY_PY37_CU121, RAY_NIGHTLY_PY37_CU123, RAY_NIGHTLY_PY38, RAY_NIGHTLY_PY38_CU117, RAY_NIGHTLY_PY38_CU118, RAY_NIGHTLY_PY38_CU121, RAY_NIGHTLY_PY38_CU123, RAY_NIGHTLY_PY39, RAY_NIGHTLY_PY39_CU117, RAY_NIGHTLY_PY39_CU118, RAY_NIGHTLY_PY39_CU121, RAY_NIGHTLY_PY39_CU123] # noqa: E501
|
1546
|
+
allowable_values = [RAY_ML_2_0_0_PY37_CPU, RAY_ML_2_0_0_PY37_GPU, RAY_ML_2_0_0_PY38_CPU, RAY_ML_2_0_0_PY38_GPU, RAY_ML_2_0_1_PY37_CPU, RAY_ML_2_0_1_PY37_GPU, RAY_ML_2_0_1_PY38_CPU, RAY_ML_2_0_1_PY38_GPU, RAY_ML_2_1_0_PY37_CPU, RAY_ML_2_1_0_PY37_GPU, RAY_ML_2_1_0_PY38_CPU, RAY_ML_2_1_0_PY38_GPU, RAY_ML_2_10_0_PY310_CPU, RAY_ML_2_10_0_PY310_GPU, RAY_ML_2_10_0_PY38_CPU, RAY_ML_2_10_0_PY38_GPU, RAY_ML_2_10_0_PY39_CPU, RAY_ML_2_10_0_PY39_GPU, RAY_ML_2_11_0_PY310_CPU, RAY_ML_2_11_0_PY310_GPU, RAY_ML_2_11_0_PY311_CPU, RAY_ML_2_11_0_PY311_GPU, RAY_ML_2_11_0_PY39_CPU, RAY_ML_2_11_0_PY39_GPU, RAY_ML_2_12_0_PY310_CPU, RAY_ML_2_12_0_PY310_GPU, RAY_ML_2_12_0_PY311_CPU, RAY_ML_2_12_0_PY311_GPU, RAY_ML_2_12_0_PY39_CPU, RAY_ML_2_12_0_PY39_GPU, RAY_ML_2_2_0_PY310_CPU, RAY_ML_2_2_0_PY310_GPU, RAY_ML_2_2_0_PY37_CPU, RAY_ML_2_2_0_PY37_GPU, RAY_ML_2_2_0_PY38_CPU, RAY_ML_2_2_0_PY38_GPU, RAY_ML_2_2_0_PY39_CPU, RAY_ML_2_2_0_PY39_GPU, RAY_ML_2_20_0_PY310_CPU, RAY_ML_2_20_0_PY310_GPU, RAY_ML_2_20_0_PY311_CPU, RAY_ML_2_20_0_PY311_GPU, RAY_ML_2_20_0_PY39_CPU, RAY_ML_2_20_0_PY39_GPU, RAY_ML_2_21_0_PY310_CPU, RAY_ML_2_21_0_PY310_GPU, RAY_ML_2_21_0_PY311_CPU, RAY_ML_2_21_0_PY311_GPU, RAY_ML_2_21_0_PY39_CPU, RAY_ML_2_21_0_PY39_GPU, RAY_ML_2_22_0_PY310_CPU, RAY_ML_2_22_0_PY310_GPU, RAY_ML_2_22_0_PY311_CPU, RAY_ML_2_22_0_PY311_GPU, RAY_ML_2_22_0_PY39_CPU, RAY_ML_2_22_0_PY39_GPU, RAY_ML_2_23_0_PY310_CPU, RAY_ML_2_23_0_PY310_GPU, RAY_ML_2_23_0_PY311_CPU, RAY_ML_2_23_0_PY311_GPU, RAY_ML_2_23_0_PY39_CPU, RAY_ML_2_23_0_PY39_GPU, RAY_ML_2_24_0_PY310_CPU, RAY_ML_2_24_0_PY310_GPU, RAY_ML_2_24_0_PY311_CPU, RAY_ML_2_24_0_PY311_GPU, RAY_ML_2_24_0_PY39_CPU, RAY_ML_2_24_0_PY39_GPU, RAY_ML_2_3_0_PY310_CPU, RAY_ML_2_3_0_PY310_GPU, RAY_ML_2_3_0_PY37_CPU, RAY_ML_2_3_0_PY37_GPU, RAY_ML_2_3_0_PY38_CPU, RAY_ML_2_3_0_PY38_GPU, RAY_ML_2_3_0_PY39_CPU, RAY_ML_2_3_0_PY39_GPU, RAY_ML_2_3_1_PY310_CPU, RAY_ML_2_3_1_PY310_GPU, RAY_ML_2_3_1_PY37_CPU, RAY_ML_2_3_1_PY37_GPU, RAY_ML_2_3_1_PY38_CPU, RAY_ML_2_3_1_PY38_GPU, RAY_ML_2_3_1_PY39_CPU, RAY_ML_2_3_1_PY39_GPU, RAY_ML_2_30_0_PY310_CPU, RAY_ML_2_30_0_PY310_GPU, RAY_ML_2_30_0_PY311_CPU, RAY_ML_2_30_0_PY311_GPU, RAY_ML_2_30_0_PY39_CPU, RAY_ML_2_30_0_PY39_GPU, RAY_ML_2_31_0_PY310_CPU, RAY_ML_2_31_0_PY310_GPU, RAY_ML_2_31_0_PY311_CPU, RAY_ML_2_31_0_PY311_GPU, RAY_ML_2_31_0_PY39_CPU, RAY_ML_2_31_0_PY39_GPU, RAY_ML_2_32_0_PY310_CPU, RAY_ML_2_32_0_PY310_GPU, RAY_ML_2_32_0_PY311_CPU, RAY_ML_2_32_0_PY311_GPU, RAY_ML_2_32_0_PY39_CPU, RAY_ML_2_32_0_PY39_GPU, RAY_ML_2_33_0_PY310_CPU, RAY_ML_2_33_0_PY310_GPU, RAY_ML_2_33_0_PY311_CPU, RAY_ML_2_33_0_PY311_GPU, RAY_ML_2_33_0_PY39_CPU, RAY_ML_2_33_0_PY39_GPU, RAY_ML_2_34_0_PY310_CPU, RAY_ML_2_34_0_PY310_GPU, RAY_ML_2_34_0_PY311_CPU, RAY_ML_2_34_0_PY311_GPU, RAY_ML_2_34_0_PY39_CPU, RAY_ML_2_34_0_PY39_GPU, RAY_ML_2_35_0_PY310_CPU, RAY_ML_2_35_0_PY310_GPU, RAY_ML_2_35_0_PY311_CPU, RAY_ML_2_35_0_PY311_GPU, RAY_ML_2_35_0_PY39_CPU, RAY_ML_2_35_0_PY39_GPU, RAY_ML_2_36_0_PY310_CPU, RAY_ML_2_36_0_PY310_GPU, RAY_ML_2_36_0_PY311_CPU, RAY_ML_2_36_0_PY311_GPU, RAY_ML_2_36_0_PY39_CPU, RAY_ML_2_36_0_PY39_GPU, RAY_ML_2_36_1_PY310_CPU, RAY_ML_2_36_1_PY310_GPU, RAY_ML_2_36_1_PY311_CPU, RAY_ML_2_36_1_PY311_GPU, RAY_ML_2_36_1_PY39_CPU, RAY_ML_2_36_1_PY39_GPU, RAY_ML_2_37_0_PY310_CPU, RAY_ML_2_37_0_PY310_GPU, RAY_ML_2_37_0_PY311_CPU, RAY_ML_2_37_0_PY311_GPU, RAY_ML_2_37_0_PY39_CPU, RAY_ML_2_37_0_PY39_GPU, RAY_ML_2_38_0_PY310_CPU, RAY_ML_2_38_0_PY310_GPU, RAY_ML_2_38_0_PY311_CPU, RAY_ML_2_38_0_PY311_GPU, RAY_ML_2_38_0_PY39_CPU, RAY_ML_2_38_0_PY39_GPU, RAY_ML_2_39_0_PY310_CPU, RAY_ML_2_39_0_PY310_GPU, RAY_ML_2_39_0_PY311_CPU, RAY_ML_2_39_0_PY311_GPU, RAY_ML_2_39_0_PY39_CPU, RAY_ML_2_39_0_PY39_GPU, RAY_ML_2_4_0_PY310_CPU, RAY_ML_2_4_0_PY310_GPU, RAY_ML_2_4_0_PY37_CPU, RAY_ML_2_4_0_PY37_GPU, RAY_ML_2_4_0_PY38_CPU, RAY_ML_2_4_0_PY38_GPU, RAY_ML_2_4_0_PY39_CPU, RAY_ML_2_4_0_PY39_GPU, RAY_ML_2_40_0_PY310_CPU, RAY_ML_2_40_0_PY310_GPU, RAY_ML_2_40_0_PY311_CPU, RAY_ML_2_40_0_PY311_GPU, RAY_ML_2_40_0_PY39_CPU, RAY_ML_2_40_0_PY39_GPU, RAY_ML_2_41_0_PY310_CPU, RAY_ML_2_41_0_PY310_GPU, RAY_ML_2_41_0_PY311_CPU, RAY_ML_2_41_0_PY311_GPU, RAY_ML_2_41_0_PY39_CPU, RAY_ML_2_41_0_PY39_GPU, RAY_ML_2_5_0_PY310_CPU, RAY_ML_2_5_0_PY310_GPU, RAY_ML_2_5_0_PY37_CPU, RAY_ML_2_5_0_PY37_GPU, RAY_ML_2_5_0_PY38_CPU, RAY_ML_2_5_0_PY38_GPU, RAY_ML_2_5_0_PY39_CPU, RAY_ML_2_5_0_PY39_GPU, RAY_ML_2_5_1_PY310_CPU, RAY_ML_2_5_1_PY310_GPU, RAY_ML_2_5_1_PY37_CPU, RAY_ML_2_5_1_PY37_GPU, RAY_ML_2_5_1_PY38_CPU, RAY_ML_2_5_1_PY38_GPU, RAY_ML_2_5_1_PY39_CPU, RAY_ML_2_5_1_PY39_GPU, RAY_ML_2_6_0_PY310_CPU, RAY_ML_2_6_0_PY310_GPU, RAY_ML_2_6_0_PY38_CPU, RAY_ML_2_6_0_PY38_GPU, RAY_ML_2_6_0_PY39_CPU, RAY_ML_2_6_0_PY39_GPU, RAY_ML_2_6_1_PY310_CPU, RAY_ML_2_6_1_PY310_GPU, RAY_ML_2_6_1_PY38_CPU, RAY_ML_2_6_1_PY38_GPU, RAY_ML_2_6_1_PY39_CPU, RAY_ML_2_6_1_PY39_GPU, RAY_ML_2_6_2_PY310_CPU, RAY_ML_2_6_2_PY310_GPU, RAY_ML_2_6_2_PY38_CPU, RAY_ML_2_6_2_PY38_GPU, RAY_ML_2_6_2_PY39_CPU, RAY_ML_2_6_2_PY39_GPU, RAY_ML_2_6_3_PY310_CPU, RAY_ML_2_6_3_PY310_GPU, RAY_ML_2_6_3_PY38_CPU, RAY_ML_2_6_3_PY38_GPU, RAY_ML_2_6_3_PY39_CPU, RAY_ML_2_6_3_PY39_GPU, RAY_ML_2_7_0OPTIMIZED_PY310_CPU, RAY_ML_2_7_0OPTIMIZED_PY310_GPU, RAY_ML_2_7_0OPTIMIZED_PY38_CPU, RAY_ML_2_7_0OPTIMIZED_PY38_GPU, RAY_ML_2_7_0OPTIMIZED_PY39_CPU, RAY_ML_2_7_0OPTIMIZED_PY39_GPU, RAY_ML_2_7_1OPTIMIZED_PY310_CPU, RAY_ML_2_7_1OPTIMIZED_PY310_GPU, RAY_ML_2_7_1OPTIMIZED_PY38_CPU, RAY_ML_2_7_1OPTIMIZED_PY38_GPU, RAY_ML_2_7_1OPTIMIZED_PY39_CPU, RAY_ML_2_7_1OPTIMIZED_PY39_GPU, RAY_ML_2_7_2OPTIMIZED_PY310_CPU, RAY_ML_2_7_2OPTIMIZED_PY310_GPU, RAY_ML_2_7_2OPTIMIZED_PY38_CPU, RAY_ML_2_7_2OPTIMIZED_PY38_GPU, RAY_ML_2_7_2OPTIMIZED_PY39_CPU, RAY_ML_2_7_2OPTIMIZED_PY39_GPU, RAY_ML_2_8_0_PY310_CPU, RAY_ML_2_8_0_PY310_GPU, RAY_ML_2_8_0_PY38_CPU, RAY_ML_2_8_0_PY38_GPU, RAY_ML_2_8_0_PY39_CPU, RAY_ML_2_8_0_PY39_GPU, RAY_ML_2_8_1_PY310_CPU, RAY_ML_2_8_1_PY310_GPU, RAY_ML_2_8_1_PY38_CPU, RAY_ML_2_8_1_PY38_GPU, RAY_ML_2_8_1_PY39_CPU, RAY_ML_2_8_1_PY39_GPU, RAY_ML_2_9_0_PY310_CPU, RAY_ML_2_9_0_PY310_GPU, RAY_ML_2_9_0_PY38_CPU, RAY_ML_2_9_0_PY38_GPU, RAY_ML_2_9_0_PY39_CPU, RAY_ML_2_9_0_PY39_GPU, RAY_ML_2_9_1_PY310_CPU, RAY_ML_2_9_1_PY310_GPU, RAY_ML_2_9_1_PY38_CPU, RAY_ML_2_9_1_PY38_GPU, RAY_ML_2_9_1_PY39_CPU, RAY_ML_2_9_1_PY39_GPU, RAY_ML_2_9_2_PY310_CPU, RAY_ML_2_9_2_PY310_GPU, RAY_ML_2_9_2_PY38_CPU, RAY_ML_2_9_2_PY38_GPU, RAY_ML_2_9_2_PY39_CPU, RAY_ML_2_9_2_PY39_GPU, RAY_ML_2_9_3_PY310_CPU, RAY_ML_2_9_3_PY310_GPU, RAY_ML_2_9_3_PY38_CPU, RAY_ML_2_9_3_PY38_GPU, RAY_ML_2_9_3_PY39_CPU, RAY_ML_2_9_3_PY39_GPU, RAY_ML_NIGHTLY_PY310_GPU, RAY_ML_NIGHTLY_PY311_GPU, RAY_ML_NIGHTLY_PY312_GPU, RAY_ML_NIGHTLY_PY37_GPU, RAY_ML_NIGHTLY_PY38_GPU, RAY_ML_NIGHTLY_PY39_GPU, RAY_2_0_0_PY310, RAY_2_0_0_PY37, RAY_2_0_0_PY37_CU101, RAY_2_0_0_PY37_CU102, RAY_2_0_0_PY37_CU110, RAY_2_0_0_PY37_CU111, RAY_2_0_0_PY37_CU112, RAY_2_0_0_PY37_CU113, RAY_2_0_0_PY38, RAY_2_0_0_PY38_CU101, RAY_2_0_0_PY38_CU102, RAY_2_0_0_PY38_CU110, RAY_2_0_0_PY38_CU111, RAY_2_0_0_PY38_CU112, RAY_2_0_0_PY38_CU113, RAY_2_0_0_PY39, RAY_2_0_0_PY39_CU101, RAY_2_0_0_PY39_CU102, RAY_2_0_0_PY39_CU110, RAY_2_0_0_PY39_CU111, RAY_2_0_0_PY39_CU112, RAY_2_0_0_PY39_CU113, RAY_2_0_1_PY310, RAY_2_0_1_PY37, RAY_2_0_1_PY37_CU101, RAY_2_0_1_PY37_CU102, RAY_2_0_1_PY37_CU110, RAY_2_0_1_PY37_CU111, RAY_2_0_1_PY37_CU112, RAY_2_0_1_PY37_CU113, RAY_2_0_1_PY37_CU116, RAY_2_0_1_PY38, RAY_2_0_1_PY38_CU101, RAY_2_0_1_PY38_CU102, RAY_2_0_1_PY38_CU110, RAY_2_0_1_PY38_CU111, RAY_2_0_1_PY38_CU112, RAY_2_0_1_PY38_CU113, RAY_2_0_1_PY38_CU116, RAY_2_0_1_PY39, RAY_2_0_1_PY39_CU101, RAY_2_0_1_PY39_CU102, RAY_2_0_1_PY39_CU110, RAY_2_0_1_PY39_CU111, RAY_2_0_1_PY39_CU112, RAY_2_0_1_PY39_CU113, RAY_2_0_1_PY39_CU116, RAY_2_1_0_PY310, RAY_2_1_0_PY310_CU101, RAY_2_1_0_PY310_CU102, RAY_2_1_0_PY310_CU110, RAY_2_1_0_PY310_CU111, RAY_2_1_0_PY310_CU112, RAY_2_1_0_PY310_CU113, RAY_2_1_0_PY310_CU116, RAY_2_1_0_PY37, RAY_2_1_0_PY37_CU101, RAY_2_1_0_PY37_CU102, RAY_2_1_0_PY37_CU110, RAY_2_1_0_PY37_CU111, RAY_2_1_0_PY37_CU112, RAY_2_1_0_PY37_CU113, RAY_2_1_0_PY37_CU116, RAY_2_1_0_PY38, RAY_2_1_0_PY38_CU101, RAY_2_1_0_PY38_CU102, RAY_2_1_0_PY38_CU110, RAY_2_1_0_PY38_CU111, RAY_2_1_0_PY38_CU112, RAY_2_1_0_PY38_CU113, RAY_2_1_0_PY38_CU116, RAY_2_1_0_PY39, RAY_2_1_0_PY39_CU101, RAY_2_1_0_PY39_CU102, RAY_2_1_0_PY39_CU110, RAY_2_1_0_PY39_CU111, RAY_2_1_0_PY39_CU112, RAY_2_1_0_PY39_CU113, RAY_2_1_0_PY39_CU116, RAY_2_10_0_PY310, RAY_2_10_0_PY310_CU115, RAY_2_10_0_PY310_CU116, RAY_2_10_0_PY310_CU117, RAY_2_10_0_PY310_CU118, RAY_2_10_0_PY310_CU121, RAY_2_10_0_PY311, RAY_2_10_0_PY311_CU115, RAY_2_10_0_PY311_CU116, RAY_2_10_0_PY311_CU117, RAY_2_10_0_PY311_CU118, RAY_2_10_0_PY311_CU121, RAY_2_10_0_PY38, RAY_2_10_0_PY38_CU115, RAY_2_10_0_PY38_CU116, RAY_2_10_0_PY38_CU117, RAY_2_10_0_PY38_CU118, RAY_2_10_0_PY38_CU121, RAY_2_10_0_PY39, RAY_2_10_0_PY39_CU115, RAY_2_10_0_PY39_CU116, RAY_2_10_0_PY39_CU117, RAY_2_10_0_PY39_CU118, RAY_2_10_0_PY39_CU121, RAY_2_11_0_PY310, RAY_2_11_0_PY310_CU115, RAY_2_11_0_PY310_CU116, RAY_2_11_0_PY310_CU117, RAY_2_11_0_PY310_CU118, RAY_2_11_0_PY310_CU121, RAY_2_11_0_PY311, RAY_2_11_0_PY311_CU115, RAY_2_11_0_PY311_CU116, RAY_2_11_0_PY311_CU117, RAY_2_11_0_PY311_CU118, RAY_2_11_0_PY311_CU121, RAY_2_11_0_PY39, RAY_2_11_0_PY39_CU115, RAY_2_11_0_PY39_CU116, RAY_2_11_0_PY39_CU117, RAY_2_11_0_PY39_CU118, RAY_2_11_0_PY39_CU121, RAY_2_12_0_PY310, RAY_2_12_0_PY310_CU115, RAY_2_12_0_PY310_CU116, RAY_2_12_0_PY310_CU117, RAY_2_12_0_PY310_CU118, RAY_2_12_0_PY310_CU121, RAY_2_12_0_PY311, RAY_2_12_0_PY311_CU115, RAY_2_12_0_PY311_CU116, RAY_2_12_0_PY311_CU117, RAY_2_12_0_PY311_CU118, RAY_2_12_0_PY311_CU121, RAY_2_12_0_PY39, RAY_2_12_0_PY39_CU115, RAY_2_12_0_PY39_CU116, RAY_2_12_0_PY39_CU117, RAY_2_12_0_PY39_CU118, RAY_2_12_0_PY39_CU121, RAY_2_2_0_PY310, RAY_2_2_0_PY310_CU101, RAY_2_2_0_PY310_CU102, RAY_2_2_0_PY310_CU110, RAY_2_2_0_PY310_CU111, RAY_2_2_0_PY310_CU112, RAY_2_2_0_PY310_CU113, RAY_2_2_0_PY310_CU116, RAY_2_2_0_PY37, RAY_2_2_0_PY37_CU101, RAY_2_2_0_PY37_CU102, RAY_2_2_0_PY37_CU110, RAY_2_2_0_PY37_CU111, RAY_2_2_0_PY37_CU112, RAY_2_2_0_PY37_CU113, RAY_2_2_0_PY37_CU116, RAY_2_2_0_PY38, RAY_2_2_0_PY38_CU101, RAY_2_2_0_PY38_CU102, RAY_2_2_0_PY38_CU110, RAY_2_2_0_PY38_CU111, RAY_2_2_0_PY38_CU112, RAY_2_2_0_PY38_CU113, RAY_2_2_0_PY38_CU116, RAY_2_2_0_PY39, RAY_2_2_0_PY39_CU101, RAY_2_2_0_PY39_CU102, RAY_2_2_0_PY39_CU110, RAY_2_2_0_PY39_CU111, RAY_2_2_0_PY39_CU112, RAY_2_2_0_PY39_CU113, RAY_2_2_0_PY39_CU116, RAY_2_20_0_PY310, RAY_2_20_0_PY310_CU115, RAY_2_20_0_PY310_CU116, RAY_2_20_0_PY310_CU117, RAY_2_20_0_PY310_CU118, RAY_2_20_0_PY310_CU121, RAY_2_20_0_PY311, RAY_2_20_0_PY311_CU115, RAY_2_20_0_PY311_CU116, RAY_2_20_0_PY311_CU117, RAY_2_20_0_PY311_CU118, RAY_2_20_0_PY311_CU121, RAY_2_20_0_PY39, RAY_2_20_0_PY39_CU115, RAY_2_20_0_PY39_CU116, RAY_2_20_0_PY39_CU117, RAY_2_20_0_PY39_CU118, RAY_2_20_0_PY39_CU121, RAY_2_21_0_PY310, RAY_2_21_0_PY310_CU115, RAY_2_21_0_PY310_CU116, RAY_2_21_0_PY310_CU117, RAY_2_21_0_PY310_CU118, RAY_2_21_0_PY310_CU121, RAY_2_21_0_PY311, RAY_2_21_0_PY311_CU115, RAY_2_21_0_PY311_CU116, RAY_2_21_0_PY311_CU117, RAY_2_21_0_PY311_CU118, RAY_2_21_0_PY311_CU121, RAY_2_21_0_PY39, RAY_2_21_0_PY39_CU115, RAY_2_21_0_PY39_CU116, RAY_2_21_0_PY39_CU117, RAY_2_21_0_PY39_CU118, RAY_2_21_0_PY39_CU121, RAY_2_21_0_SLIM_PY310, RAY_2_21_0_SLIM_PY310_CU118, RAY_2_21_0_SLIM_PY310_CU121, RAY_2_21_0_SLIM_PY311, RAY_2_21_0_SLIM_PY311_CU118, RAY_2_21_0_SLIM_PY311_CU121, RAY_2_21_0_SLIM_PY39, RAY_2_21_0_SLIM_PY39_CU118, RAY_2_21_0_SLIM_PY39_CU121, RAY_2_22_0_PY310, RAY_2_22_0_PY310_CU115, RAY_2_22_0_PY310_CU116, RAY_2_22_0_PY310_CU117, RAY_2_22_0_PY310_CU118, RAY_2_22_0_PY310_CU121, RAY_2_22_0_PY311, RAY_2_22_0_PY311_CU115, RAY_2_22_0_PY311_CU116, RAY_2_22_0_PY311_CU117, RAY_2_22_0_PY311_CU118, RAY_2_22_0_PY311_CU121, RAY_2_22_0_PY39, RAY_2_22_0_PY39_CU115, RAY_2_22_0_PY39_CU116, RAY_2_22_0_PY39_CU117, RAY_2_22_0_PY39_CU118, RAY_2_22_0_PY39_CU121, RAY_2_22_0_SLIM_PY310, RAY_2_22_0_SLIM_PY310_CU118, RAY_2_22_0_SLIM_PY310_CU121, RAY_2_22_0_SLIM_PY311, RAY_2_22_0_SLIM_PY311_CU118, RAY_2_22_0_SLIM_PY311_CU121, RAY_2_22_0_SLIM_PY39, RAY_2_22_0_SLIM_PY39_CU118, RAY_2_22_0_SLIM_PY39_CU121, RAY_2_23_0_PY310, RAY_2_23_0_PY310_CU115, RAY_2_23_0_PY310_CU116, RAY_2_23_0_PY310_CU117, RAY_2_23_0_PY310_CU118, RAY_2_23_0_PY310_CU121, RAY_2_23_0_PY311, RAY_2_23_0_PY311_CU115, RAY_2_23_0_PY311_CU116, RAY_2_23_0_PY311_CU117, RAY_2_23_0_PY311_CU118, RAY_2_23_0_PY311_CU121, RAY_2_23_0_PY39, RAY_2_23_0_PY39_CU115, RAY_2_23_0_PY39_CU116, RAY_2_23_0_PY39_CU117, RAY_2_23_0_PY39_CU118, RAY_2_23_0_PY39_CU121, RAY_2_23_0_SLIM_PY310, RAY_2_23_0_SLIM_PY310_CU118, RAY_2_23_0_SLIM_PY310_CU121, RAY_2_23_0_SLIM_PY311, RAY_2_23_0_SLIM_PY311_CU118, RAY_2_23_0_SLIM_PY311_CU121, RAY_2_23_0_SLIM_PY39, RAY_2_23_0_SLIM_PY39_CU118, RAY_2_23_0_SLIM_PY39_CU121, RAY_2_24_0_PY310, RAY_2_24_0_PY310_CU115, RAY_2_24_0_PY310_CU116, RAY_2_24_0_PY310_CU117, RAY_2_24_0_PY310_CU118, RAY_2_24_0_PY310_CU121, RAY_2_24_0_PY311, RAY_2_24_0_PY311_CU115, RAY_2_24_0_PY311_CU116, RAY_2_24_0_PY311_CU117, RAY_2_24_0_PY311_CU118, RAY_2_24_0_PY311_CU121, RAY_2_24_0_PY39, RAY_2_24_0_PY39_CU115, RAY_2_24_0_PY39_CU116, RAY_2_24_0_PY39_CU117, RAY_2_24_0_PY39_CU118, RAY_2_24_0_PY39_CU121, RAY_2_24_0_SLIM_PY310, RAY_2_24_0_SLIM_PY310_CU118, RAY_2_24_0_SLIM_PY310_CU121, RAY_2_24_0_SLIM_PY311, RAY_2_24_0_SLIM_PY311_CU118, RAY_2_24_0_SLIM_PY311_CU121, RAY_2_24_0_SLIM_PY39, RAY_2_24_0_SLIM_PY39_CU118, RAY_2_24_0_SLIM_PY39_CU121, RAY_2_3_0_PY310, RAY_2_3_0_PY310_CU101, RAY_2_3_0_PY310_CU102, RAY_2_3_0_PY310_CU110, RAY_2_3_0_PY310_CU111, RAY_2_3_0_PY310_CU112, RAY_2_3_0_PY310_CU113, RAY_2_3_0_PY310_CU116, RAY_2_3_0_PY310_CU118, RAY_2_3_0_PY37, RAY_2_3_0_PY37_CU101, RAY_2_3_0_PY37_CU102, RAY_2_3_0_PY37_CU110, RAY_2_3_0_PY37_CU111, RAY_2_3_0_PY37_CU112, RAY_2_3_0_PY37_CU113, RAY_2_3_0_PY37_CU116, RAY_2_3_0_PY37_CU118, RAY_2_3_0_PY38, RAY_2_3_0_PY38_CU101, RAY_2_3_0_PY38_CU102, RAY_2_3_0_PY38_CU110, RAY_2_3_0_PY38_CU111, RAY_2_3_0_PY38_CU112, RAY_2_3_0_PY38_CU113, RAY_2_3_0_PY38_CU116, RAY_2_3_0_PY38_CU118, RAY_2_3_0_PY39, RAY_2_3_0_PY39_CU101, RAY_2_3_0_PY39_CU102, RAY_2_3_0_PY39_CU110, RAY_2_3_0_PY39_CU111, RAY_2_3_0_PY39_CU112, RAY_2_3_0_PY39_CU113, RAY_2_3_0_PY39_CU116, RAY_2_3_0_PY39_CU118, RAY_2_3_1_PY310, RAY_2_3_1_PY310_CU101, RAY_2_3_1_PY310_CU102, RAY_2_3_1_PY310_CU110, RAY_2_3_1_PY310_CU111, RAY_2_3_1_PY310_CU112, RAY_2_3_1_PY310_CU113, RAY_2_3_1_PY310_CU116, RAY_2_3_1_PY310_CU118, RAY_2_3_1_PY37, RAY_2_3_1_PY37_CU101, RAY_2_3_1_PY37_CU102, RAY_2_3_1_PY37_CU110, RAY_2_3_1_PY37_CU111, RAY_2_3_1_PY37_CU112, RAY_2_3_1_PY37_CU113, RAY_2_3_1_PY37_CU116, RAY_2_3_1_PY37_CU118, RAY_2_3_1_PY38, RAY_2_3_1_PY38_CU101, RAY_2_3_1_PY38_CU102, RAY_2_3_1_PY38_CU110, RAY_2_3_1_PY38_CU111, RAY_2_3_1_PY38_CU112, RAY_2_3_1_PY38_CU113, RAY_2_3_1_PY38_CU116, RAY_2_3_1_PY38_CU118, RAY_2_3_1_PY39, RAY_2_3_1_PY39_CU101, RAY_2_3_1_PY39_CU102, RAY_2_3_1_PY39_CU110, RAY_2_3_1_PY39_CU111, RAY_2_3_1_PY39_CU112, RAY_2_3_1_PY39_CU113, RAY_2_3_1_PY39_CU116, RAY_2_3_1_PY39_CU118, RAY_2_30_0_PY310, RAY_2_30_0_PY310_CU117, RAY_2_30_0_PY310_CU118, RAY_2_30_0_PY310_CU121, RAY_2_30_0_PY310_CU123, RAY_2_30_0_PY311, RAY_2_30_0_PY311_CU117, RAY_2_30_0_PY311_CU118, RAY_2_30_0_PY311_CU121, RAY_2_30_0_PY311_CU123, RAY_2_30_0_PY39, RAY_2_30_0_PY39_CU117, RAY_2_30_0_PY39_CU118, RAY_2_30_0_PY39_CU121, RAY_2_30_0_PY39_CU123, RAY_2_30_0_SLIM_PY310, RAY_2_30_0_SLIM_PY310_CU118, RAY_2_30_0_SLIM_PY310_CU121, RAY_2_30_0_SLIM_PY310_CU123, RAY_2_30_0_SLIM_PY311, RAY_2_30_0_SLIM_PY311_CU118, RAY_2_30_0_SLIM_PY311_CU121, RAY_2_30_0_SLIM_PY311_CU123, RAY_2_30_0_SLIM_PY39, RAY_2_30_0_SLIM_PY39_CU118, RAY_2_30_0_SLIM_PY39_CU121, RAY_2_30_0_SLIM_PY39_CU123, RAY_2_31_0_PY310, RAY_2_31_0_PY310_CU117, RAY_2_31_0_PY310_CU118, RAY_2_31_0_PY310_CU121, RAY_2_31_0_PY310_CU123, RAY_2_31_0_PY311, RAY_2_31_0_PY311_CU117, RAY_2_31_0_PY311_CU118, RAY_2_31_0_PY311_CU121, RAY_2_31_0_PY311_CU123, RAY_2_31_0_PY39, RAY_2_31_0_PY39_CU117, RAY_2_31_0_PY39_CU118, RAY_2_31_0_PY39_CU121, RAY_2_31_0_PY39_CU123, RAY_2_31_0_SLIM_PY310, RAY_2_31_0_SLIM_PY310_CU118, RAY_2_31_0_SLIM_PY310_CU121, RAY_2_31_0_SLIM_PY310_CU123, RAY_2_31_0_SLIM_PY311, RAY_2_31_0_SLIM_PY311_CU118, RAY_2_31_0_SLIM_PY311_CU121, RAY_2_31_0_SLIM_PY311_CU123, RAY_2_31_0_SLIM_PY39, RAY_2_31_0_SLIM_PY39_CU118, RAY_2_31_0_SLIM_PY39_CU121, RAY_2_31_0_SLIM_PY39_CU123, RAY_2_32_0_PY310, RAY_2_32_0_PY310_CU117, RAY_2_32_0_PY310_CU118, RAY_2_32_0_PY310_CU121, RAY_2_32_0_PY310_CU123, RAY_2_32_0_PY311, RAY_2_32_0_PY311_CU117, RAY_2_32_0_PY311_CU118, RAY_2_32_0_PY311_CU121, RAY_2_32_0_PY311_CU123, RAY_2_32_0_PY39, RAY_2_32_0_PY39_CU117, RAY_2_32_0_PY39_CU118, RAY_2_32_0_PY39_CU121, RAY_2_32_0_PY39_CU123, RAY_2_32_0_SLIM_PY310, RAY_2_32_0_SLIM_PY310_CU118, RAY_2_32_0_SLIM_PY310_CU121, RAY_2_32_0_SLIM_PY310_CU123, RAY_2_32_0_SLIM_PY311, RAY_2_32_0_SLIM_PY311_CU118, RAY_2_32_0_SLIM_PY311_CU121, RAY_2_32_0_SLIM_PY311_CU123, RAY_2_32_0_SLIM_PY39, RAY_2_32_0_SLIM_PY39_CU118, RAY_2_32_0_SLIM_PY39_CU121, RAY_2_32_0_SLIM_PY39_CU123, RAY_2_33_0_PY310, RAY_2_33_0_PY310_CU117, RAY_2_33_0_PY310_CU118, RAY_2_33_0_PY310_CU121, RAY_2_33_0_PY310_CU123, RAY_2_33_0_PY311, RAY_2_33_0_PY311_CU117, RAY_2_33_0_PY311_CU118, RAY_2_33_0_PY311_CU121, RAY_2_33_0_PY311_CU123, RAY_2_33_0_PY39, RAY_2_33_0_PY39_CU117, RAY_2_33_0_PY39_CU118, RAY_2_33_0_PY39_CU121, RAY_2_33_0_PY39_CU123, RAY_2_33_0_SLIM_PY310, RAY_2_33_0_SLIM_PY310_CU118, RAY_2_33_0_SLIM_PY310_CU121, RAY_2_33_0_SLIM_PY310_CU123, RAY_2_33_0_SLIM_PY311, RAY_2_33_0_SLIM_PY311_CU118, RAY_2_33_0_SLIM_PY311_CU121, RAY_2_33_0_SLIM_PY311_CU123, RAY_2_33_0_SLIM_PY39, RAY_2_33_0_SLIM_PY39_CU118, RAY_2_33_0_SLIM_PY39_CU121, RAY_2_33_0_SLIM_PY39_CU123, RAY_2_34_0_PY310, RAY_2_34_0_PY310_CU117, RAY_2_34_0_PY310_CU118, RAY_2_34_0_PY310_CU121, RAY_2_34_0_PY310_CU123, RAY_2_34_0_PY311, RAY_2_34_0_PY311_CU117, RAY_2_34_0_PY311_CU118, RAY_2_34_0_PY311_CU121, RAY_2_34_0_PY311_CU123, RAY_2_34_0_PY39, RAY_2_34_0_PY39_CU117, RAY_2_34_0_PY39_CU118, RAY_2_34_0_PY39_CU121, RAY_2_34_0_PY39_CU123, RAY_2_34_0_SLIM_PY310, RAY_2_34_0_SLIM_PY310_CU118, RAY_2_34_0_SLIM_PY310_CU121, RAY_2_34_0_SLIM_PY310_CU123, RAY_2_34_0_SLIM_PY311, RAY_2_34_0_SLIM_PY311_CU118, RAY_2_34_0_SLIM_PY311_CU121, RAY_2_34_0_SLIM_PY311_CU123, RAY_2_34_0_SLIM_PY39, RAY_2_34_0_SLIM_PY39_CU118, RAY_2_34_0_SLIM_PY39_CU121, RAY_2_34_0_SLIM_PY39_CU123, RAY_2_35_0_PY310, RAY_2_35_0_PY310_CU117, RAY_2_35_0_PY310_CU118, RAY_2_35_0_PY310_CU121, RAY_2_35_0_PY310_CU123, RAY_2_35_0_PY311, RAY_2_35_0_PY311_CU117, RAY_2_35_0_PY311_CU118, RAY_2_35_0_PY311_CU121, RAY_2_35_0_PY311_CU123, RAY_2_35_0_PY312, RAY_2_35_0_PY312_CU117, RAY_2_35_0_PY312_CU118, RAY_2_35_0_PY312_CU121, RAY_2_35_0_PY312_CU123, RAY_2_35_0_PY39, RAY_2_35_0_PY39_CU117, RAY_2_35_0_PY39_CU118, RAY_2_35_0_PY39_CU121, RAY_2_35_0_PY39_CU123, RAY_2_35_0_SLIM_PY310, RAY_2_35_0_SLIM_PY310_CU118, RAY_2_35_0_SLIM_PY310_CU121, RAY_2_35_0_SLIM_PY310_CU123, RAY_2_35_0_SLIM_PY311, RAY_2_35_0_SLIM_PY311_CU118, RAY_2_35_0_SLIM_PY311_CU121, RAY_2_35_0_SLIM_PY311_CU123, RAY_2_35_0_SLIM_PY312, RAY_2_35_0_SLIM_PY312_CU118, RAY_2_35_0_SLIM_PY312_CU121, RAY_2_35_0_SLIM_PY312_CU123, RAY_2_35_0_SLIM_PY39, RAY_2_35_0_SLIM_PY39_CU118, RAY_2_35_0_SLIM_PY39_CU121, RAY_2_35_0_SLIM_PY39_CU123, RAY_2_36_0_PY310, RAY_2_36_0_PY310_CU117, RAY_2_36_0_PY310_CU118, RAY_2_36_0_PY310_CU121, RAY_2_36_0_PY310_CU123, RAY_2_36_0_PY311, RAY_2_36_0_PY311_CU117, RAY_2_36_0_PY311_CU118, RAY_2_36_0_PY311_CU121, RAY_2_36_0_PY311_CU123, RAY_2_36_0_PY312, RAY_2_36_0_PY312_CU117, RAY_2_36_0_PY312_CU118, RAY_2_36_0_PY312_CU121, RAY_2_36_0_PY312_CU123, RAY_2_36_0_PY39, RAY_2_36_0_PY39_CU117, RAY_2_36_0_PY39_CU118, RAY_2_36_0_PY39_CU121, RAY_2_36_0_PY39_CU123, RAY_2_36_0_SLIM_PY310, RAY_2_36_0_SLIM_PY310_CU118, RAY_2_36_0_SLIM_PY310_CU121, RAY_2_36_0_SLIM_PY310_CU123, RAY_2_36_0_SLIM_PY311, RAY_2_36_0_SLIM_PY311_CU118, RAY_2_36_0_SLIM_PY311_CU121, RAY_2_36_0_SLIM_PY311_CU123, RAY_2_36_0_SLIM_PY312, RAY_2_36_0_SLIM_PY312_CU118, RAY_2_36_0_SLIM_PY312_CU121, RAY_2_36_0_SLIM_PY312_CU123, RAY_2_36_0_SLIM_PY39, RAY_2_36_0_SLIM_PY39_CU118, RAY_2_36_0_SLIM_PY39_CU121, RAY_2_36_0_SLIM_PY39_CU123, RAY_2_36_1_PY310, RAY_2_36_1_PY310_CU117, RAY_2_36_1_PY310_CU118, RAY_2_36_1_PY310_CU121, RAY_2_36_1_PY310_CU123, RAY_2_36_1_PY311, RAY_2_36_1_PY311_CU117, RAY_2_36_1_PY311_CU118, RAY_2_36_1_PY311_CU121, RAY_2_36_1_PY311_CU123, RAY_2_36_1_PY312, RAY_2_36_1_PY312_CU117, RAY_2_36_1_PY312_CU118, RAY_2_36_1_PY312_CU121, RAY_2_36_1_PY312_CU123, RAY_2_36_1_PY39, RAY_2_36_1_PY39_CU117, RAY_2_36_1_PY39_CU118, RAY_2_36_1_PY39_CU121, RAY_2_36_1_PY39_CU123, RAY_2_36_1_SLIM_PY310, RAY_2_36_1_SLIM_PY310_CU118, RAY_2_36_1_SLIM_PY310_CU121, RAY_2_36_1_SLIM_PY310_CU123, RAY_2_36_1_SLIM_PY311, RAY_2_36_1_SLIM_PY311_CU118, RAY_2_36_1_SLIM_PY311_CU121, RAY_2_36_1_SLIM_PY311_CU123, RAY_2_36_1_SLIM_PY312, RAY_2_36_1_SLIM_PY312_CU118, RAY_2_36_1_SLIM_PY312_CU121, RAY_2_36_1_SLIM_PY312_CU123, RAY_2_36_1_SLIM_PY39, RAY_2_36_1_SLIM_PY39_CU118, RAY_2_36_1_SLIM_PY39_CU121, RAY_2_36_1_SLIM_PY39_CU123, RAY_2_37_0_PY310, RAY_2_37_0_PY310_CU117, RAY_2_37_0_PY310_CU118, RAY_2_37_0_PY310_CU121, RAY_2_37_0_PY310_CU123, RAY_2_37_0_PY311, RAY_2_37_0_PY311_CU117, RAY_2_37_0_PY311_CU118, RAY_2_37_0_PY311_CU121, RAY_2_37_0_PY311_CU123, RAY_2_37_0_PY312, RAY_2_37_0_PY312_CU117, RAY_2_37_0_PY312_CU118, RAY_2_37_0_PY312_CU121, RAY_2_37_0_PY312_CU123, RAY_2_37_0_PY39, RAY_2_37_0_PY39_CU117, RAY_2_37_0_PY39_CU118, RAY_2_37_0_PY39_CU121, RAY_2_37_0_PY39_CU123, RAY_2_37_0_SLIM_PY310, RAY_2_37_0_SLIM_PY310_CU118, RAY_2_37_0_SLIM_PY310_CU121, RAY_2_37_0_SLIM_PY310_CU123, RAY_2_37_0_SLIM_PY311, RAY_2_37_0_SLIM_PY311_CU118, RAY_2_37_0_SLIM_PY311_CU121, RAY_2_37_0_SLIM_PY311_CU123, RAY_2_37_0_SLIM_PY312, RAY_2_37_0_SLIM_PY312_CU118, RAY_2_37_0_SLIM_PY312_CU121, RAY_2_37_0_SLIM_PY312_CU123, RAY_2_37_0_SLIM_PY39, RAY_2_37_0_SLIM_PY39_CU118, RAY_2_37_0_SLIM_PY39_CU121, RAY_2_37_0_SLIM_PY39_CU123, RAY_2_38_0_PY310, RAY_2_38_0_PY310_CU117, RAY_2_38_0_PY310_CU118, RAY_2_38_0_PY310_CU121, RAY_2_38_0_PY310_CU123, RAY_2_38_0_PY311, RAY_2_38_0_PY311_CU117, RAY_2_38_0_PY311_CU118, RAY_2_38_0_PY311_CU121, RAY_2_38_0_PY311_CU123, RAY_2_38_0_PY312, RAY_2_38_0_PY312_CU117, RAY_2_38_0_PY312_CU118, RAY_2_38_0_PY312_CU121, RAY_2_38_0_PY312_CU123, RAY_2_38_0_PY39, RAY_2_38_0_PY39_CU117, RAY_2_38_0_PY39_CU118, RAY_2_38_0_PY39_CU121, RAY_2_38_0_PY39_CU123, RAY_2_38_0_SLIM_PY310, RAY_2_38_0_SLIM_PY310_CU118, RAY_2_38_0_SLIM_PY310_CU121, RAY_2_38_0_SLIM_PY310_CU123, RAY_2_38_0_SLIM_PY311, RAY_2_38_0_SLIM_PY311_CU118, RAY_2_38_0_SLIM_PY311_CU121, RAY_2_38_0_SLIM_PY311_CU123, RAY_2_38_0_SLIM_PY312, RAY_2_38_0_SLIM_PY312_CU118, RAY_2_38_0_SLIM_PY312_CU121, RAY_2_38_0_SLIM_PY312_CU123, RAY_2_38_0_SLIM_PY39, RAY_2_38_0_SLIM_PY39_CU118, RAY_2_38_0_SLIM_PY39_CU121, RAY_2_38_0_SLIM_PY39_CU123, RAY_2_39_0_PY310, RAY_2_39_0_PY310_CU117, RAY_2_39_0_PY310_CU118, RAY_2_39_0_PY310_CU121, RAY_2_39_0_PY310_CU123, RAY_2_39_0_PY311, RAY_2_39_0_PY311_CU117, RAY_2_39_0_PY311_CU118, RAY_2_39_0_PY311_CU121, RAY_2_39_0_PY311_CU123, RAY_2_39_0_PY312, RAY_2_39_0_PY312_CU117, RAY_2_39_0_PY312_CU118, RAY_2_39_0_PY312_CU121, RAY_2_39_0_PY312_CU123, RAY_2_39_0_PY39, RAY_2_39_0_PY39_CU117, RAY_2_39_0_PY39_CU118, RAY_2_39_0_PY39_CU121, RAY_2_39_0_PY39_CU123, RAY_2_39_0_SLIM_PY310, RAY_2_39_0_SLIM_PY310_CU118, RAY_2_39_0_SLIM_PY310_CU121, RAY_2_39_0_SLIM_PY310_CU123, RAY_2_39_0_SLIM_PY311, RAY_2_39_0_SLIM_PY311_CU118, RAY_2_39_0_SLIM_PY311_CU121, RAY_2_39_0_SLIM_PY311_CU123, RAY_2_39_0_SLIM_PY312, RAY_2_39_0_SLIM_PY312_CU118, RAY_2_39_0_SLIM_PY312_CU121, RAY_2_39_0_SLIM_PY312_CU123, RAY_2_39_0_SLIM_PY39, RAY_2_39_0_SLIM_PY39_CU118, RAY_2_39_0_SLIM_PY39_CU121, RAY_2_39_0_SLIM_PY39_CU123, RAY_2_4_0_PY310, RAY_2_4_0_PY310_CU101, RAY_2_4_0_PY310_CU102, RAY_2_4_0_PY310_CU110, RAY_2_4_0_PY310_CU111, RAY_2_4_0_PY310_CU112, RAY_2_4_0_PY310_CU113, RAY_2_4_0_PY310_CU116, RAY_2_4_0_PY310_CU118, RAY_2_4_0_PY37, RAY_2_4_0_PY37_CU101, RAY_2_4_0_PY37_CU102, RAY_2_4_0_PY37_CU110, RAY_2_4_0_PY37_CU111, RAY_2_4_0_PY37_CU112, RAY_2_4_0_PY37_CU113, RAY_2_4_0_PY37_CU116, RAY_2_4_0_PY37_CU118, RAY_2_4_0_PY38, RAY_2_4_0_PY38_CU101, RAY_2_4_0_PY38_CU102, RAY_2_4_0_PY38_CU110, RAY_2_4_0_PY38_CU111, RAY_2_4_0_PY38_CU112, RAY_2_4_0_PY38_CU113, RAY_2_4_0_PY38_CU116, RAY_2_4_0_PY38_CU118, RAY_2_4_0_PY39, RAY_2_4_0_PY39_CU101, RAY_2_4_0_PY39_CU102, RAY_2_4_0_PY39_CU110, RAY_2_4_0_PY39_CU111, RAY_2_4_0_PY39_CU112, RAY_2_4_0_PY39_CU113, RAY_2_4_0_PY39_CU116, RAY_2_4_0_PY39_CU118, RAY_2_40_0_PY310, RAY_2_40_0_PY310_CU117, RAY_2_40_0_PY310_CU118, RAY_2_40_0_PY310_CU121, RAY_2_40_0_PY310_CU123, RAY_2_40_0_PY311, RAY_2_40_0_PY311_CU117, RAY_2_40_0_PY311_CU118, RAY_2_40_0_PY311_CU121, RAY_2_40_0_PY311_CU123, RAY_2_40_0_PY312, RAY_2_40_0_PY312_CU117, RAY_2_40_0_PY312_CU118, RAY_2_40_0_PY312_CU121, RAY_2_40_0_PY312_CU123, RAY_2_40_0_PY39, RAY_2_40_0_PY39_CU117, RAY_2_40_0_PY39_CU118, RAY_2_40_0_PY39_CU121, RAY_2_40_0_PY39_CU123, RAY_2_40_0_SLIM_PY310, RAY_2_40_0_SLIM_PY310_CU118, RAY_2_40_0_SLIM_PY310_CU121, RAY_2_40_0_SLIM_PY310_CU123, RAY_2_40_0_SLIM_PY311, RAY_2_40_0_SLIM_PY311_CU118, RAY_2_40_0_SLIM_PY311_CU121, RAY_2_40_0_SLIM_PY311_CU123, RAY_2_40_0_SLIM_PY312, RAY_2_40_0_SLIM_PY312_CU118, RAY_2_40_0_SLIM_PY312_CU121, RAY_2_40_0_SLIM_PY312_CU123, RAY_2_40_0_SLIM_PY39, RAY_2_40_0_SLIM_PY39_CU118, RAY_2_40_0_SLIM_PY39_CU121, RAY_2_40_0_SLIM_PY39_CU123, RAY_2_41_0_PY310, RAY_2_41_0_PY310_CU117, RAY_2_41_0_PY310_CU118, RAY_2_41_0_PY310_CU121, RAY_2_41_0_PY310_CU123, RAY_2_41_0_PY311, RAY_2_41_0_PY311_CU117, RAY_2_41_0_PY311_CU118, RAY_2_41_0_PY311_CU121, RAY_2_41_0_PY311_CU123, RAY_2_41_0_PY312, RAY_2_41_0_PY312_CU117, RAY_2_41_0_PY312_CU118, RAY_2_41_0_PY312_CU121, RAY_2_41_0_PY312_CU123, RAY_2_41_0_PY39, RAY_2_41_0_PY39_CU117, RAY_2_41_0_PY39_CU118, RAY_2_41_0_PY39_CU121, RAY_2_41_0_PY39_CU123, RAY_2_41_0_SLIM_PY310, RAY_2_41_0_SLIM_PY310_CU118, RAY_2_41_0_SLIM_PY310_CU121, RAY_2_41_0_SLIM_PY310_CU123, RAY_2_41_0_SLIM_PY311, RAY_2_41_0_SLIM_PY311_CU118, RAY_2_41_0_SLIM_PY311_CU121, RAY_2_41_0_SLIM_PY311_CU123, RAY_2_41_0_SLIM_PY312, RAY_2_41_0_SLIM_PY312_CU118, RAY_2_41_0_SLIM_PY312_CU121, RAY_2_41_0_SLIM_PY312_CU123, RAY_2_41_0_SLIM_PY39, RAY_2_41_0_SLIM_PY39_CU118, RAY_2_41_0_SLIM_PY39_CU121, RAY_2_41_0_SLIM_PY39_CU123, RAY_2_5_0_PY310, RAY_2_5_0_PY310_CU101, RAY_2_5_0_PY310_CU102, RAY_2_5_0_PY310_CU110, RAY_2_5_0_PY310_CU111, RAY_2_5_0_PY310_CU112, RAY_2_5_0_PY310_CU113, RAY_2_5_0_PY310_CU116, RAY_2_5_0_PY310_CU118, RAY_2_5_0_PY37, RAY_2_5_0_PY37_CU101, RAY_2_5_0_PY37_CU102, RAY_2_5_0_PY37_CU110, RAY_2_5_0_PY37_CU111, RAY_2_5_0_PY37_CU112, RAY_2_5_0_PY37_CU113, RAY_2_5_0_PY37_CU116, RAY_2_5_0_PY37_CU118, RAY_2_5_0_PY38, RAY_2_5_0_PY38_CU101, RAY_2_5_0_PY38_CU102, RAY_2_5_0_PY38_CU110, RAY_2_5_0_PY38_CU111, RAY_2_5_0_PY38_CU112, RAY_2_5_0_PY38_CU113, RAY_2_5_0_PY38_CU116, RAY_2_5_0_PY38_CU118, RAY_2_5_0_PY39, RAY_2_5_0_PY39_CU101, RAY_2_5_0_PY39_CU102, RAY_2_5_0_PY39_CU110, RAY_2_5_0_PY39_CU111, RAY_2_5_0_PY39_CU112, RAY_2_5_0_PY39_CU113, RAY_2_5_0_PY39_CU116, RAY_2_5_0_PY39_CU118, RAY_2_5_1_PY310, RAY_2_5_1_PY310_CU101, RAY_2_5_1_PY310_CU102, RAY_2_5_1_PY310_CU110, RAY_2_5_1_PY310_CU111, RAY_2_5_1_PY310_CU112, RAY_2_5_1_PY310_CU113, RAY_2_5_1_PY310_CU116, RAY_2_5_1_PY310_CU118, RAY_2_5_1_PY37, RAY_2_5_1_PY37_CU101, RAY_2_5_1_PY37_CU102, RAY_2_5_1_PY37_CU110, RAY_2_5_1_PY37_CU111, RAY_2_5_1_PY37_CU112, RAY_2_5_1_PY37_CU113, RAY_2_5_1_PY37_CU116, RAY_2_5_1_PY37_CU118, RAY_2_5_1_PY38, RAY_2_5_1_PY38_CU101, RAY_2_5_1_PY38_CU102, RAY_2_5_1_PY38_CU110, RAY_2_5_1_PY38_CU111, RAY_2_5_1_PY38_CU112, RAY_2_5_1_PY38_CU113, RAY_2_5_1_PY38_CU116, RAY_2_5_1_PY38_CU118, RAY_2_5_1_PY39, RAY_2_5_1_PY39_CU101, RAY_2_5_1_PY39_CU102, RAY_2_5_1_PY39_CU110, RAY_2_5_1_PY39_CU111, RAY_2_5_1_PY39_CU112, RAY_2_5_1_PY39_CU113, RAY_2_5_1_PY39_CU116, RAY_2_5_1_PY39_CU118, RAY_2_6_0_PY310, RAY_2_6_0_PY310_CU115, RAY_2_6_0_PY310_CU116, RAY_2_6_0_PY310_CU117, RAY_2_6_0_PY310_CU118, RAY_2_6_0_PY37, RAY_2_6_0_PY37_CU115, RAY_2_6_0_PY37_CU116, RAY_2_6_0_PY37_CU117, RAY_2_6_0_PY37_CU118, RAY_2_6_0_PY38, RAY_2_6_0_PY38_CU115, RAY_2_6_0_PY38_CU116, RAY_2_6_0_PY38_CU117, RAY_2_6_0_PY38_CU118, RAY_2_6_0_PY39, RAY_2_6_0_PY39_CU115, RAY_2_6_0_PY39_CU116, RAY_2_6_0_PY39_CU117, RAY_2_6_0_PY39_CU118, RAY_2_6_1_PY310, RAY_2_6_1_PY310_CU115, RAY_2_6_1_PY310_CU116, RAY_2_6_1_PY310_CU117, RAY_2_6_1_PY310_CU118, RAY_2_6_1_PY37, RAY_2_6_1_PY37_CU115, RAY_2_6_1_PY37_CU116, RAY_2_6_1_PY37_CU117, RAY_2_6_1_PY37_CU118, RAY_2_6_1_PY38, RAY_2_6_1_PY38_CU115, RAY_2_6_1_PY38_CU116, RAY_2_6_1_PY38_CU117, RAY_2_6_1_PY38_CU118, RAY_2_6_1_PY39, RAY_2_6_1_PY39_CU115, RAY_2_6_1_PY39_CU116, RAY_2_6_1_PY39_CU117, RAY_2_6_1_PY39_CU118, RAY_2_6_2_PY310, RAY_2_6_2_PY310_CU115, RAY_2_6_2_PY310_CU116, RAY_2_6_2_PY310_CU117, RAY_2_6_2_PY310_CU118, RAY_2_6_2_PY37, RAY_2_6_2_PY37_CU115, RAY_2_6_2_PY37_CU116, RAY_2_6_2_PY37_CU117, RAY_2_6_2_PY37_CU118, RAY_2_6_2_PY38, RAY_2_6_2_PY38_CU115, RAY_2_6_2_PY38_CU116, RAY_2_6_2_PY38_CU117, RAY_2_6_2_PY38_CU118, RAY_2_6_2_PY39, RAY_2_6_2_PY39_CU115, RAY_2_6_2_PY39_CU116, RAY_2_6_2_PY39_CU117, RAY_2_6_2_PY39_CU118, RAY_2_6_3_PY310, RAY_2_6_3_PY310_CU115, RAY_2_6_3_PY310_CU116, RAY_2_6_3_PY310_CU117, RAY_2_6_3_PY310_CU118, RAY_2_6_3_PY37, RAY_2_6_3_PY37_CU115, RAY_2_6_3_PY37_CU116, RAY_2_6_3_PY37_CU117, RAY_2_6_3_PY37_CU118, RAY_2_6_3_PY38, RAY_2_6_3_PY38_CU115, RAY_2_6_3_PY38_CU116, RAY_2_6_3_PY38_CU117, RAY_2_6_3_PY38_CU118, RAY_2_6_3_PY39, RAY_2_6_3_PY39_CU115, RAY_2_6_3_PY39_CU116, RAY_2_6_3_PY39_CU117, RAY_2_6_3_PY39_CU118, RAY_2_7_0OPTIMIZED_PY310, RAY_2_7_0OPTIMIZED_PY310_CU115, RAY_2_7_0OPTIMIZED_PY310_CU116, RAY_2_7_0OPTIMIZED_PY310_CU117, RAY_2_7_0OPTIMIZED_PY310_CU118, RAY_2_7_0OPTIMIZED_PY310_CU121, RAY_2_7_0OPTIMIZED_PY311, RAY_2_7_0OPTIMIZED_PY311_CU115, RAY_2_7_0OPTIMIZED_PY311_CU116, RAY_2_7_0OPTIMIZED_PY311_CU117, RAY_2_7_0OPTIMIZED_PY311_CU118, RAY_2_7_0OPTIMIZED_PY311_CU121, RAY_2_7_0OPTIMIZED_PY37, RAY_2_7_0OPTIMIZED_PY37_CU115, RAY_2_7_0OPTIMIZED_PY37_CU116, RAY_2_7_0OPTIMIZED_PY37_CU117, RAY_2_7_0OPTIMIZED_PY37_CU118, RAY_2_7_0OPTIMIZED_PY37_CU121, RAY_2_7_0OPTIMIZED_PY38, RAY_2_7_0OPTIMIZED_PY38_CU115, RAY_2_7_0OPTIMIZED_PY38_CU116, RAY_2_7_0OPTIMIZED_PY38_CU117, RAY_2_7_0OPTIMIZED_PY38_CU118, RAY_2_7_0OPTIMIZED_PY38_CU121, RAY_2_7_0OPTIMIZED_PY39, RAY_2_7_0OPTIMIZED_PY39_CU115, RAY_2_7_0OPTIMIZED_PY39_CU116, RAY_2_7_0OPTIMIZED_PY39_CU117, RAY_2_7_0OPTIMIZED_PY39_CU118, RAY_2_7_0OPTIMIZED_PY39_CU121, RAY_2_7_1OPTIMIZED_PY310, RAY_2_7_1OPTIMIZED_PY310_CU115, RAY_2_7_1OPTIMIZED_PY310_CU116, RAY_2_7_1OPTIMIZED_PY310_CU117, RAY_2_7_1OPTIMIZED_PY310_CU118, RAY_2_7_1OPTIMIZED_PY310_CU121, RAY_2_7_1OPTIMIZED_PY311, RAY_2_7_1OPTIMIZED_PY311_CU115, RAY_2_7_1OPTIMIZED_PY311_CU116, RAY_2_7_1OPTIMIZED_PY311_CU117, RAY_2_7_1OPTIMIZED_PY311_CU118, RAY_2_7_1OPTIMIZED_PY311_CU121, RAY_2_7_1OPTIMIZED_PY37, RAY_2_7_1OPTIMIZED_PY37_CU115, RAY_2_7_1OPTIMIZED_PY37_CU116, RAY_2_7_1OPTIMIZED_PY37_CU117, RAY_2_7_1OPTIMIZED_PY37_CU118, RAY_2_7_1OPTIMIZED_PY37_CU121, RAY_2_7_1OPTIMIZED_PY38, RAY_2_7_1OPTIMIZED_PY38_CU115, RAY_2_7_1OPTIMIZED_PY38_CU116, RAY_2_7_1OPTIMIZED_PY38_CU117, RAY_2_7_1OPTIMIZED_PY38_CU118, RAY_2_7_1OPTIMIZED_PY38_CU121, RAY_2_7_1OPTIMIZED_PY39, RAY_2_7_1OPTIMIZED_PY39_CU115, RAY_2_7_1OPTIMIZED_PY39_CU116, RAY_2_7_1OPTIMIZED_PY39_CU117, RAY_2_7_1OPTIMIZED_PY39_CU118, RAY_2_7_1OPTIMIZED_PY39_CU121, RAY_2_7_2OPTIMIZED_PY310, RAY_2_7_2OPTIMIZED_PY310_CU115, RAY_2_7_2OPTIMIZED_PY310_CU116, RAY_2_7_2OPTIMIZED_PY310_CU117, RAY_2_7_2OPTIMIZED_PY310_CU118, RAY_2_7_2OPTIMIZED_PY310_CU121, RAY_2_7_2OPTIMIZED_PY311, RAY_2_7_2OPTIMIZED_PY311_CU115, RAY_2_7_2OPTIMIZED_PY311_CU116, RAY_2_7_2OPTIMIZED_PY311_CU117, RAY_2_7_2OPTIMIZED_PY311_CU118, RAY_2_7_2OPTIMIZED_PY311_CU121, RAY_2_7_2OPTIMIZED_PY37, RAY_2_7_2OPTIMIZED_PY37_CU115, RAY_2_7_2OPTIMIZED_PY37_CU116, RAY_2_7_2OPTIMIZED_PY37_CU117, RAY_2_7_2OPTIMIZED_PY37_CU118, RAY_2_7_2OPTIMIZED_PY37_CU121, RAY_2_7_2OPTIMIZED_PY38, RAY_2_7_2OPTIMIZED_PY38_CU115, RAY_2_7_2OPTIMIZED_PY38_CU116, RAY_2_7_2OPTIMIZED_PY38_CU117, RAY_2_7_2OPTIMIZED_PY38_CU118, RAY_2_7_2OPTIMIZED_PY38_CU121, RAY_2_7_2OPTIMIZED_PY39, RAY_2_7_2OPTIMIZED_PY39_CU115, RAY_2_7_2OPTIMIZED_PY39_CU116, RAY_2_7_2OPTIMIZED_PY39_CU117, RAY_2_7_2OPTIMIZED_PY39_CU118, RAY_2_7_2OPTIMIZED_PY39_CU121, RAY_2_8_0_PY310, RAY_2_8_0_PY310_CU115, RAY_2_8_0_PY310_CU116, RAY_2_8_0_PY310_CU117, RAY_2_8_0_PY310_CU118, RAY_2_8_0_PY310_CU121, RAY_2_8_0_PY311, RAY_2_8_0_PY311_CU115, RAY_2_8_0_PY311_CU116, RAY_2_8_0_PY311_CU117, RAY_2_8_0_PY311_CU118, RAY_2_8_0_PY311_CU121, RAY_2_8_0_PY38, RAY_2_8_0_PY38_CU115, RAY_2_8_0_PY38_CU116, RAY_2_8_0_PY38_CU117, RAY_2_8_0_PY38_CU118, RAY_2_8_0_PY38_CU121, RAY_2_8_0_PY39, RAY_2_8_0_PY39_CU115, RAY_2_8_0_PY39_CU116, RAY_2_8_0_PY39_CU117, RAY_2_8_0_PY39_CU118, RAY_2_8_0_PY39_CU121, RAY_2_8_1_PY310, RAY_2_8_1_PY310_CU115, RAY_2_8_1_PY310_CU116, RAY_2_8_1_PY310_CU117, RAY_2_8_1_PY310_CU118, RAY_2_8_1_PY310_CU121, RAY_2_8_1_PY311, RAY_2_8_1_PY311_CU115, RAY_2_8_1_PY311_CU116, RAY_2_8_1_PY311_CU117, RAY_2_8_1_PY311_CU118, RAY_2_8_1_PY311_CU121, RAY_2_8_1_PY38, RAY_2_8_1_PY38_CU115, RAY_2_8_1_PY38_CU116, RAY_2_8_1_PY38_CU117, RAY_2_8_1_PY38_CU118, RAY_2_8_1_PY38_CU121, RAY_2_8_1_PY39, RAY_2_8_1_PY39_CU115, RAY_2_8_1_PY39_CU116, RAY_2_8_1_PY39_CU117, RAY_2_8_1_PY39_CU118, RAY_2_8_1_PY39_CU121, RAY_2_9_0_PY310, RAY_2_9_0_PY310_CU115, RAY_2_9_0_PY310_CU116, RAY_2_9_0_PY310_CU117, RAY_2_9_0_PY310_CU118, RAY_2_9_0_PY310_CU121, RAY_2_9_0_PY311, RAY_2_9_0_PY311_CU115, RAY_2_9_0_PY311_CU116, RAY_2_9_0_PY311_CU117, RAY_2_9_0_PY311_CU118, RAY_2_9_0_PY311_CU121, RAY_2_9_0_PY38, RAY_2_9_0_PY38_CU115, RAY_2_9_0_PY38_CU116, RAY_2_9_0_PY38_CU117, RAY_2_9_0_PY38_CU118, RAY_2_9_0_PY38_CU121, RAY_2_9_0_PY39, RAY_2_9_0_PY39_CU115, RAY_2_9_0_PY39_CU116, RAY_2_9_0_PY39_CU117, RAY_2_9_0_PY39_CU118, RAY_2_9_0_PY39_CU121, RAY_2_9_1_PY310, RAY_2_9_1_PY310_CU115, RAY_2_9_1_PY310_CU116, RAY_2_9_1_PY310_CU117, RAY_2_9_1_PY310_CU118, RAY_2_9_1_PY310_CU121, RAY_2_9_1_PY311, RAY_2_9_1_PY311_CU115, RAY_2_9_1_PY311_CU116, RAY_2_9_1_PY311_CU117, RAY_2_9_1_PY311_CU118, RAY_2_9_1_PY311_CU121, RAY_2_9_1_PY38, RAY_2_9_1_PY38_CU115, RAY_2_9_1_PY38_CU116, RAY_2_9_1_PY38_CU117, RAY_2_9_1_PY38_CU118, RAY_2_9_1_PY38_CU121, RAY_2_9_1_PY39, RAY_2_9_1_PY39_CU115, RAY_2_9_1_PY39_CU116, RAY_2_9_1_PY39_CU117, RAY_2_9_1_PY39_CU118, RAY_2_9_1_PY39_CU121, RAY_2_9_2_PY310, RAY_2_9_2_PY310_CU115, RAY_2_9_2_PY310_CU116, RAY_2_9_2_PY310_CU117, RAY_2_9_2_PY310_CU118, RAY_2_9_2_PY310_CU121, RAY_2_9_2_PY311, RAY_2_9_2_PY311_CU115, RAY_2_9_2_PY311_CU116, RAY_2_9_2_PY311_CU117, RAY_2_9_2_PY311_CU118, RAY_2_9_2_PY311_CU121, RAY_2_9_2_PY38, RAY_2_9_2_PY38_CU115, RAY_2_9_2_PY38_CU116, RAY_2_9_2_PY38_CU117, RAY_2_9_2_PY38_CU118, RAY_2_9_2_PY38_CU121, RAY_2_9_2_PY39, RAY_2_9_2_PY39_CU115, RAY_2_9_2_PY39_CU116, RAY_2_9_2_PY39_CU117, RAY_2_9_2_PY39_CU118, RAY_2_9_2_PY39_CU121, RAY_2_9_3_PY310, RAY_2_9_3_PY310_CU115, RAY_2_9_3_PY310_CU116, RAY_2_9_3_PY310_CU117, RAY_2_9_3_PY310_CU118, RAY_2_9_3_PY310_CU121, RAY_2_9_3_PY311, RAY_2_9_3_PY311_CU115, RAY_2_9_3_PY311_CU116, RAY_2_9_3_PY311_CU117, RAY_2_9_3_PY311_CU118, RAY_2_9_3_PY311_CU121, RAY_2_9_3_PY38, RAY_2_9_3_PY38_CU115, RAY_2_9_3_PY38_CU116, RAY_2_9_3_PY38_CU117, RAY_2_9_3_PY38_CU118, RAY_2_9_3_PY38_CU121, RAY_2_9_3_PY39, RAY_2_9_3_PY39_CU115, RAY_2_9_3_PY39_CU116, RAY_2_9_3_PY39_CU117, RAY_2_9_3_PY39_CU118, RAY_2_9_3_PY39_CU121, RAY_NIGHTLY_PY310, RAY_NIGHTLY_PY310_CU117, RAY_NIGHTLY_PY310_CU118, RAY_NIGHTLY_PY310_CU121, RAY_NIGHTLY_PY310_CU123, RAY_NIGHTLY_PY311, RAY_NIGHTLY_PY311_CU117, RAY_NIGHTLY_PY311_CU118, RAY_NIGHTLY_PY311_CU121, RAY_NIGHTLY_PY311_CU123, RAY_NIGHTLY_PY312, RAY_NIGHTLY_PY312_CU117, RAY_NIGHTLY_PY312_CU118, RAY_NIGHTLY_PY312_CU121, RAY_NIGHTLY_PY312_CU123, RAY_NIGHTLY_PY37, RAY_NIGHTLY_PY37_CU117, RAY_NIGHTLY_PY37_CU118, RAY_NIGHTLY_PY37_CU121, RAY_NIGHTLY_PY37_CU123, RAY_NIGHTLY_PY38, RAY_NIGHTLY_PY38_CU117, RAY_NIGHTLY_PY38_CU118, RAY_NIGHTLY_PY38_CU121, RAY_NIGHTLY_PY38_CU123, RAY_NIGHTLY_PY39, RAY_NIGHTLY_PY39_CU117, RAY_NIGHTLY_PY39_CU118, RAY_NIGHTLY_PY39_CU121, RAY_NIGHTLY_PY39_CU123] # noqa: E501
|
1505
1547
|
|
1506
1548
|
"""
|
1507
1549
|
Attributes:
|
@@ -31,10 +31,9 @@ class UnifiedJobSortField(object):
|
|
31
31
|
STATUS = "STATUS"
|
32
32
|
FINISHED_AT = "FINISHED_AT"
|
33
33
|
CREATED_AT = "CREATED_AT"
|
34
|
-
COST = "COST"
|
35
34
|
POSITION_IN_JOB_QUEUE = "POSITION_IN_JOB_QUEUE"
|
36
35
|
|
37
|
-
allowable_values = [STATUS, FINISHED_AT, CREATED_AT,
|
36
|
+
allowable_values = [STATUS, FINISHED_AT, CREATED_AT, POSITION_IN_JOB_QUEUE] # noqa: E501
|
38
37
|
|
39
38
|
"""
|
40
39
|
Attributes:
|
@@ -11,7 +11,10 @@ from anyscale.cloud.models import CreateCloudCollaborator, CreateCloudCollaborat
|
|
11
11
|
from anyscale.commands import cloud_commands_util, command_examples
|
12
12
|
from anyscale.commands.util import AnyscaleCommand, OptionPromptNull
|
13
13
|
from anyscale.controllers.cloud_controller import CloudController
|
14
|
-
from anyscale.util import
|
14
|
+
from anyscale.util import (
|
15
|
+
allow_optional_file_storage,
|
16
|
+
validate_non_negative_arg,
|
17
|
+
)
|
15
18
|
|
16
19
|
|
17
20
|
log = BlockLogger() # CLI Logger
|
@@ -658,10 +661,9 @@ def register_cloud( # noqa: PLR0913, PLR0912, C901
|
|
658
661
|
# Check for missing required arguments for AWS clouds,
|
659
662
|
# based on the compute stack (not all args are required
|
660
663
|
# on all compute stacks).
|
661
|
-
|
664
|
+
required_resources = [
|
662
665
|
(vpc_id, "--vpc-id", (ComputeStack.VM)),
|
663
666
|
(subnet_ids, "--subnet-ids", (ComputeStack.VM)),
|
664
|
-
(file_storage_id, "--file-storage-id", (ComputeStack.VM)),
|
665
667
|
(anyscale_iam_role_id, "--anyscale-iam-role-id", (ComputeStack.VM),),
|
666
668
|
(instance_iam_role_id, "--instance-iam-role-id", (ComputeStack.VM)),
|
667
669
|
(security_group_ids, "--security-group-ids", (ComputeStack.VM)),
|
@@ -676,7 +678,14 @@ def register_cloud( # noqa: PLR0913, PLR0912, C901
|
|
676
678
|
"--anyscale-operator-iam-identity",
|
677
679
|
(ComputeStack.K8S),
|
678
680
|
),
|
679
|
-
]
|
681
|
+
]
|
682
|
+
|
683
|
+
if not allow_optional_file_storage():
|
684
|
+
required_resources.append(
|
685
|
+
(file_storage_id, "--file-storage-id", (ComputeStack.VM)),
|
686
|
+
)
|
687
|
+
|
688
|
+
for resource in required_resources:
|
680
689
|
if compute_stack in resource[2] and resource[0] is None:
|
681
690
|
missing_args.append(resource[1])
|
682
691
|
|
@@ -713,12 +722,10 @@ def register_cloud( # noqa: PLR0913, PLR0912, C901
|
|
713
722
|
# Keep the parameter naming ({resource}_name or {resource}_id) consistent with GCP to reduce confusion for customers
|
714
723
|
# Check if all required parameters are provided
|
715
724
|
# memorystore_instance_name and host_project_id are optional for GCP clouds
|
716
|
-
|
725
|
+
required_resources = [
|
717
726
|
(project_id, "--project-id", (ComputeStack.VM)),
|
718
727
|
(vpc_name, "--vpc-name", (ComputeStack.VM)),
|
719
728
|
(subnet_names, "--subnet-names", (ComputeStack.VM)),
|
720
|
-
(file_storage_id, "--file-storage-id", (ComputeStack.VM)),
|
721
|
-
(filestore_location, "--filestore-location", (ComputeStack.VM)),
|
722
729
|
(
|
723
730
|
anyscale_service_account_email,
|
724
731
|
"--anyscale-service-account-email",
|
@@ -742,7 +749,17 @@ def register_cloud( # noqa: PLR0913, PLR0912, C901
|
|
742
749
|
"--anyscale-operator-iam-identity",
|
743
750
|
(ComputeStack.K8S),
|
744
751
|
),
|
745
|
-
]
|
752
|
+
]
|
753
|
+
|
754
|
+
if not allow_optional_file_storage():
|
755
|
+
required_resources.extend(
|
756
|
+
[
|
757
|
+
(file_storage_id, "--file-storage-id", (ComputeStack.VM)),
|
758
|
+
(filestore_location, "--filestore-location", (ComputeStack.VM)),
|
759
|
+
]
|
760
|
+
)
|
761
|
+
|
762
|
+
for resource in required_resources:
|
746
763
|
if compute_stack in resource[2] and resource[0] is None:
|
747
764
|
missing_args.append(resource[1])
|
748
765
|
|
@@ -1,12 +1,19 @@
|
|
1
|
-
from typing import Optional
|
1
|
+
from typing import List, Optional
|
2
2
|
|
3
3
|
import click
|
4
|
+
from rich import print as rprint
|
5
|
+
import tabulate
|
4
6
|
|
7
|
+
import anyscale
|
5
8
|
from anyscale.cli_logger import BlockLogger
|
6
|
-
from anyscale.
|
9
|
+
from anyscale.service_account.models import ServiceAccount
|
7
10
|
from anyscale.util import validate_non_negative_arg
|
8
11
|
|
9
12
|
|
13
|
+
DEFAULT_OVERFLOW = "fold"
|
14
|
+
DEFAULT_COL_WIDTH = 36
|
15
|
+
|
16
|
+
|
10
17
|
log = BlockLogger() # CLI Logger
|
11
18
|
|
12
19
|
|
@@ -18,12 +25,45 @@ def service_account_cli() -> None:
|
|
18
25
|
pass
|
19
26
|
|
20
27
|
|
28
|
+
def _print_new_api_key(api_key: str):
|
29
|
+
log.warning(
|
30
|
+
"The following API token for the service account will only appear once:",
|
31
|
+
)
|
32
|
+
log.info(api_key)
|
33
|
+
|
34
|
+
|
35
|
+
def _print_service_account_table(service_accounts: List[ServiceAccount]):
|
36
|
+
table_rows = []
|
37
|
+
for service_account in service_accounts:
|
38
|
+
table_rows.append(
|
39
|
+
[
|
40
|
+
service_account.name,
|
41
|
+
service_account.created_at.strftime("%m/%d/%Y"),
|
42
|
+
service_account.permission_level,
|
43
|
+
service_account.email,
|
44
|
+
]
|
45
|
+
)
|
46
|
+
table = tabulate.tabulate(
|
47
|
+
table_rows,
|
48
|
+
headers=["NAME", "CREATED AT", "ORGANIZATION PERMISSION LEVEL", "EMAIL",],
|
49
|
+
tablefmt="plain",
|
50
|
+
)
|
51
|
+
|
52
|
+
rprint(f"Service accounts:\n{table}")
|
53
|
+
|
54
|
+
|
21
55
|
@service_account_cli.command(name="create", help="Create a service account.")
|
22
56
|
@click.option(
|
23
57
|
"--name", "-n", help="Name for the service account.", type=str, required=True
|
24
58
|
)
|
25
59
|
def create(name: str) -> None:
|
26
|
-
|
60
|
+
try:
|
61
|
+
api_key = anyscale.service_account.create(name)
|
62
|
+
|
63
|
+
log.info(f"Service account {name} created successfully.")
|
64
|
+
_print_new_api_key(api_key)
|
65
|
+
except ValueError as e:
|
66
|
+
log.error(f"Error creating service account: {e}")
|
27
67
|
|
28
68
|
|
29
69
|
@service_account_cli.command(
|
@@ -36,10 +76,14 @@ def create(name: str) -> None:
|
|
36
76
|
"--name", help="Name of the service account to create the new key for.", type=str
|
37
77
|
)
|
38
78
|
def create_api_key(email: Optional[str], name: Optional[str]) -> None:
|
39
|
-
|
79
|
+
try:
|
80
|
+
api_key = anyscale.service_account.create_api_key(email, name)
|
81
|
+
_print_new_api_key(api_key)
|
82
|
+
except ValueError as e:
|
83
|
+
log.error(f"Error creating API key: {e}")
|
40
84
|
|
41
85
|
|
42
|
-
@service_account_cli.command(name="list", help="List
|
86
|
+
@service_account_cli.command(name="list", help="List service accounts.")
|
43
87
|
@click.option(
|
44
88
|
"--max-items",
|
45
89
|
required=False,
|
@@ -49,14 +93,19 @@ def create_api_key(email: Optional[str], name: Optional[str]) -> None:
|
|
49
93
|
callback=validate_non_negative_arg,
|
50
94
|
)
|
51
95
|
def list_service_accounts(max_items: int) -> None:
|
52
|
-
|
96
|
+
service_accounts = anyscale.service_account.list(max_items)
|
97
|
+
_print_service_account_table(service_accounts)
|
53
98
|
|
54
99
|
|
55
100
|
@service_account_cli.command(name="delete", help="Delete a service account.")
|
56
101
|
@click.option("--email", help="Email of the service account to delete.", type=str)
|
57
102
|
@click.option("--name", help="Name of the service account to delete.", type=str)
|
58
103
|
def delete(email: Optional[str], name: Optional[str]) -> None:
|
59
|
-
|
104
|
+
try:
|
105
|
+
anyscale.service_account.delete(email, name)
|
106
|
+
log.info(f"Service account {email or name} deleted successfully.")
|
107
|
+
except ValueError as e:
|
108
|
+
log.error(f"Error deleting service account: {e}")
|
60
109
|
|
61
110
|
|
62
111
|
@service_account_cli.command(
|
@@ -69,4 +118,12 @@ def delete(email: Optional[str], name: Optional[str]) -> None:
|
|
69
118
|
"--name", help="Rotate API keys for the service account with this name.", type=str
|
70
119
|
)
|
71
120
|
def rotate_api_keys(email: Optional[str], name: Optional[str]) -> None:
|
72
|
-
|
121
|
+
try:
|
122
|
+
api_key = anyscale.service_account.rotate_api_keys(email, name)
|
123
|
+
|
124
|
+
log.info(
|
125
|
+
f"\nAll API keys for service account {email or name} rotated successfully."
|
126
|
+
)
|
127
|
+
_print_new_api_key(api_key)
|
128
|
+
except ValueError as e:
|
129
|
+
log.error(f"Error rotating API keys: {e}")
|
@@ -1641,12 +1641,14 @@ class CloudController(BaseController):
|
|
1641
1641
|
logger=logger,
|
1642
1642
|
strict=strict,
|
1643
1643
|
)
|
1644
|
-
verify_aws_efs_result =
|
1645
|
-
|
1646
|
-
|
1647
|
-
|
1648
|
-
|
1649
|
-
|
1644
|
+
verify_aws_efs_result = True
|
1645
|
+
if cloud_resource.aws_efs_id:
|
1646
|
+
verify_aws_efs_result = verify_aws_efs(
|
1647
|
+
cloud_resource=cloud_resource,
|
1648
|
+
boto3_session=boto3_session,
|
1649
|
+
logger=logger,
|
1650
|
+
strict=strict,
|
1651
|
+
)
|
1650
1652
|
# Cloudformation is only used in managed cloud setup. Set to True in BYOR case because it's not used.
|
1651
1653
|
verify_aws_cloudformation_stack_result = True
|
1652
1654
|
if not is_bring_your_own_resource:
|
@@ -1676,9 +1678,12 @@ class CloudController(BaseController):
|
|
1676
1678
|
f"iam roles: {self._passed_or_failed_str_from_bool(verify_aws_iam_roles_result)}",
|
1677
1679
|
f"security groups: {self._passed_or_failed_str_from_bool(verify_aws_security_groups_result)}",
|
1678
1680
|
f"s3: {self._passed_or_failed_str_from_bool(verify_aws_s3_result)}",
|
1679
|
-
f"efs: {self._passed_or_failed_str_from_bool(verify_aws_efs_result)}",
|
1680
1681
|
f"cloudformation stack: {self._passed_or_failed_str_from_bool(verify_aws_cloudformation_stack_result) if not is_bring_your_own_resource else 'N/A'}",
|
1681
1682
|
]
|
1683
|
+
if cloud_resource.aws_efs_id:
|
1684
|
+
verification_result_summary.append(
|
1685
|
+
f"efs: {self._passed_or_failed_str_from_bool(verify_aws_efs_result)}"
|
1686
|
+
)
|
1682
1687
|
if cloud_resource.memorydb_cluster_config is not None:
|
1683
1688
|
verification_result_summary.append(
|
1684
1689
|
f"memorydb cluster: {self._passed_or_failed_str_from_bool(verify_aws_memorydb_cluster_result)}"
|
@@ -1875,7 +1880,7 @@ class CloudController(BaseController):
|
|
1875
1880
|
name: str,
|
1876
1881
|
vpc_id: str,
|
1877
1882
|
subnet_ids: List[str],
|
1878
|
-
efs_id: str,
|
1883
|
+
efs_id: Optional[str],
|
1879
1884
|
anyscale_iam_role_id: str,
|
1880
1885
|
instance_iam_role_id: str,
|
1881
1886
|
security_group_ids: List[str],
|
@@ -2012,10 +2017,7 @@ class CloudController(BaseController):
|
|
2012
2017
|
# When running on the VM compute stack, validate and retrieve the EFS mount target IP.
|
2013
2018
|
# When running on the K8S compute stack, EFS is optional; if efs_id is provided, then
|
2014
2019
|
# validate and retrieve the EFS mount target IP.
|
2015
|
-
|
2016
|
-
compute_stack == ComputeStack.K8S and efs_id
|
2017
|
-
)
|
2018
|
-
if enable_efs:
|
2020
|
+
if efs_id:
|
2019
2021
|
try:
|
2020
2022
|
boto3_session = boto3.Session(region_name=region)
|
2021
2023
|
aws_efs_mount_target_ip = _get_aws_efs_mount_target_ip(
|
@@ -2106,7 +2108,8 @@ class CloudController(BaseController):
|
|
2106
2108
|
# TODO (shomilj): Add verification to the K8S compute stack as well.
|
2107
2109
|
if compute_stack == ComputeStack.VM:
|
2108
2110
|
with self.log.spinner("Verifying cloud resources...") as spinner:
|
2109
|
-
|
2111
|
+
if boto3_session is None:
|
2112
|
+
boto3_session = boto3.Session(region_name=region)
|
2110
2113
|
if not skip_verifications and not self.verify_aws_cloud_resources(
|
2111
2114
|
cloud_resource=create_cloud_resource,
|
2112
2115
|
boto3_session=boto3_session,
|
@@ -2264,15 +2267,17 @@ class CloudController(BaseController):
|
|
2264
2267
|
gcp_logger,
|
2265
2268
|
strict=strict,
|
2266
2269
|
)
|
2267
|
-
verify_filestore_result = verify_lib.verify_filestore(
|
2268
|
-
factory, cloud_resource, region, gcp_logger, strict=strict
|
2269
|
-
)
|
2270
2270
|
verify_cloud_storage_result = verify_lib.verify_cloud_storage(
|
2271
2271
|
factory, cloud_resource, project_id, region, gcp_logger, strict=strict,
|
2272
2272
|
)
|
2273
2273
|
verify_anyscale_access_result = verify_anyscale_access(
|
2274
2274
|
self.api_client, cloud_id, CloudProviders.GCP, self.log
|
2275
2275
|
)
|
2276
|
+
verify_filestore_result = True
|
2277
|
+
if cloud_resource.gcp_filestore_config.instance_name:
|
2278
|
+
verify_filestore_result = verify_lib.verify_filestore(
|
2279
|
+
factory, cloud_resource, region, gcp_logger, strict=strict
|
2280
|
+
)
|
2276
2281
|
verify_memorystore_result = True
|
2277
2282
|
if cloud_resource.memorystore_instance_config is not None:
|
2278
2283
|
verify_memorystore_result = verify_lib.verify_memorystore(
|
@@ -2287,10 +2292,13 @@ class CloudController(BaseController):
|
|
2287
2292
|
f"anyscale iam service account: {self._passed_or_failed_str_from_bool(verify_gcp_access_service_account_result)}",
|
2288
2293
|
f"cluster node service account: {self._passed_or_failed_str_from_bool(verify_gcp_dataplane_service_account_result)}",
|
2289
2294
|
f"firewall policy: {self._passed_or_failed_str_from_bool(verify_firewall_policy_result)}",
|
2290
|
-
f"filestore: {self._passed_or_failed_str_from_bool(verify_filestore_result)}",
|
2291
2295
|
f"cloud storage: {self._passed_or_failed_str_from_bool(verify_cloud_storage_result)}",
|
2292
2296
|
]
|
2293
2297
|
|
2298
|
+
if cloud_resource.gcp_filestore_config.instance_name:
|
2299
|
+
verification_results.append(
|
2300
|
+
f"filestore: {self._passed_or_failed_str_from_bool(verify_filestore_result)}"
|
2301
|
+
)
|
2294
2302
|
if cloud_resource.memorystore_instance_config is not None:
|
2295
2303
|
verification_results.append(
|
2296
2304
|
f"memorystore: {self._passed_or_failed_str_from_bool(verify_memorystore_result)}"
|
@@ -2425,9 +2433,7 @@ class CloudController(BaseController):
|
|
2425
2433
|
instance_service_account_email = ""
|
2426
2434
|
subnet_names = []
|
2427
2435
|
|
2428
|
-
enable_filestore =
|
2429
|
-
filestore_location and filestore_instance_id
|
2430
|
-
)
|
2436
|
+
enable_filestore = filestore_location and filestore_instance_id
|
2431
2437
|
|
2432
2438
|
# Normally, for Kubernetes clouds, we don't need a VPC name, since networking is managed by Kubernetes.
|
2433
2439
|
# For Kubernetes clouds on GCP where Filestore is enabled, we require the VPC name, since it is needed
|
@@ -2458,7 +2464,9 @@ class CloudController(BaseController):
|
|
2458
2464
|
filestore_config = GCPFileStoreConfig(
|
2459
2465
|
instance_name="", mount_target_ip="", root_dir=""
|
2460
2466
|
)
|
2461
|
-
|
2467
|
+
if compute_stack == ComputeStack.K8S:
|
2468
|
+
# Set vpc_name to empty string for Kubernetes clouds
|
2469
|
+
vpc_name = ""
|
2462
2470
|
|
2463
2471
|
if memorystore_instance_name:
|
2464
2472
|
memorystore_instance_config = gcp_utils.get_gcp_memorystore_config(
|
@@ -411,7 +411,6 @@ class ClusterController(BaseController):
|
|
411
411
|
cluster.id,
|
412
412
|
cluster.state,
|
413
413
|
cluster.cloud_id,
|
414
|
-
cluster.cost_since_restarted_dollars,
|
415
414
|
get_endpoint(f"/projects/{cluster.project_id}/clusters/{cluster.id}"),
|
416
415
|
]
|
417
416
|
for cluster in cluster_list
|
@@ -419,14 +418,7 @@ class ClusterController(BaseController):
|
|
419
418
|
|
420
419
|
table = tabulate.tabulate(
|
421
420
|
clusters_table,
|
422
|
-
headers=[
|
423
|
-
"NAME",
|
424
|
-
"ID",
|
425
|
-
"STATE",
|
426
|
-
"CLOUD ID",
|
427
|
-
"COST SINCE LAST START",
|
428
|
-
"URL",
|
429
|
-
],
|
421
|
+
headers=["NAME", "ID", "STATE", "CLOUD ID", "URL",],
|
430
422
|
tablefmt="plain",
|
431
423
|
)
|
432
424
|
print(f"Clusters:\n{table}")
|
@@ -316,7 +316,6 @@ class JobController(BaseController):
|
|
316
316
|
output_map = {
|
317
317
|
"Name": job.name,
|
318
318
|
"Id": job.id,
|
319
|
-
"Cost (dollars)": job.cost_dollars,
|
320
319
|
"Project name": job.project.name,
|
321
320
|
"Cluster name": job.last_job_run.cluster.name
|
322
321
|
if job.last_job_run and job.last_job_run.cluster
|
@@ -371,7 +370,6 @@ class JobController(BaseController):
|
|
371
370
|
[
|
372
371
|
job.name,
|
373
372
|
job.id,
|
374
|
-
job.cost_dollars,
|
375
373
|
job.project.name,
|
376
374
|
job.last_job_run.cluster.name
|
377
375
|
if job.last_job_run and job.last_job_run.cluster
|
@@ -390,7 +388,6 @@ class JobController(BaseController):
|
|
390
388
|
headers=[
|
391
389
|
"NAME",
|
392
390
|
"ID",
|
393
|
-
"COST",
|
394
391
|
"PROJECT NAME",
|
395
392
|
"CLUSTER NAME",
|
396
393
|
"CURRENT STATE",
|
@@ -22,13 +22,22 @@ class PrivateResourceQuotaSDK(BaseSDK):
|
|
22
22
|
else None
|
23
23
|
)
|
24
24
|
|
25
|
-
user_id =
|
26
|
-
|
25
|
+
user_id = None
|
26
|
+
if create_resource_quota.user_email:
|
27
|
+
users = self.client.get_organization_collaborators(
|
27
28
|
email=create_resource_quota.user_email
|
28
|
-
)
|
29
|
-
|
30
|
-
|
31
|
-
|
29
|
+
)
|
30
|
+
|
31
|
+
if len(users) == 0:
|
32
|
+
raise ValueError(
|
33
|
+
f"User with email '{create_resource_quota.user_email}' not found."
|
34
|
+
)
|
35
|
+
|
36
|
+
if len(users) > 1:
|
37
|
+
raise ValueError(
|
38
|
+
f"Multiple users found for email '{create_resource_quota.user_email}'. Please contact Anyscale support."
|
39
|
+
)
|
40
|
+
user_id = users[0].user_id
|
32
41
|
|
33
42
|
create_resource_quota_model = CreateResourceQuotaModel(
|
34
43
|
name=create_resource_quota.name,
|