fmu-sumo 2.3.6__py3-none-any.whl → 2.3.8__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  """Module for searchcontext for collection of cases."""
2
2
 
3
- from fmu.sumo.explorer.objects._search_context import SearchContext
3
+ from ._search_context import SearchContext
4
4
 
5
5
 
6
6
  class Cases(SearchContext):
@@ -4,8 +4,8 @@ from typing import Dict
4
4
 
5
5
  from sumo.wrapper import SumoClient
6
6
 
7
- from fmu.sumo.explorer.objects._child import Child
8
- from fmu.sumo.explorer.objects._search_context import SearchContext
7
+ from ._child import Child
8
+ from ._search_context import SearchContext
9
9
 
10
10
 
11
11
  class CPGrid(Child):
@@ -32,7 +32,7 @@ class CPGrid(Child):
32
32
  "Unable to import xtgeo; probably not installed."
33
33
  )
34
34
  try:
35
- return grid_from_file(self.blob)
35
+ return grid_from_file(self.blob) # pyright: ignore type
36
36
  except TypeError as type_err:
37
37
  raise TypeError(f"Unknown format: {self.format}") from type_err
38
38
 
@@ -49,7 +49,7 @@ class CPGrid(Child):
49
49
  )
50
50
 
51
51
  try:
52
- return grid_from_file(await self.blob_async)
52
+ return grid_from_file(await self.blob_async) # pyright: ignore type
53
53
  except TypeError as type_err:
54
54
  raise TypeError(f"Unknown format: {self.format}") from type_err
55
55
 
@@ -4,8 +4,8 @@ from typing import Dict
4
4
 
5
5
  from sumo.wrapper import SumoClient
6
6
 
7
- from fmu.sumo.explorer.objects._child import Child
8
- from fmu.sumo.explorer.objects._search_context import SearchContext
7
+ from ._child import Child
8
+ from ._search_context import SearchContext
9
9
 
10
10
 
11
11
  class CPGridProperty(Child):
@@ -1,10 +1,10 @@
1
1
  """Module containing class for cube object"""
2
2
 
3
- from typing import Dict
3
+ from typing import Dict, Tuple
4
4
 
5
5
  from sumo.wrapper import SumoClient
6
6
 
7
- from fmu.sumo.explorer.objects._child import Child
7
+ from ._child import Child
8
8
 
9
9
 
10
10
  class Cube(Child):
@@ -17,64 +17,28 @@ class Cube(Child):
17
17
  metadata (dict): cube metadata
