Geode-Simplex 9.7.0__cp310-cp310-manylinux_2_28_x86_64.whl → 9.8.10__cp310-cp310-manylinux_2_28_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of Geode-Simplex might be problematic. Click here for more details.

Files changed (29) hide show
  1. geode_simplex/__init__.pyi +18 -0
  2. geode_simplex/brep_simplex.pyi +9 -0
  3. geode_simplex/lib64/__init__.pyi +5 -0
  4. geode_simplex/lib64/geode_simplex_py_brep.cpython-310-x86_64-linux-gnu.so +0 -0
  5. geode_simplex/lib64/geode_simplex_py_brep.pyi +13 -0
  6. geode_simplex/lib64/geode_simplex_py_metric.cpython-310-x86_64-linux-gnu.so +0 -0
  7. geode_simplex/lib64/geode_simplex_py_metric.pyi +87 -0
  8. geode_simplex/lib64/geode_simplex_py_section.cpython-310-x86_64-linux-gnu.so +0 -0
  9. geode_simplex/lib64/geode_simplex_py_section.pyi +13 -0
  10. geode_simplex/lib64/libGeode-Simplex_brep.so +0 -0
  11. geode_simplex/lib64/libGeode-Simplex_core.so +0 -0
  12. geode_simplex/lib64/libGeode-Simplex_corner.so +0 -0
  13. geode_simplex/lib64/libGeode-Simplex_line2d.so +0 -0
  14. geode_simplex/lib64/libGeode-Simplex_line3d.so +0 -0
  15. geode_simplex/lib64/libGeode-Simplex_line_common.so +0 -0
  16. geode_simplex/lib64/libGeode-Simplex_metric.so +0 -0
  17. geode_simplex/lib64/libGeode-Simplex_section.so +0 -0
  18. geode_simplex/lib64/libGeode-Simplex_solid.so +0 -0
  19. geode_simplex/lib64/libGeode-Simplex_surface2d.so +0 -0
  20. geode_simplex/lib64/libGeode-Simplex_surface3d.so +0 -0
  21. geode_simplex/lib64/libGeode-Simplex_surface_common.so +0 -0
  22. geode_simplex/metric_simplex.pyi +7 -0
  23. geode_simplex/py.typed +0 -0
  24. geode_simplex/section_simplex.pyi +8 -0
  25. {geode_simplex-9.7.0.dist-info → geode_simplex-9.8.10.dist-info}/METADATA +6 -6
  26. geode_simplex-9.8.10.dist-info/RECORD +32 -0
  27. geode_simplex-9.7.0.dist-info/RECORD +0 -23
  28. {geode_simplex-9.7.0.dist-info → geode_simplex-9.8.10.dist-info}/WHEEL +0 -0
  29. {geode_simplex-9.7.0.dist-info → geode_simplex-9.8.10.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,18 @@
1
+ from __future__ import annotations
2
+ import geode_background as geode_background
3
+ import geode_common as geode_common
4
+ import geode_numerics as geode_numerics
5
+ from geode_simplex.lib64.geode_simplex_py_brep import SimplexBRepLibrary
6
+ from geode_simplex.lib64.geode_simplex_py_brep import brep_simplex_remesh
7
+ from geode_simplex.lib64.geode_simplex_py_metric import BRepMetricConstraints
8
+ from geode_simplex.lib64.geode_simplex_py_metric import SectionMetricConstraints
9
+ from geode_simplex.lib64.geode_simplex_py_metric import SimplexMetricLibrary
10
+ from geode_simplex.lib64.geode_simplex_py_section import SimplexSectionLibrary
11
+ from geode_simplex.lib64.geode_simplex_py_section import section_simplex_remesh
12
+ import opengeode as opengeode
13
+ import opengeode_inspector as opengeode_inspector
14
+ from . import brep_simplex
15
+ from . import lib64
16
+ from . import metric_simplex
17
+ from . import section_simplex
18
+ __all__: list[str] = ['BRepMetricConstraints', 'SectionMetricConstraints', 'SimplexBRepLibrary', 'SimplexMetricLibrary', 'SimplexSectionLibrary', 'brep_simplex', 'brep_simplex_remesh', 'geode_background', 'geode_common', 'geode_numerics', 'lib64', 'metric_simplex', 'opengeode', 'opengeode_inspector', 'section_simplex', 'section_simplex_remesh']
@@ -0,0 +1,9 @@
1
+ from __future__ import annotations
2
+ import geode_background as geode_background
3
+ import geode_common as geode_common
4
+ import geode_numerics as geode_numerics
5
+ from geode_simplex.lib64.geode_simplex_py_brep import SimplexBRepLibrary
6
+ from geode_simplex.lib64.geode_simplex_py_brep import brep_simplex_remesh
7
+ import opengeode as opengeode
8
+ import opengeode_inspector as opengeode_inspector
9
+ __all__: list[str] = ['SimplexBRepLibrary', 'brep_simplex_remesh', 'geode_background', 'geode_common', 'geode_numerics', 'opengeode', 'opengeode_inspector']
@@ -0,0 +1,5 @@
1
+ from __future__ import annotations
2
+ from . import geode_simplex_py_brep
3
+ from . import geode_simplex_py_metric
4
+ from . import geode_simplex_py_section
5
+ __all__: list[str] = ['geode_simplex_py_brep', 'geode_simplex_py_metric', 'geode_simplex_py_section']
@@ -0,0 +1,13 @@
1
+ """
2
+ Geode-Simplex Python binding for brep
3
+ """
4
+ from __future__ import annotations
5
+ import geode_common.lib64.geode_common_py_metric
6
+ import opengeode.lib64.opengeode_py_model
7
+ __all__: list[str] = ['SimplexBRepLibrary', 'brep_simplex_remesh']
8
+ class SimplexBRepLibrary:
9
+ @staticmethod
10
+ def initialize() -> None:
11
+ ...
12
+ def brep_simplex_remesh(arg0: opengeode.lib64.opengeode_py_model.BRep, arg1: geode_common.lib64.geode_common_py_metric.Metric3D) -> tuple[opengeode.lib64.opengeode_py_model.BRep, opengeode.lib64.opengeode_py_model.ModelCopyMapping]:
13
+ ...
@@ -0,0 +1,87 @@
1
+ """
2
+ Geode-Simplex Python binding for metric
3
+ """
4
+ from __future__ import annotations
5
+ import geode_common.lib64.geode_common_py_metric
6
+ import opengeode.lib64.opengeode_py_mesh
7
+ import opengeode.lib64.opengeode_py_model
8
+ import typing
9
+ __all__: list[str] = ['BRepMetricConstraints', 'SectionMetricConstraints', 'SimplexMetricLibrary']
10
+ class BRepMetricConstraints:
11
+ def __init__(self, arg0: opengeode.lib64.opengeode_py_model.BRep) -> None:
12
+ ...
13
+ def block_metric(self, arg0: opengeode.lib64.opengeode_py_model.Block3D) -> float | None:
14
+ ...
15
+ def build_metric(self) -> geode_common.lib64.geode_common_py_metric.Metric3D:
16
+ ...
17
+ def corner_metric(self, arg0: opengeode.lib64.opengeode_py_model.Corner3D) -> float | None:
18
+ ...
19
+ def default_metric(self) -> float:
20
+ ...
21
+ def export_constraints(self, arg0: str) -> None:
22
+ ...
23
+ def gradation(self) -> float:
24
+ ...
25
+ def import_constraints(self, arg0: str) -> None:
26
+ ...
27
+ def line_metric(self, arg0: opengeode.lib64.opengeode_py_model.Line3D) -> float | None:
28
+ ...
29
+ def set_block_metric(self, arg0: opengeode.lib64.opengeode_py_model.Block3D, arg1: float) -> None:
30
+ ...
31
+ def set_corner_metric(self, arg0: opengeode.lib64.opengeode_py_model.Corner3D, arg1: float) -> None:
32
+ ...
33
+ def set_default_metric(self, arg0: float) -> None:
34
+ ...
35
+ def set_edged_curve_metric(self, arg0: opengeode.lib64.opengeode_py_mesh.EdgedCurve3D, arg1: float) -> None:
36
+ ...
37
+ def set_gradation(self, arg0: float) -> None:
38
+ ...
39
+ def set_line_metric(self, arg0: opengeode.lib64.opengeode_py_model.Line3D, arg1: float) -> None:
40
+ ...
41
+ def set_point_set_metric(self, arg0: opengeode.lib64.opengeode_py_mesh.PointSet3D, arg1: float) -> None:
42
+ ...
43
+ def set_surface_metric(self, arg0: opengeode.lib64.opengeode_py_model.Surface3D, arg1: float) -> None:
44
+ ...
45
+ def set_triangulated_surface_metric(self, arg0: opengeode.lib64.opengeode_py_mesh.TriangulatedSurface3D, arg1: float) -> None:
46
+ ...
47
+ def surface_metric(self, arg0: opengeode.lib64.opengeode_py_model.Surface3D) -> float | None:
48
+ ...
49
+ class SectionMetricConstraints:
50
+ def __init__(self, arg0: opengeode.lib64.opengeode_py_model.Section) -> None:
51
+ ...
52
+ def build_metric(self) -> geode_common.lib64.geode_common_py_metric.Metric2D:
53
+ ...
54
+ def corner_metric(self, arg0: opengeode.lib64.opengeode_py_model.Corner2D) -> float | None:
55
+ ...
56
+ def default_metric(self) -> float:
57
+ ...
58
+ def export_constraints(self, arg0: str) -> None:
59
+ ...
60
+ def gradation(self) -> float:
61
+ ...
62
+ def import_constraints(self, arg0: str) -> None:
63
+ ...
64
+ def line_metric(self, arg0: opengeode.lib64.opengeode_py_model.Line2D) -> float | None:
65
+ ...
66
+ def set_corner_metric(self, arg0: opengeode.lib64.opengeode_py_model.Corner2D, arg1: float) -> None:
67
+ ...
68
+ def set_default_metric(self, arg0: float) -> None:
69
+ ...
70
+ def set_edged_curve_metric(self, arg0: opengeode.lib64.opengeode_py_mesh.EdgedCurve2D, arg1: float) -> None:
71
+ ...
72
+ def set_gradation(self, arg0: float) -> None:
73
+ ...
74
+ def set_line_metric(self, arg0: opengeode.lib64.opengeode_py_model.Line2D, arg1: float) -> None:
75
+ ...
76
+ def set_point_set_metric(self, arg0: opengeode.lib64.opengeode_py_mesh.PointSet2D, arg1: float) -> None:
77
+ ...
78
+ def set_surface_metric(self, arg0: opengeode.lib64.opengeode_py_model.Surface2D, arg1: float) -> None:
79
+ ...
80
+ def set_triangulated_surface_metric(self, arg0: opengeode.lib64.opengeode_py_mesh.TriangulatedSurface2D, arg1: float) -> None:
81
+ ...
82
+ def surface_metric(self, arg0: opengeode.lib64.opengeode_py_model.Surface2D) -> float | None:
83
+ ...
84
+ class SimplexMetricLibrary:
85
+ @staticmethod
86
+ def initialize() -> None:
87
+ ...
@@ -0,0 +1,13 @@
1
+ """
2
+ Geode-Simplex Python binding for section
3
+ """
4
+ from __future__ import annotations
5
+ import geode_common.lib64.geode_common_py_metric
6
+ import opengeode.lib64.opengeode_py_model
7
+ __all__: list[str] = ['SimplexSectionLibrary', 'section_simplex_remesh']
8
+ class SimplexSectionLibrary:
9
+ @staticmethod
10
+ def initialize() -> None:
11
+ ...
12
+ def section_simplex_remesh(arg0: opengeode.lib64.opengeode_py_model.Section, arg1: geode_common.lib64.geode_common_py_metric.Metric2D) -> tuple[opengeode.lib64.opengeode_py_model.Section, opengeode.lib64.opengeode_py_model.ModelCopyMapping]:
13
+ ...
@@ -0,0 +1,7 @@
1
+ from __future__ import annotations
2
+ import geode_common as geode_common
3
+ from geode_simplex.lib64.geode_simplex_py_metric import BRepMetricConstraints
4
+ from geode_simplex.lib64.geode_simplex_py_metric import SectionMetricConstraints
5
+ from geode_simplex.lib64.geode_simplex_py_metric import SimplexMetricLibrary
6
+ import opengeode as opengeode
7
+ __all__: list[str] = ['BRepMetricConstraints', 'SectionMetricConstraints', 'SimplexMetricLibrary', 'geode_common', 'opengeode']
geode_simplex/py.typed ADDED
File without changes
@@ -0,0 +1,8 @@
1
+ from __future__ import annotations
2
+ import geode_background as geode_background
3
+ import geode_common as geode_common
4
+ import geode_numerics as geode_numerics
5
+ from geode_simplex.lib64.geode_simplex_py_section import SimplexSectionLibrary
6
+ from geode_simplex.lib64.geode_simplex_py_section import section_simplex_remesh
7
+ import opengeode as opengeode
8
+ __all__: list[str] = ['SimplexSectionLibrary', 'geode_background', 'geode_common', 'geode_numerics', 'opengeode', 'section_simplex_remesh']
@@ -1,16 +1,16 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: Geode-Simplex
3
- Version: 9.7.0
3
+ Version: 9.8.10
4
4
  Summary: Simplex remeshing Geode-solutions OpenGeode module
5
5
  Author-email: Geode-solutions <contact@geode-solutions.com>
6
6
  License: Proprietary
7
7
  Requires-Python: <3.13,>=3.9
8
8
  Description-Content-Type: text/markdown
9
- Requires-Dist: geode-background==9.*,>=9.4.2
10
- Requires-Dist: geode-common==33.*,>=33.9.2
11
- Requires-Dist: geode-numerics==6.*,>=6.3.1
12
- Requires-Dist: opengeode-core==15.*,>=15.25.0
13
- Requires-Dist: opengeode-inspector==6.*,>=6.7.4
9
+ Requires-Dist: geode-background==9.*,>=9.6.13
10
+ Requires-Dist: geode-common==33.*,>=33.12.2
11
+ Requires-Dist: geode-numerics==6.*,>=6.4.4
12
+ Requires-Dist: opengeode-core==15.*,>=15.30.0
13
+ Requires-Dist: opengeode-inspector==6.*,>=6.8.5
14
14
 
15
15
  <h1 align="center">Geode-Simplex<sup><i>by Geode-solutions</i></sup></h1>
16
16
  <h3 align="center">Simplex remeshing</h3>
@@ -0,0 +1,32 @@
1
+ geode_simplex/__init__.py,sha256=j4co7CR9hIJW-Iv9LdmUZTflUeT4Wrz1AxZvaXs0LSw,135
2
+ geode_simplex/__init__.pyi,sha256=hv6sk9snnFPkqSEXcxr5QiNZ-hL2A7rngHpXnsRbb8s,1230
3
+ geode_simplex/brep_simplex.py,sha256=a5KvBC-TgzijdnPLrSq9ZgiGYJZhOLz3PP9pGfI0YHI,257
4
+ geode_simplex/brep_simplex.pyi,sha256=Z2UETMUoaZZAFnTk4yxKpZXywPtFkGh9ivDfF-GMgLg,539
5
+ geode_simplex/metric_simplex.py,sha256=3lbDinMu3heHuiJgZb97PT1ET3K6RyiId1kp42xHY-g,188
6
+ geode_simplex/metric_simplex.pyi,sha256=X4ZOgzCPSYyCLwjZNX4NXJrYDz1KGTPXLPIr_Q1WJBU,465
7
+ geode_simplex/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
+ geode_simplex/section_simplex.py,sha256=Q4_J2knF78lwnS8_jx-0H4rVF1kYceKfze7GezMhXWo,237
9
+ geode_simplex/section_simplex.pyi,sha256=EEEnRedtzmtmCWL14qAgn3wNCU7Ph9xVJ7ijvQVCzpM,484
10
+ geode_simplex/lib64/__init__.pyi,sha256=I04mM6D2OP09rxOc7lN26-WSrTWEXxvZIuo7lBH9SkY,250
11
+ geode_simplex/lib64/geode_simplex_py_brep.cpython-310-x86_64-linux-gnu.so,sha256=9s0Yr8eeiM44X6nESq9lrmbNIMuGYlopZ8TojTehJo0,155256
12
+ geode_simplex/lib64/geode_simplex_py_brep.pyi,sha256=7LNRPbfbWRyr1zTehvt2MDPiYb1i5ej4oNOlbEe68Oc,566
13
+ geode_simplex/lib64/geode_simplex_py_metric.cpython-310-x86_64-linux-gnu.so,sha256=sy31nqsRcguCCGSQTcd2MsBPaY-5VrluJfJFiEKfSu4,212632
14
+ geode_simplex/lib64/geode_simplex_py_metric.pyi,sha256=llTz2ROCSnAY_51vSeviT-S_Tmq5h1GsmyiZJCpBXIE,3903
15
+ geode_simplex/lib64/geode_simplex_py_section.cpython-310-x86_64-linux-gnu.so,sha256=1L6GEIhYHriXYtsKrpDNbPTezRuslKS0eRpFDndTqbo,155256
16
+ geode_simplex/lib64/geode_simplex_py_section.pyi,sha256=isQYtsiAJNjhcgqO16KchxUyNiyjwfjzmIQobWBGFik,587
17
+ geode_simplex/lib64/libGeode-Simplex_brep.so,sha256=3Kp6pBU_52_sdJAYGm_hQ9lqGyHS-dmtGuj4XNTmxXc,5812584
18
+ geode_simplex/lib64/libGeode-Simplex_core.so,sha256=B5glugeH3beUpwc0nfMi_736CSyzX_34pFCAZuUnzGc,5631208
19
+ geode_simplex/lib64/libGeode-Simplex_corner.so,sha256=oaY1lhraidzHAi67bA5bzxjI7JAsYgPnmETkBdcq-14,18840
20
+ geode_simplex/lib64/libGeode-Simplex_line2d.so,sha256=uOkoW-KZtOJRS06uDKu4dA4gHR49mSGU4Y6QjJgG6ek,72576
21
+ geode_simplex/lib64/libGeode-Simplex_line3d.so,sha256=-7kaQm2321fWz4IoWMcVGGl4BynTnO0b5s1KL7kOCwM,76680
22
+ geode_simplex/lib64/libGeode-Simplex_line_common.so,sha256=YvAUisL3hxL6PLF4TW9kqOn9oBqlMa2r1PjIXPdbT7k,262304
23
+ geode_simplex/lib64/libGeode-Simplex_metric.so,sha256=NFlbP-TZQPQKQK5O-cyCwHt1C2GQJOvLWyxC_G4V44E,217520
24
+ geode_simplex/lib64/libGeode-Simplex_section.so,sha256=PzumyszRk2xQXFYV1yUY1gbfbZTXs_KI_r9TcRZ2QuA,5502760
25
+ geode_simplex/lib64/libGeode-Simplex_solid.so,sha256=plouqHNmz6K4SVa2cq7uSjQY6BPiIALqX8EoWrKiGu0,953504
26
+ geode_simplex/lib64/libGeode-Simplex_surface2d.so,sha256=IUtMaJNKz5EqDYj27lE7XopHz76XMr2Olh1-tuI6fSc,138816
27
+ geode_simplex/lib64/libGeode-Simplex_surface3d.so,sha256=QMBST-UWI7O-e8ZRkTsZPtqd8X0rUMyxEzEbFXrk09E,340944
28
+ geode_simplex/lib64/libGeode-Simplex_surface_common.so,sha256=OC53H9F547waQy4cM8zIzsRgqRubMkZl3vNWTxvAByI,438584
29
+ geode_simplex-9.8.10.dist-info/METADATA,sha256=bSZGDZ4Io2qhfPiklvxoS2wE7v7uW4gExpSFrPc-dMc,1876
30
+ geode_simplex-9.8.10.dist-info/WHEEL,sha256=0-G7woG4LgutcYzUGJCOYFgoh749-FtfhSMeIPLVGS0,104
31
+ geode_simplex-9.8.10.dist-info/top_level.txt,sha256=qVrD68Hw2vhKcJrG51EYDm9MTGp9SfmZRdSrRKjmdFI,14
32
+ geode_simplex-9.8.10.dist-info/RECORD,,
@@ -1,23 +0,0 @@
1
- geode_simplex/__init__.py,sha256=j4co7CR9hIJW-Iv9LdmUZTflUeT4Wrz1AxZvaXs0LSw,135
2
- geode_simplex/brep_simplex.py,sha256=a5KvBC-TgzijdnPLrSq9ZgiGYJZhOLz3PP9pGfI0YHI,257
3
- geode_simplex/metric_simplex.py,sha256=3lbDinMu3heHuiJgZb97PT1ET3K6RyiId1kp42xHY-g,188
4
- geode_simplex/section_simplex.py,sha256=Q4_J2knF78lwnS8_jx-0H4rVF1kYceKfze7GezMhXWo,237
5
- geode_simplex/lib64/geode_simplex_py_brep.cpython-310-x86_64-linux-gnu.so,sha256=DbZZDuFMm5G9bArfX3eIp-ILv8kDTNINPf5XVPvbGak,155256
6
- geode_simplex/lib64/geode_simplex_py_metric.cpython-310-x86_64-linux-gnu.so,sha256=OzH5MV0qJXa3QyYE-sMA6Yek7My8BVxlSmpQIaZoBGk,212632
7
- geode_simplex/lib64/geode_simplex_py_section.cpython-310-x86_64-linux-gnu.so,sha256=UDsx82s-Hy9tvD3EiMsGQ_IxGU-KmAOxsGzljYiKMh0,155256
8
- geode_simplex/lib64/libGeode-Simplex_brep.so,sha256=dG1jpfmWDKTefF7vPde_AktA0Ld5zIVabOfXMoYG5II,5808424
9
- geode_simplex/lib64/libGeode-Simplex_core.so,sha256=fHVfK5fGCQEHbkI2h-U23jh9sfya1OdogycgvUW0PsI,5627048
10
- geode_simplex/lib64/libGeode-Simplex_corner.so,sha256=qG8Geh--LOuHmQT5lz59_FWxZ35ooG5HDDKfqDMptC8,18840
11
- geode_simplex/lib64/libGeode-Simplex_line2d.so,sha256=cD4HLrEHZEg8UPovonDl77wVtxbSJ-5Luj6_Vxa7POc,72552
12
- geode_simplex/lib64/libGeode-Simplex_line3d.so,sha256=2tuZDkHXpLbHb1rzsCYDjnXgqSg8i27CSjMTgcjSkdo,76656
13
- geode_simplex/lib64/libGeode-Simplex_line_common.so,sha256=2Zl-TC7KSWu6dmojOB7hj26heISQiNzmqikm9NnALuY,262288
14
- geode_simplex/lib64/libGeode-Simplex_metric.so,sha256=y4ZzlsALY8W3JKZy1o0om1eCFavFWwqbmCRYUf-_G6Q,208832
15
- geode_simplex/lib64/libGeode-Simplex_section.so,sha256=CdfnSMxg_F8WUFSJPLOTXdqjRgmXdnWVoJP0kOaEi7o,5502760
16
- geode_simplex/lib64/libGeode-Simplex_solid.so,sha256=nwgQtLz6bHveQqhJitMcBdBS0esmvkAOYKGcdIwqzs0,953472
17
- geode_simplex/lib64/libGeode-Simplex_surface2d.so,sha256=XtKcNt_-OeIYRF8Cm3NmRfi-7Hri5eg2qNFTSiO1iYM,134696
18
- geode_simplex/lib64/libGeode-Simplex_surface3d.so,sha256=OwW1zugtu6DdcMuoODT9KCRs6Oy0GOVk8l8oeO2LUcM,308032
19
- geode_simplex/lib64/libGeode-Simplex_surface_common.so,sha256=bsRSP0MzDBSlwYu_Yn_sj4AsRXd9JUUvSdb9Z6fEb8o,442728
20
- geode_simplex-9.7.0.dist-info/METADATA,sha256=PhnD5aMLnSKPSsdvOW76fAvN3n_BUjx4xqgG8KjtYdg,1873
21
- geode_simplex-9.7.0.dist-info/WHEEL,sha256=0-G7woG4LgutcYzUGJCOYFgoh749-FtfhSMeIPLVGS0,104
22
- geode_simplex-9.7.0.dist-info/top_level.txt,sha256=qVrD68Hw2vhKcJrG51EYDm9MTGp9SfmZRdSrRKjmdFI,14
23
- geode_simplex-9.7.0.dist-info/RECORD,,