18
18
  """
19
19
  super().__init__(sumo, metadata, blob)
20
- self._url = None
21
- self._sas = None
22
20
 
23
- def _populate_url(self):
24
- res = self._sumo.get(f"/objects('{self.uuid}')/blob/authuri")
21
+ def _extract_auth(self, res) -> Tuple[str, str]:
25
22
  try:
26
23
  res = res.json()
27
- self._url = res.get("baseuri") + self.uuid
28
- self._sas = res.get("auth")
24
+ url = res.get("baseuri") + self.uuid
25
+ sas = res.get("auth")
29
26
  except Exception:
30
- self._url = res.text
31
-
32
- async def _populate_url_async(self):
33
- res = await self._sumo.get_async(
34
- f"/objects('{self.uuid}')/blob/authuri"
35
- )
36
- try:
37
- res = res.json()
38
- self._url = res.get("baseuri") + self.uuid
39
- self._sas = res.get("auth")
40
- except Exception:
41
- self._url = res.text
42
-
43
- @property
44
- def url(self) -> str:
45
- if self._url is None:
46
- self._populate_url()
47
- if self._sas is None:
48
- return self._url
49
- else:
50
- return self._url.split("?")[0] + "/"
51
-
52
- @property
53
- async def url_async(self) -> str:
54
- if self._url is None:
55
- await self._populate_url_async()
56
- if self._sas is None:
57
- return self._url
58
- else:
59
- return self._url.split("?")[0] + "/"
27
+ url, sas = res.text.split("?")
28
+ pass
29
+ return url, sas
60
30
 
61
31
  @property
62
- def sas(self) -> str:
63
- if self._url is None:
64
- self._populate_url()
65
- if self._sas is None:
66
- return self._url.split("?")[1]
67
- else:
68
- return self._sas
32
+ def auth(self) -> Tuple[str, str]:
33
+ res = self._sumo.get(f"/objects('{self.uuid}')/blob/authuri")
34
+ return self._extract_auth(res)
69
35
 
70
36
  @property
71
- async def sas_async(self) -> str:
72
- if self._url is None:
73
- await self._populate_url_async()
74
- if self._sas is None:
75
- return self._url.split("?")[1]
76
- else:
77
- return self._sas
37
+ async def auth_async(self) -> Tuple[str, str]:
38
+ res = await self._sumo.get_async(
39
+ f"/objects('{self.uuid}')/blob/authuri"
40
+ )
41
+ return self._extract_auth(res)
78
42
 
79
43
  @property
80
44
  def openvds_handle(self):
@@ -85,15 +49,10 @@ class Cube(Child):
85
49
  "Unable to import openvds; probably not installed."
86
50
  )
87
51
 
88
- if self._url is None:
89
- self._populate_url()
90
-
91
- if self._sas is None:
92
- return openvds.open(self._url)
93
- else:
94
- url = "azureSAS" + self._url[5:] + "/"
95
- sas = "Suffix=?" + self._sas
96
- return openvds.open(url, sas)
52
+ url, sas = self.auth
53
+ url = url.replace("https://", "azureSAS://") + "/"
54
+ sas = "Suffix=?" + sas
55
+ return openvds.open(url, sas)
97
56
 
98
57
  @property
99
58
  async def openvds_handle_async(self):
@@ -104,12 +63,7 @@ class Cube(Child):
104
63
  "Unable to import openvds; probably not installed."
105
64
  )
106
65
 
107
- if self._url is None:
108
- await self._populate_url_async()
109
-
110
- if self._sas is None:
111
- return openvds.open(self._url)
112
- else:
113
- url = "azureSAS" + self._url[5:] + "/"
114
- sas = "Suffix=?" + self._sas
115
- return openvds.open(url, sas)
66
+ url, sas = await self.auth_async
67
+ url = url.replace("https://", "azureSAS://") + "/"
68
+ sas = "Suffix=?" + sas
69
+ return openvds.open(url, sas)
@@ -1,7 +1,7 @@
1
1
  """Module containing class for dictionary object"""
2
2
 
3
3
  import json
4
- from typing import Dict
4
+ from typing import Dict, Optional
5
5
 
6
6
  from sumo.wrapper import SumoClient
7
7
 
@@ -11,7 +11,7 @@ from fmu.sumo.explorer.objects._child import Child
11
11
  class Dictionary(Child):
12
12
  """Class representing a dictionary object in Sumo"""
13
13
 
14
- _parsed: dict
14
+ _parsed: Optional[Dict]
15
15
 
16
16
  def __init__(self, sumo: SumoClient, metadata: Dict, blob=None) -> None:
17
17
  """
@@ -19,18 +19,26 @@ class Dictionary(Child):
19
19
  sumo (SumoClient): connection to Sumo
20
20
  metadata (dict): dictionary metadata
21
21
  """
22
- self._parsed = None
22
+ self._parsed: Optional[Dict] = None
23
23
 
24
24
  super().__init__(sumo, metadata, blob)
25
25
 
26
26
  def parse(self) -> Dict:
27
+ parsed = (
28
+ json.loads(self.blob.read().decode("utf-8"))
29
+ if self._parsed is None
30
+ else self._parsed
31
+ )
27
32
  if self._parsed is None:
28
- self._parsed = json.loads(self.blob.read().decode("utf-8"))
29
-
30
- return self._parsed
33
+ self._parsed = parsed
34
+ return parsed
31
35
 
32
36
  async def parse_async(self) -> Dict:
37
+ parsed = self._parsed = (
38
+ json.loads((await self.blob_async).read().decode("utf-8"))
39
+ if self._parsed is None
40
+ else self._parsed
41
+ )
33
42
  if self._parsed is None:
34
- self._parsed = json.loads(self.blob_async.read().decode("utf-8"))
35
-
36
- return self._parsed
43
+ self._parsed = parsed
44
+ return parsed
@@ -1,17 +1,20 @@
1
1
  """Module for (pseudo) iteration class."""
2
2
 
3
- from typing import Dict
3
+ from typing import Dict, Optional
4
4
 
5
5
  from sumo.wrapper import SumoClient
6
6
 
7
- from fmu.sumo.explorer.objects._document import Document
8
- from fmu.sumo.explorer.objects._search_context import SearchContext
7
+ from ._document import Document
8
+ from ._search_context import SearchContext
9
9
 
10
10
 
11
11
  class Iteration(Document, SearchContext):
12
12
  """Class for representing an iteration in Sumo."""
13
13
 
14
- def __init__(self, sumo: SumoClient, metadata: Dict):
14
+ def __init__(
15
+ self, sumo: SumoClient, metadata: Dict, blob: Optional[bytes] = None
16
+ ):
17
+ assert blob is None
15
18
  Document.__init__(self, metadata)
16
19
  SearchContext.__init__(
17
20
  self,
@@ -45,6 +48,16 @@ class Iteration(Document, SearchContext):
45
48
  """FMU case name"""
46
49
  return self.get_property("fmu.case.name")
47
50
 
51
+ @property
52
+ def iterationuuid(self) -> str:
53
+ """FMU iteration uuid"""
54
+ return self.get_property("fmu.iteration.uuid")
55
+
56
+ @property
57
+ def iterationname(self) -> str:
58
+ """FMU iteration name"""
59
+ return self.get_property("fmu.iteration.name")
60
+
48
61
  @property
49
62
  def name(self) -> str:
50
63
  """FMU iteration name"""
@@ -1,8 +1,8 @@
1
1
  """Module for searchcontext for collection of iterations."""
2
2
 
3
- from typing import Dict, List
3
+ from typing import Dict
4
4
 
5
- from fmu.sumo.explorer.objects._search_context import SearchContext
5
+ from ._search_context import SearchContext
6
6
 
7
7
 
8
8
  class Iterations(SearchContext):
@@ -17,7 +17,7 @@ class Iterations(SearchContext):
17
17
  async def _maybe_prefetch_async(self, index):
18
18
  return
19
19
 
20
- def get_object(self, uuid: str, select: List[str] = None) -> Dict:
20
+ def get_object(self, uuid: str) -> Dict:
21
21
  """Get metadata object by uuid
22
22
 
23
23
  Args:
@@ -35,9 +35,7 @@ class Iterations(SearchContext):
35
35
 
36
36
  return obj
37
37
 
38
- async def get_object_async(
39
- self, uuid: str, select: List[str] = None
40
- ) -> Dict:
38
+ async def get_object_async(self, uuid: str) -> Dict:
41
39
  """Get metadata object by uuid
42
40
 
43
41
  Args:
@@ -4,7 +4,7 @@ from typing import Dict
4
4
 
5
5
  from sumo.wrapper import SumoClient
6
6
 
7
- from fmu.sumo.explorer.objects._child import Child
7
+ from ._child import Child
8
8
 
9
9
 
10
10
  class Polygons(Child):
@@ -1,17 +1,20 @@
1
1
  """Module for (pseudo) realization class."""
2
2
 
3
- from typing import Dict
3
+ from typing import Dict, Optional
4
4
 
5
5
  from sumo.wrapper import SumoClient
6
6
 
7
- from fmu.sumo.explorer.objects._document import Document
8
- from fmu.sumo.explorer.objects._search_context import SearchContext
7
+ from ._document import Document
8
+ from ._search_context import SearchContext
9
9
 
10
10
 
11
11
  class Realization(Document, SearchContext):
12
12
  """Class for representing a realization in Sumo."""
13
13
 
14
- def __init__(self, sumo: SumoClient, metadata: Dict):
14
+ def __init__(
15
+ self, sumo: SumoClient, metadata: Dict, blob: Optional[bytes] = None
16
+ ):
17
+ assert blob is None
15
18
  Document.__init__(self, metadata)
16
19
  SearchContext.__init__(
17
20
  self,
@@ -54,3 +57,23 @@ class Realization(Document, SearchContext):
54
57
  def iterationname(self) -> str:
55
58
  """FMU iteration name"""
56
59
  return self.get_property("fmu.iteration.name")
60
+
61
+ @property
62
+ def realizationuuid(self) -> str:
63
+ """FMU realization uuid"""
64
+ return self.get_property("fmu.realization.uuid")
65
+
66
+ @property
67
+ def realizationname(self) -> str:
68
+ """FMU realization name"""
69
+ return self.get_property("fmu.realization.name")
70
+
71
+ @property
72
+ def realizationid(self) -> int:
73
+ """FMU realization id"""
74
+ return self.get_property("fmu.realization.id")
75
+
76
+ @property
77
+ def name(self) -> str:
78
+ """FMU realization name"""
79
+ return self.get_property("fmu.realization.name")
@@ -1,8 +1,8 @@
1
1
  """Module for searchcontext for collection of realizations."""
2
2
 
3
- from typing import Dict, List
3
+ from typing import Dict
4
4
 
5
- from fmu.sumo.explorer.objects._search_context import SearchContext
5
+ from ._search_context import SearchContext
6
6
 
7
7
 
8
8
  class Realizations(SearchContext):
@@ -17,7 +17,7 @@ class Realizations(SearchContext):
17
17
  async def _maybe_prefetch_async(self, index):
18
18
  return
19
19
 
20
- def get_object(self, uuid: str, select: List[str] = None) -> Dict:
20
+ def get_object(self, uuid: str) -> Dict:
21
21
  """Get metadata object by uuid
22
22
 
23
23
  Args:
@@ -35,9 +35,7 @@ class Realizations(SearchContext):
35
35
 
36
36
  return obj
37
37
 
38
- async def get_object_async(
39
- self, uuid: str, select: List[str] = None
40
- ) -> Dict:
38
+ async def get_object_async(self, uuid: str) -> Dict:
41
39
  """Get metadata object by uuid
42
40
 
43
41
  Args:
@@ -4,7 +4,7 @@ from typing import Dict
4
4
 
5
5
  from sumo.wrapper import SumoClient
6
6
 
7
- from fmu.sumo.explorer.objects._child import Child
7
+ from ._child import Child
8
8
 
9
9
 
10
10
  class Surface(Child):
@@ -5,7 +5,7 @@ from typing import Dict
5
5
 
6
6
  from sumo.wrapper import SumoClient
7
7
 
8
- from fmu.sumo.explorer.objects._child import Child
8
+ from ._child import Child
9
9
 
10
10
 
11
11
  class Table(Child):
@@ -1,6 +1,7 @@
1
1
  """Module with classes handling time filtering"""
2
2
 
3
3
  from enum import Enum
4
+ from typing import Optional
4
5
 
5
6
 
6
7
  class TimeType(Enum):
@@ -24,8 +25,8 @@ class TimeFilter:
24
25
  def __init__(
25
26
  self,
26
27
  time_type: TimeType,
27
- start: str = None,
28
- end: str = None,
28
+ start: Optional[str] = None,
29
+ end: Optional[str] = None,
29
30
  overlap: bool = False,
30
31
  exact: bool = False,
31
32
  ) -> None:
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: fmu-sumo
3
- Version: 2.3.6
3
+ Version: 2.3.8
4
4
  Summary: Python package for interacting with Sumo in an FMU setting
5
5
  Author: Equinor
6
6
  License: Apache License
@@ -235,6 +235,7 @@ Requires-Dist: sphinx-rtd-theme; extra == "docs"
235
235
  Requires-Dist: autoapi; extra == "docs"
236
236
  Requires-Dist: sphinx-autodoc-typehints; extra == "docs"
237
237
  Requires-Dist: sphinxcontrib-apidoc; extra == "docs"
238
+ Dynamic: license-file
238
239
 
239
240
  # fmu-sumo
240
241
 
@@ -0,0 +1,32 @@
1
+ fmu/__init__.py,sha256=ftS-xRPSH-vU7fIHlnZQaCTWbNvs4owJivNW65kzsIM,85
2
+ fmu/sumo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
+ fmu/sumo/explorer/__init__.py,sha256=Bc1wd1lQO3HP3tsVyPbqaesf2boZwGdtookWp8lmG-k,317
4
+ fmu/sumo/explorer/_version.py,sha256=3Oc3thyKkSSxKGqu1ruTNsjrUTMaCkmwZoi_w-3OL9M,511
5
+ fmu/sumo/explorer/cache.py,sha256=uvz8TciwBnDEwJIHa9wneC0WVWuzhUqyF3dzk4kvGNk,1037
6
+ fmu/sumo/explorer/explorer.py,sha256=pVm6hYWxXH22VslATrnWkmgVSF3OSqLDCoAA3S5FvBo,2857
7
+ fmu/sumo/explorer/filters.py,sha256=_t2PmHeTY9XiBvQeEGM-BpudWUaxIfyUSdNyG70xfRU,875
8
+ fmu/sumo/explorer/timefilter.py,sha256=AQHa18vkCz2BzH7X9GR1ypmNxfvI4gExh_jxAVYrDjc,6260
9
+ fmu/sumo/explorer/objects/__init__.py,sha256=WKBwuUuKX7ymBU1C5GiuBBl1Taq7LJPlDe8SuZmlljk,573
10
+ fmu/sumo/explorer/objects/_child.py,sha256=7w32fdRgFSK1rcpSrWJeX2aE0RniaTv0H57iatSKscc,4516
11
+ fmu/sumo/explorer/objects/_document.py,sha256=ISxLRwWDO6PJRywTfFEua1_D6NgRW2PCbqifHA8ZyPo,1405
12
+ fmu/sumo/explorer/objects/_metrics.py,sha256=q6CSeCjiN1SjNx4G32Lod7Slnflsu3aoJIpwm_VMIhQ,3954
13
+ fmu/sumo/explorer/objects/_search_context.py,sha256=FQr79ZsLm66_1JdPEzuaqS35YWWcVL6qrOvjtgg_weM,56810
14
+ fmu/sumo/explorer/objects/case.py,sha256=fKp7X43ETLE1RaH3rMYxZiIuduRmf0JSnJ5gRoUgNPE,3813
15
+ fmu/sumo/explorer/objects/cases.py,sha256=_deqorrU8KjtkJAgtxOBl9Q-3_FVuxkVydul_wknerE,527
16
+ fmu/sumo/explorer/objects/cpgrid.py,sha256=nuRgZ6FVEOPZT1ibd-rJhlbYYZ6BuUxXZPzovcH0kVc,2548
17
+ fmu/sumo/explorer/objects/cpgrid_property.py,sha256=PqqR05oKKKiTTG0iDO9V6TADdHY7VUsLHjai6SqahVo,2694
18
+ fmu/sumo/explorer/objects/cube.py,sha256=6pJLDajex-mblkt9YRZxtcK1XHcRZ8mlPPqJ-yDGEbA,1948
19
+ fmu/sumo/explorer/objects/dictionary.py,sha256=9Nt8Br7H4TgXO6qc46HtV1vB40LsEQb6WjWYDT-Ve0g,1191
20
+ fmu/sumo/explorer/objects/iteration.py,sha256=CqdXITmClNer_Rq7JPq4TNUwgP3X4PwKQtKDXn8yyqM,1690
21
+ fmu/sumo/explorer/objects/iterations.py,sha256=trMtJiIgbTuWiVGfECtJzzwlV_Bc-ehg5ra5lz8hKtE,1509
22
+ fmu/sumo/explorer/objects/polygons.py,sha256=k5BKuXHsLxzhMR5KId6Fly4FNygTOcShFCCMXvhjWg4,1187
23
+ fmu/sumo/explorer/objects/realization.py,sha256=oikKdV-rCEOVAECJiEMYpfhyYupEIbQ_JcGXJ1Je9LU,2130
24
+ fmu/sumo/explorer/objects/realizations.py,sha256=bez1aVgvehmOZ28IyfBv0lFWroG1ZhQ0qH2nvXnRYbQ,1519
25
+ fmu/sumo/explorer/objects/surface.py,sha256=zHBtjLCIfkRHBv39OeJjA9lq3puLTfTII6TndZTtxVI,1627
26
+ fmu/sumo/explorer/objects/table.py,sha256=vLor3YTddHkDWZSMyWPQsddFNQ2_VXE_O-stmPIWIaQ,4900
27
+ fmu/sumo/explorer/objects/table_aggregated.py,sha256=vq2EcR36JTcQsyCeyiMgigJMDFDQfVrlTZe2LdXrDFo,3794
28
+ fmu_sumo-2.3.8.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
29
+ fmu_sumo-2.3.8.dist-info/METADATA,sha256=PK2TO57uD0AWODdK3b8t9revZHVOiY3UfHozF3Ou0nw,14780
30
+ fmu_sumo-2.3.8.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
31
+ fmu_sumo-2.3.8.dist-info/top_level.txt,sha256=Z-FIY3pxn0UK2Wxi9IJ7fKoLSraaxuNGi1eokiE0ShM,4
32
+ fmu_sumo-2.3.8.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (76.0.0)
2
+ Generator: setuptools (78.1.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,32 +0,0 @@
1
- fmu/__init__.py,sha256=ftS-xRPSH-vU7fIHlnZQaCTWbNvs4owJivNW65kzsIM,85
2
- fmu/sumo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
- fmu/sumo/explorer/__init__.py,sha256=Bc1wd1lQO3HP3tsVyPbqaesf2boZwGdtookWp8lmG-k,317
4
- fmu/sumo/explorer/_version.py,sha256=vyHreFbi5FOhiaz30HIVL3nIoqJd89y5l-gC9UA3AqA,511
5
- fmu/sumo/explorer/cache.py,sha256=uvz8TciwBnDEwJIHa9wneC0WVWuzhUqyF3dzk4kvGNk,1037
6
- fmu/sumo/explorer/explorer.py,sha256=0dSUGG2-4yOYGXRWC5Ubrdjd-hIEEgRxJlMvvIAYom0,2806
7
- fmu/sumo/explorer/filters.py,sha256=NVTWbjL-dIHQZeWcR3Orgx6f0WHPpThSPxmxZo5tvfM,812
8
- fmu/sumo/explorer/timefilter.py,sha256=GetbPm0VYVSts_G7F2BA2nvgvvKzWE26ZjhqRc1avIE,6212
9
- fmu/sumo/explorer/objects/__init__.py,sha256=2XqF0abZI1T7I_Fjlhvs4_vjwid_3HUsqdxmA6nNcLo,941
10
- fmu/sumo/explorer/objects/_child.py,sha256=ase6ZypK2KB-Zv6skHRFodkLC3vfm9x8EFgJfhsblLE,4477
11
- fmu/sumo/explorer/objects/_document.py,sha256=JMhlCr1XlXi1lE1-44WhISTNHiDw9gYGOTl0LUboQKo,1249
12
- fmu/sumo/explorer/objects/_metrics.py,sha256=q6CSeCjiN1SjNx4G32Lod7Slnflsu3aoJIpwm_VMIhQ,3954
13
- fmu/sumo/explorer/objects/_search_context.py,sha256=AvhrKZLbKnenFxQbFQcdRwPd8GhZxeK3tCWGC_8o4Bs,52740
14
- fmu/sumo/explorer/objects/case.py,sha256=D4MGn5lKNMdmaBvTJRYXu9xlGEOpuiMlZR_tsNs4AJU,3847
15
- fmu/sumo/explorer/objects/cases.py,sha256=L2LQieRTCJeNXRvXceHz9088nRO9gvKuRpsNpLI7Gnw,552
16
- fmu/sumo/explorer/objects/cpgrid.py,sha256=Va1M_rgHYdQfPFKFJvfDQhRcSZ_PnniCSI6uweaG3_s,2550
17
- fmu/sumo/explorer/objects/cpgrid_property.py,sha256=DxiFn6QrQCjXbDrxuxPi95b9pvkGI6nxxd0VoFn3e6k,2744
18
- fmu/sumo/explorer/objects/cube.py,sha256=UEFFx_qfS7o0cWNwVPxdO3Fee8Pst9J0GN1j6cXRd_o,3189
19
- fmu/sumo/explorer/objects/dictionary.py,sha256=56ol3ohxVwuesYsrULBE1a4pXXqcUnMWi41EX6_Zn-s,918
20
- fmu/sumo/explorer/objects/iteration.py,sha256=iSQiQ2Epa98ZrySu47GMtJh2dsPnJVo9JqwSlEMRml4,1380
21
- fmu/sumo/explorer/objects/iterations.py,sha256=_d6fRmtVziy0qj-MucG_nPNTn6ffsTcIFGF0H2NqbTw,1606
22
- fmu/sumo/explorer/objects/polygons.py,sha256=z4maL5WI3cdFol3WlTYxhUJzMLkskfb_8Lz7QD4uqIY,1212
23
- fmu/sumo/explorer/objects/realization.py,sha256=s5uSHCt9yoghhJByYIJp8KuWnoO6LPF2f0AkzRME8XI,1535
24
- fmu/sumo/explorer/objects/realizations.py,sha256=QnmrswpV34-AM05M6DP4BrD0vS3QKzPYaaCb18eeOEk,1616
25
- fmu/sumo/explorer/objects/surface.py,sha256=8SVYvCtpKISGd3gY_jIkTgTd_yTWIU8xiW9lcyTiMKU,1652
26
- fmu/sumo/explorer/objects/table.py,sha256=fRit1cWfCLqwZwLHK26D-qFT64uCYVjlVhDyXHWhO40,4925
27
- fmu/sumo/explorer/objects/table_aggregated.py,sha256=vq2EcR36JTcQsyCeyiMgigJMDFDQfVrlTZe2LdXrDFo,3794
28
- fmu_sumo-2.3.6.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
29
- fmu_sumo-2.3.6.dist-info/METADATA,sha256=uE43-k7ECxLJAKwVtVPfZNBzWI9rKoiONG7AJ3B46ZM,14758
30
- fmu_sumo-2.3.6.dist-info/WHEEL,sha256=52BFRY2Up02UkjOa29eZOS2VxUrpPORXg1pkohGGUS8,91
31
- fmu_sumo-2.3.6.dist-info/top_level.txt,sha256=Z-FIY3pxn0UK2Wxi9IJ7fKoLSraaxuNGi1eokiE0ShM,4
32
- fmu_sumo-2.3.6.dist-info/RECORD,,