In [1]:
with open('../data/core_analysis_example.spwla') as f:
text = f.read()
In [2]:
test = text[:1656]
print(test)
10 2
9999/9-9 Norway 9Sep99
Weatherford-Labs
15 10 10
1507 1602 2031 0Weatherford-Labs Nitrogen Permeability, Hor.
1512 1602 2031 0Weatherford-Labs Klinkenberg corrected gas perm, Hor.
1510 1602 2031 0Weatherford-Labs Nitrogen Permeability, Vert.
1515 1602 2031 0Weatherford-Labs Klinkenberg corrected gas perm, Vert.
1402 1211 3084 0Weatherford-Labs Porosity, Horizontal PLUG
1403 1211 3084 0Weatherford-Labs Porosity, Vertical PLUG
1401 1212 3084 0Weatherford-Labs Porosity, Summation
1302 1103 3085 0Weatherford-Labs CORE Oil Saturation
1301 1103 3085 0Weatherford-Labs CORE Water Saturation
2451 1201 1086 0Weatherford-Labs Grain Density, Hor.
20 1
0.00 0.00 1918.00 1983.72 0.0 1
30 1
1918.95 0.00 1.11
40 1 10
-1002.00000 -1002.00000 -1002.00000 -1002.00000 -1002.00000 18.44722 -1002.00000 14.78718 -1002.00000 -1002.00000
30 1
1919.95 0.00 2.11
40 1 10
-1002.00000 -1002.00000 -1002.00000 -1002.00000 -1002.00000 17.06246 -1002.00000 18.06427 -1002.00000 -1002.00000
30 1
1920.95 0.00 3.11
40 1 10
-1002.00000 -1002.00000 -1002.00000 -1002.00000 -1002.00000 19.58139 -1002.00000 19.01052 -1002.00000 -1002.00000
I'm going to manually add a couple of records. One with a cutting description ('description block') and one with a cuttings description but no data block (although this latter situation does not occur in the actual data).
In [3]:
test += """30 1
1920.10 0.00 9
36 1 1
Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Lam.w-Cl,Mic,tr Pyr.
40 1 10
18.72400 15.45700 143.77300 129.17200 15.74091 -1002.00000 -1002.00000 -1002.00000 -1002.00000 2.68513
30 1
1940.40 0.00 10
36 1 1
Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Lam.w-Cl,Mic,tr Pyr.
"""
First we have to write a parsing expression grammar. PEGs are similar to a context-free grammar (i.e. one in which the terms are uniquely defined, and don't depend on context), but there is zero ambiguity. PEGs are good at describing artificial languages (whereas CFGs are better for human languages). Read more.
Let's try writing the PEG for this file format...
In [996]:
from parsimonious import Grammar
grammar = Grammar(
r"""
file = file_block field_block range_block data_blocks*
file_block = "10" ws number ws file_data ws
file_data = well_name ws country ws date ws company ws
field_block = "15" ws number ws number ws field_row+
field_row = number ws number ws number ws "0" company ws field_name ws
range_block = "20" ws number ws range_data ws
range_data = number ws number ws start_depth ws stop_depth ws number ws "1"
data_blocks = depth_block descr_block? data_block?
depth_block = "30" ws "1" ws depth ws number ws number ws
descr_block = "36" ws "1" ws "1" ws description ws
data_block = "40" ws "1" ws record_count ws data ws
start_depth = number+
stop_depth = number+
record_count = number+
depth = number+
description = sentence+
field_name = sentence+
ws = ~r"\s*"
number = ~r"[-.0-9]+"
data = ~r"[- .0-9]+"
well_name = ~r"[-/0-9]+"
country = ~r"[A-Z]+"i
company = ~r"[-_A-Z]+"i
date = ~r"[A-Z0-9]+"i
sentence = ~r"[-., /ÅA-Z]"i
"""
)
Can add flags after Regex, eg like ~r"[A-Z]+"m as follows:
Now we can parse the text to build an abstract syntax tree, or AST.
In [997]:
tree = grammar.parse(text)
Now we have an abstract syntax tree (AST). We have to process this thing to get our data out of it.
I think the idea is to write functions that return what we want, gathering everything at the top level.
I think this is how we have to do it to link the Depth to the Descr and Data fields.
In [998]:
from parsimonious import NodeVisitor
import pandas as pd
import numpy as np
class FileVisitor(NodeVisitor):
# -------------- File --------------
def visit_file(self, node, visited_children):
file, field, rnge, data = visited_children
info = {}
info['file'] = file
info['fields'] = field
info['range'] = rnge
info['data'] = data
return info
# -------------- Meta --------------
def visit_file_block(self, node, visited_children):
*_, file_data, _ = visited_children
return file_data
def visit_file_data(self, node, visited_children):
well, _, country, _, date, _, company, _ = node.children
meta = {'well_name': well.text}
meta['country'] = country.text
meta['company'] = company.text
try:
meta['date'] = pd.to_datetime(date.text).isoformat()
except (TypeError, ValueError) as e:
meta['date'] = date.text
return meta
# -------------- Fields --------------
def visit_field_block(self, node, visited_children):
*_, fields = visited_children
return fields
def visit_field_row(self, node, visited_children):
*_, field, _ = node.children
return field.text.strip()
# -------------- Range --------------
def visit_range_block(self, node, visited_children):
*_, rnge, _ = visited_children
return rnge
def visit_range_data(self, node, visited_children):
_, _, _, _, start, _, stop, *_ = node.children
meta = {'start': float(start.text), 'stop': float(stop.text)}
return meta
# -------------- ALL DATA --------------
def visit_data_blocks(self, node, visited_children):
depth, descr, data = visited_children
# This is gross, there must be a better way...
if not isinstance(descr, list):
descr = ''
if not isinstance(data, list):
data = []
return {depth: {'descr': descr, 'data': data}}
# -------------- Depth --------------
def visit_depth_block(self, node, visited_children):
_, _, _, _, depth, *_ = node.children
return float(depth.text)
# -------------- Descr --------------
def visit_descr_block(self, node, visited_children):
*_, descr, _ = visited_children
return descr
def visit_description(self, node, visited_children):
return node.text
# -------------- Data --------------
def visit_data_block(self, node, visited_children):
*_, data, _ = visited_children
return data
def visit_data(self, node, visited_children):
return [float(x) for x in node.text.split()]
# -------------- Generic --------------
def generic_visit(self, node, visited_children):
return visited_children or node
Wow, that seems like a lot of code. Hm.
Anyway, let's instantiate this thing
In [999]:
fv = FileVisitor()
f = fv.visit(tree)
f
Out[999]:
{'file': {'well_name': '9999/9-9',
'country': 'Norway',
'company': 'Weatherford-Labs',
'date': '1999-09-09T00:00:00'},
'fields': ['Nitrogen Permeability, Hor.',
'Klinkenberg corrected gas perm, Hor.',
'Nitrogen Permeability, Vert.',
'Klinkenberg corrected gas perm, Vert.',
'Porosity, Horizontal PLUG',
'Porosity, Vertical PLUG',
'Porosity, Summation',
'CORE Oil Saturation',
'CORE Water Saturation',
'Grain Density, Hor.'],
'range': {'start': 1918.0, 'stop': 1983.72},
'data': [{1918.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
18.44722,
-1002.0,
14.78718,
-1002.0,
-1002.0]]}},
{1919.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
17.06246,
-1002.0,
18.06427,
-1002.0,
-1002.0]]}},
{1920.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
19.58139,
-1002.0,
19.01052,
-1002.0,
-1002.0]]}},
{1921.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
18.32791,
-1002.0,
17.9261,
-1002.0,
-1002.0]]}},
{1922.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
16.671,
-1002.0,
20.77644,
-1002.0,
-1002.0]]}},
{1923.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
15.49629,
-1002.0,
24.60543,
-1002.0,
-1002.0]]}},
{1924.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
18.28268,
-1002.0,
12.8805,
-1002.0,
-1002.0]]}},
{1925.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
18.43782,
-1002.0,
13.75609,
-1002.0,
-1002.0]]}},
{1926.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
17.31157,
-1002.0,
14.66162,
-1002.0,
-1002.0]]}},
{1927.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
19.34322,
-1002.0,
13.08335,
-1002.0,
-1002.0]]}},
{1928.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
18.61451,
-1002.0,
18.12203,
-1002.0,
-1002.0]]}},
{1929.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
16.17023,
-1002.0,
14.2138,
-1002.0,
-1002.0]]}},
{1930.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
18.13845,
-1002.0,
11.11148,
-1002.0,
-1002.0]]}},
{1931.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
13.27176,
-1002.0,
12.31301,
-1002.0,
-1002.0]]}},
{1932.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
10.50659,
-1002.0,
19.31734,
-1002.0,
-1002.0]]}},
{1933.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
16.97168,
-1002.0,
21.41411,
-1002.0,
-1002.0]]}},
{1934.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
16.40207,
-1002.0,
43.12578,
-1002.0,
-1002.0]]}},
{1935.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
22.72481,
-1002.0,
55.43833,
-1002.0,
-1002.0]]}},
{1936.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
18.41375,
-1002.0,
59.59112,
-1002.0,
-1002.0]]}},
{1937.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
18.85675,
-1002.0,
50.40101,
-1002.0,
-1002.0]]}},
{1938.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
17.93774,
-1002.0,
44.58358,
-1002.0,
-1002.0]]}},
{1940.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
18.46985,
-1002.0,
49.18243,
-1002.0,
-1002.0]]}},
{1941.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
14.96825,
-1002.0,
47.84605,
-1002.0,
-1002.0]]}},
{1942.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
19.11698,
-1002.0,
47.1803,
-1002.0,
-1002.0]]}},
{1943.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
17.74624,
-1002.0,
47.8052,
-1002.0,
-1002.0]]}},
{1944.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
11.29837,
-1002.0,
46.18566,
-1002.0,
-1002.0]]}},
{1945.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
19.35403,
-1002.0,
45.72604,
-1002.0,
-1002.0]]}},
{1946.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
15.65132,
-1002.0,
47.17111,
-1002.0,
-1002.0]]}},
{1947.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
13.45465,
-1002.0,
40.23944,
-1002.0,
-1002.0]]}},
{1948.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
16.54562,
-1002.0,
34.87458,
-1002.0,
-1002.0]]}},
{1949.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
11.08179,
-1002.0,
64.16965,
-1002.0,
-1002.0]]}},
{1950.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
3.50706,
-1002.0,
76.56872,
-1002.0,
-1002.0]]}},
{1951.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
23.04111,
-1002.0,
31.48476,
-1002.0,
-1002.0]]}},
{1952.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
7.55727,
-1002.0,
47.81084,
-1002.0,
-1002.0]]}},
{1953.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.55133,
-1002.0,
75.47066,
-1002.0,
-1002.0]]}},
{1954.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
16.19806,
-1002.0,
50.59302,
-1002.0,
-1002.0]]}},
{1955.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
15.1413,
-1002.0,
35.65407,
-1002.0,
-1002.0]]}},
{1956.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
9.91299,
-1002.0,
47.36896,
-1002.0,
-1002.0]]}},
{1957.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
13.16705,
-1002.0,
55.15691,
-1002.0,
-1002.0]]}},
{1958.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
15.19265,
-1002.0,
53.8299,
-1002.0,
-1002.0]]}},
{1959.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.62524,
-1002.0,
95.89247,
-1002.0,
-1002.0]]}},
{1960.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
15.74543,
-1002.0,
46.03859,
-1002.0,
-1002.0]]}},
{1961.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
8.15361,
-1002.0,
79.35339,
-1002.0,
-1002.0]]}},
{1962.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
9.97245,
-1002.0,
56.16,
-1002.0,
-1002.0]]}},
{1963.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
8.24661,
-1002.0,
98.42603,
-1002.0,
-1002.0]]}},
{1964.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
23.81549,
-1002.0,
56.95147,
-1002.0,
-1002.0]]}},
{1965.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
3.19908,
-1002.0,
86.53224,
-1002.0,
-1002.0]]}},
{1966.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
11.62171,
-1002.0,
39.52339,
-1002.0,
-1002.0]]}},
{1967.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
7.92546,
-1002.0,
57.87248,
-1002.0,
-1002.0]]}},
{1968.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
7.92801,
-1002.0,
57.82173,
-1002.0,
-1002.0]]}},
{1969.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
14.87131,
-1002.0,
38.74371,
-1002.0,
-1002.0]]}},
{1970.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
13.9397,
-1002.0,
48.1092,
-1002.0,
-1002.0]]}},
{1971.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
21.59065,
-1002.0,
62.0479,
-1002.0,
-1002.0]]}},
{1972.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
15.92102,
-1002.0,
33.92419,
-1002.0,
-1002.0]]}},
{1973.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
13.01351,
-1002.0,
45.9081,
-1002.0,
-1002.0]]}},
{1974.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65552,
-1002.0,
99.24864,
-1002.0,
-1002.0]]}},
{1975.4: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
10.63793,
-1002.0,
51.1269,
-1002.0,
-1002.0]]}},
{1976.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
13.12366,
-1002.0,
41.39759,
-1002.0,
-1002.0]]}},
{1977.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
8.31683,
-1002.0,
56.20088,
-1002.0,
-1002.0]]}},
{1978.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
11.32338,
-1002.0,
35.14869,
-1002.0,
-1002.0]]}},
{1979.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
19.25363,
-1002.0,
42.43396,
-1002.0,
-1002.0]]}},
{1980.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
16.71245,
-1002.0,
66.71907,
-1002.0,
-1002.0]]}},
{1981.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
17.71018,
-1002.0,
40.64401,
-1002.0,
-1002.0]]}},
{1982.95: {'descr': '',
'data': [[-1002.0,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
24.12447,
-1002.0,
43.71244,
-1002.0,
-1002.0]]}},
{1918.05: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,Pyr.'],
'data': [[139.866,
125.9,
17.997,
14.715,
20.50453,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.70829]]}},
{1918.25: {'descr': ['Sst.Lt-gry.VF-gr.Sbang.W-cmt.VW-srt.Irr Lam.w-tr C,Cl,Mic,Pyr.'],
'data': [[59.959,
52.318,
8.649,
6.706,
19.31275,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67364]]}},
{1918.5: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,poss Fe-min.'],
'data': [[114.341,
102.196,
38.992,
33.072,
20.09979,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66061]]}},
{1918.75: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,poss Fe-min.'],
'data': [[85.743,
75.833,
37.673,
31.895,
19.2723,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67859]]}},
{1919.33: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Pyr.'],
'data': [[69.433,
60.922,
36.579,
30.771,
19.42854,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66734]]}},
{1919.53: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Pyr.'],
'data': [[79.057,
69.706,
46.116,
39.487,
19.00624,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67377]]}},
{1919.73: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Pyr.'],
'data': [[78.722,
69.4,
23.469,
19.326,
18.22899,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66057]]}},
{1919.89: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Pyr.'],
'data': [[79.591,
70.196,
72.44,
63.741,
20.12889,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.69615]]}},
{1920.1: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Lam.w-Cl,Mic,tr Pyr.'],
'data': [[18.724,
15.457,
143.773,
129.172,
15.74091,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.68513]]}},
{1920.3: {'descr': ['Sst.MLt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-Cl,Mic,tr Pyr.'],
'data': [[5.477,
4.127,
7.359,
5.64,
14.86613,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66961]]}},
{1920.5: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic.'],
'data': [[47.489,
40.538,
0.807,
0.542,
17.98787,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65097]]}},
{1920.73: {'descr': ['Sst.VLt-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-tr C,Cl,Mic,tr Glauc.'],
'data': [[123.055,
110.269,
48.873,
42.114,
18.92549,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65148]]}},
{1921.32: {'descr': ['Sst.VLt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Glauc,Pyr.'],
'data': [[18.029,
14.678,
7.819,
6.059,
17.36639,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67661]]}},
{1921.51: {'descr': ['Sst.VLt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Glauc,tr Pyr.'],
'data': [[34.883,
29.523,
19.512,
16.028,
18.88742,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65469]]}},
{1921.71: {'descr': ['Sst.VLt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Lam.w-C,Cl,Mic,Pyr.'],
'data': [[13.695,
10.836,
8.703,
6.942,
17.39892,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67005]]}},
{1921.89: {'descr': ['Sst.VLt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-C,Cl,Mic,tr Pyr.'],
'data': [[31.307,
26.122,
25.329,
21.081,
18.68322,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65275]]}},
{1922.1: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Pyr.'],
'data': [[25.176,
20.699,
9.544,
7.43,
18.14414,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65414]]}},
{1922.3: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-C,Cl,Mic,tr Pyr.'],
'data': [[21.846,
18.037,
8.934,
6.933,
18.11408,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.6599]]}},
{1922.51: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Lam.Fis.w-C,Cl,Mic,tr Pyr.'],
'data': [[13.121,
10.384,
7.84,
6.204,
15.92662,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66493]]}},
{1922.75: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,t r Pyr.'],
'data': [[6.717,
5.168,
2.442,
1.852,
14.80155,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65749]]}},
{1923.02: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Pyr.'],
'data': [[15.524,
12.593,
5.901,
4.574,
17.51657,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66293]]}},
{1923.25: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Pyr.'],
'data': [[11.769,
9.26,
2.358,
1.744,
17.09899,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66109]]}},
{1923.5: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Pyr.'],
'data': [[3.498,
2.468,
7.251,
5.666,
15.25807,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.6657]]}},
{1923.8: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.Fis.w-C,Cl,Mic,tr Pyr.'],
'data': [[16.259,
13.124,
5.727,
4.31,
17.27888,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65502]]}},
{1924.32: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-C,Cl,Mic,poss Fe-min.'],
'data': [[123.647,
110.526,
45.707,
39.422,
20.1011,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64937]]}},
{1924.52: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-C,Cl,Mic,Pyr.'],
'data': [[134.187,
120.625,
84.871,
75.004,
20.5665,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66169]]}},
{1924.72: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Pyr.'],
'data': [[99.426,
88.424,
65.963,
57.394,
19.24024,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66095]]}},
{1924.89: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.Fis.w-tr C,Cl,Mic,tr Pyr.'],
'data': [[84.64,
74.831,
88.876,
78.241,
19.14404,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65027]]}},
{1925.1: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic.'],
'data': [[132.387,
118.953,
72.749,
63.794,
19.35896,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64341]]}},
{1925.3: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Glauc.'],
'data': [[87.894,
77.817,
75.958,
66.821,
18.43956,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64526]]}},
{1925.5: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Glauc,tr Pyr.'],
'data': [[46.107,
39.842,
100.791,
89.803,
19.36859,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.72633]]}},
{1925.76: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Glauc,tr Pyr.'],
'data': [[124.567,
111.686,
72.258,
63.106,
17.29672,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65177]]}},
{1926.02: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Glauc,tr Pyr.'],
'data': [[109.083,
97.341,
86.636,
76.33,
19.00851,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65076]]}},
{1926.22: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-C,Cl,Mic,tr Glauc,tr Pyr.'],
'data': [[62.308,
54.457,
82.342,
72.472,
17.14348,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65177]]}},
{1926.42: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Glauc,tr Pyr.'],
'data': [[75.298,
66.282,
28.725,
23.772,
18.2772,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65754]]}},
{1926.57: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Glauc,tr Pyr.'],
'data': [[68.032,
59.658,
51.797,
44.389,
17.70025,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65517]]}},
{1927.02: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Glauc,tr Pyr.'],
'data': [[34.713,
29.68,
10.213,
8.002,
16.69856,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65293]]}},
{1927.25: {'descr': ['Sst.VLt-gry.VF/F-gr.Scat C-gr.Sbang.W-cmt.M-srt.w-tr C,Cl,Mic,tr Glauc,tr Pyr.'],
'data': [[171.142,
155.13,
144.271,
129.637,
19.41208,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64512]]}},
{1927.5: {'descr': ['Sst.Lt-gry.VF/M-gr.Sbang.W-cmt.M-srt.w-tr C,Cl,Mic,tr Glauc,tr Pyr.'],
'data': [[117.309,
104.953,
150.892,
136.16,
18.68785,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64116]]}},
{1927.75: {'descr': ['Sst.Lt-gry.VF/C-gr.Sbang.W-cmt.P-srt.Irr Lam.w-tr C,Cl,Mic,tr Glauc,tr Pyr.'],
'data': [[188.149,
171.075,
139.051,
125.142,
20.13203,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64494]]}},
{1928.02: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic,tr Glauc,tr Pyr.'],
'data': [[109.737,
97.946,
103.262,
91.962,
18.57581,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64423]]}},
{1928.25: {'descr': ['Sst.Yelsh-gry.VF/C-gr.Sbang.W-cmt.P-srt.Irr Lam.w-Cl,Mic,tr Glauc,Pyr,poss Fe-min.'],
'data': [[246.92,
226.446,
129.587,
115.897,
21.82464,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67761]]}},
{1928.5: {'descr': ['Sst.Lt-gry.VF/M-gr.Sbang.W-cmt.M-srt.Irr Lam.w-tr C,Cl,Mic,tr Glauc,poss Fe-min.'],
'data': [[183.028,
166.269,
105.263,
93.672,
21.61877,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67715]]}},
{1928.75: {'descr': ['Sst.Lt-gry.VF/M-gr.Sbang.W-cmt.M-srt.Irr Lam.w-tr C,Cl,Mic,tr Glauc.'],
'data': [[238.632,
218.617,
242.842,
222.633,
20.7376,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64267]]}},
{1929.32: {'descr': ['Sst.Lt-gry.VF/C-gr.Sbang.W-cmt.P-srt.Irr Lam.w-tr C,Cl,Mic,tr Glauc,tr Pyr.'],
'data': [[73.644,
64.774,
32.51,
27.37,
18.68737,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64436]]}},
{1929.52: {'descr': ['Sst.Yelsh-gry.VF/VC-gr.Sbang.W-cmt.VP-srt.w-Cl,Mic,Glauc.'],
'data': [[117.404,
105.042,
6.743,
5.141,
19.43138,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65]]}},
{1929.71: {'descr': ['Sst.Yelsh-gry.VF/C-gr.Sbang.W-cmt.P-srt.w-Cl,Mic,tr Glauc,Pyr.'],
'data': [[16.135,
13.129,
35.593,
29.802,
21.55865,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.75176]]}},
{1929.9: {'descr': ['Sst.Yelsh-gry.VF/VC-gr.Sbang.W-cmt.VP-srt.w-Cl,Mic,Glauc,poss Fe-min.'],
'data': [[8.931,
6.901,
1.238,
0.852,
18.68283,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.7134]]}},
{1930.1: {'descr': ['Sst.Yelsh-gry.VF/C-gr.Sbang.W-cmt.P-srt.tr Mtrx.w-Cl,Mic.'],
'data': [[225.628,
206.345,
194.102,
176.682,
17.02692,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64468]]}},
{1930.3: {'descr': ['Sst.Yelsh-gry.VF/C-gr.Sbang.W-cmt.P-srt.tr Mtrx.w-Cl,Mic.'],
'data': [[406.365,
377.986,
208.125,
189.865,
18.36693,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63605]]}},
{1930.5: {'descr': ['Sst.Yelsh-gry.VF/C-gr.Sbang.W-cmt.P-srt.tr Mtrx.w-Cl,Mic.'],
'data': [[539.504,
505.461,
425.747,
396.513,
19.39037,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.6368]]}},
{1930.75: {'descr': ['Sst.Yelsh-gry.VF/C-gr.Sbang.W-cmt.W-srt.tr Mtrx.Irr Lam.w-Cl,Mic.'],
'data': [[270.468,
248.713,
318.91,
294.688,
18.65212,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64375]]}},
{1931.32: {'descr': ['Sst.Yelsh-gry.VF/C-gr.Sbang.W-cmt.W-srt.tr Mtrx.w-Cl,Mic.'],
'data': [[373.392,
346.525,
144.573,
130.31,
17.50769,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65908]]}},
{1931.5: {'descr': ['Sst.Yelsh-gry.VF/C-gr.Sbang.W-cmt.W-srt.tr Mtrx.w-Calc,Cl,Mic.'],
'data': [[881.85,
835.27,
726.725,
685.535,
19.96871,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66065]]}},
{1931.7: {'descr': ['Sst.VLt-gry.VF/C-gr.Sbang.W-cmt.W-srt.tr Mtrx.w-Calc,Cl,Mic.'],
'data': [[196.404,
178.82,
688.945,
649.138,
15.1908,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.70262]]}},
{1931.89: {'descr': ['Sst.Yelsh-gry.VF/C-gr.Sbang.W-cmt.W-srt.tr Mtrx.w-Calc,Cl,Mic.'],
'data': [[72.483,
63.706,
121.477,
108.839,
13.16698,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.70519]]}},
{1932.1: {'descr': ['Sst.Yelsh-gry.VF/C-gr.Sbang.W-cmt.W-srt.tr Mtrx.Biost.w-Cl,Mic.'],
'data': [[337.91,
312.741,
36.033,
30.867,
16.72281,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63685]]}},
{1932.3: {'descr': ['Sst.Yelsh-gry.VF/C-gr.Sbang.W-cmt.W-srt.tr Mtrx.w-Cl,Mic.'],
'data': [[168.382,
152.541,
91.027,
80.714,
18.013,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64267]]}},
{1932.56: {'descr': ['Sst.Yelsh-gry.VF/C-gr.Sbang.W-cmt.W-srt.tr Mtrx.w-Cl,Mic.'],
'data': [[385.33,
357.915,
0.674,
0.448,
18.38396,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63725]]}},
{1932.79: {'descr': ['Sst.VLt-gry.VF/C-gr.Sbang.W-cmt.W-srt.tr Mtrx.w-Calc,Cl,Mic.'],
'data': [[60.865,
53.044,
22.225,
18.401,
11.66817,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.71408]]}},
{1933.02: {'descr': ['Sst.VLt-gry.F/VC-gr.Sbang.W-cmt.P-srt.tr Mtrx.w-C,Calc,Cl,Mic.'],
'data': [[271.344,
249.548,
44.202,
37.757,
13.8521,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.68697]]}},
{1933.2: {'descr': ['Sst.VLt-gry.F/C-gr.Sbang.W-cmt.P-srt.tr Mtrx.w-Calc,Cl,Mic.'],
'data': [[19.873,
16.172,
65.034,
56.592,
10.80512,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.71762]]}},
{1933.39: {'descr': ['Sst.Lt-gry.VF/M-gr.Sbang.W-cmt.M-srt.tr Mtrx.w-Cl,Mic.'],
'data': [[1.34,
0.927,
5.644,
4.309,
9.81204,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65851]]}},
{1933.59: {'descr': ['Sst.Lt-gry.VF/C-gr.Sbang.W-cmt.P-srt.tr Mtrx.w-Cl,Mic.'],
'data': [[74.241,
64.937,
61.909,
53.983,
16.86788,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65054]]}},
{1934.02: {'descr': ['Sst.Yelsh-gry.VF/M-gr.Sbang.W-cmt.M-srt.tr Mtrx.w-Calc,Cl,Mic.'],
'data': [[80.759,
71.268,
213.096,
194.207,
18.12754,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.68298]]}},
{1934.25: {'descr': ['Sst.Yelsh-gry.VF/M-gr.Sbang.W-cmt.M-srt.tr Mtrx.w-Cl,Mic.'],
'data': [[95.849,
85.123,
88.13,
77.856,
17.93755,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65265]]}},
{1934.5: {'descr': ['Sst.Yelsh-gry.VF/C-gr.Sbang.W-cmt.M-srt.tr Mtrx.Irr Lam.w-Cl,Mic.'],
'data': [[13.345,
10.752,
4.931,
3.724,
14.18397,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65657]]}},
{1934.76: {'descr': ['Sst.Yelsh-gry.VF/C-gr.Sbang.W-cmt.M-srt.tr Mtrx.w-Cl,Mic.'],
'data': [[57.745,
49.902,
9.825,
7.724,
18.7089,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66277]]}},
{1935.02: {'descr': ['Sst.Yelsh-gry.F/VC-gr.Gran.Sbang.W-cmt.P-srt.tr Mtrx.w-Cl,Mic,poss Fe-min.'],
'data': [[32.585,
27.469,
26.242,
22.209,
16.45938,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65994]]}},
{1935.25: {'descr': ['Sst.Yelsh-gry.F/VC-gr.Gran.Sbang.W-cmt.Å-srt.tr Mtrx.w-Cl,Mic,tr Glauc.'],
'data': [[349.045,
323.331,
22.451,
18.556,
16.14611,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65263]]}},
{1935.5: {'descr': ['Sst.Yelsh-gry.F/VC-gr.Sbang.W-cmt.P-srt.tr Mtrx.w-ltl Cl,Mic,tr Pyr.'],
'data': [[1723.645,
1652.749,
317.175,
293.041,
19.93756,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.644]]}},
{1935.81: {'descr': ['Sst.VLt-gry.F/VC-gr.Gran.Sbang.W-cmt.VP-srt.tr Mtrx.w-ltl Cl.'],
'data': [[5139.632,
4999.74,
260.032,
238.856,
21.80404,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64436]]}},
{1936.32: {'descr': ['Sst.VLt-gry.F/VC-gr.Gran.Sbang.W-cmt.VP-srt.tr Mtrx.w-tr Pyr.'],
'data': [[12461.471,
12219.9,
12830.09,
12584.169,
19.91458,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66499]]}},
{1936.5: {'descr': ['Sst.VLt-gry.F/VC-gr.Gran.Sbang.W-cmt.VP-srt.tr Mtrx.w-ltl Cl.'],
'data': [[3620.512,
3507.991,
1012.881,
962.184,
19.72323,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64473]]}},
{1936.7: {'descr': ['Sst.VLt-gry.F/VC-gr.Gran.Sbang.W-cmt.VP-srt.tr Mtrx.w-ltl Cl.'],
'data': [[22634.448,
22285.75,
910.614,
863.235,
23.05566,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64029]]}},
{1936.87: {'descr': ['Sst.VLt-gry.F/VC-gr.Gran.Sbang.W-cmt.VP-srt.tr Mtrx.w-ltl Cl.'],
'data': [[5428.855,
5284.206,
2661.173,
2568.22,
22.96917,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64957]]}},
{1937.1: {'descr': ['Sst.VLt-gry.F/VC-gr.Gran.Sbang.W-cmt.VP-srt.tr Mtrx.w-ltl Cl.'],
'data': [[4415.181,
4287.915,
184.311,
167.457,
20.27105,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.643]]}},
{1937.3: {'descr': ['Sst.VLt-gry.F/VC-gr.Gran.Sbang.W-cmt.VP-srt.tr Mtrx.w-ltl Cl,tr Pyr.'],
'data': [[3349.256,
3242.053,
1326.951,
1266.685,
20.85259,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64342]]}},
{1937.5: {'descr': ['Sst.VLt-gry.F/VC-gr.Gran.Sbang.W-cmt.VP-srt.tr Mtrx.w-ltl Cl.'],
'data': [[2681.629,
2588.283,
29.189,
24.412,
19.02763,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65171]]}},
{1937.75: {'descr': ['Sst.VLt-gry.F/VC-gr.Gran.Sbang.W-cmt.VP-srt.tr Mtrx.w-ltl Cl,Mic.'],
'data': [[2738.326,
2643.755,
42.168,
36.063,
18.85004,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63526]]}},
{1938.32: {'descr': ['Sst.VLt-gry.F/VC-gr.Gran.Sbang.W-cmt.VP-srt.tr Mtrx.w-ltl Cl,Mic,tr Pyr.'],
'data': [[4317.296,
4191.79,
1155.667,
1100.412,
19.84654,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65979]]}},
{1938.5: {'descr': ['Sst.VLt-gry.F/VC-gr.Gran.Sbang.W-cmt.VP-srt.tr Mtrx.w-ltl Cl,Mic,tr Pyr.'],
'data': [[2708.544,
2614.621,
44.412,
38.297,
20.0087,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.68797]]}},
{1938.69: {'descr': ['Sst.VLt-gry.F/VC-gr.Gran.Sbang.W-cmt.VP-srt.tr Mtrx.w-ltl Cl,Mic,tr Pyr.'],
'data': [[2711.091,
2617.113,
126.96,
113.878,
19.27291,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64684]]}},
{1938.87: {'descr': ['Sst.VLt-gry.F/VC-gr.Gran.Sbang.W-cmt.VP-srt.tr Mtrx.w-ltl Cl,Mic.'],
'data': [[419.375,
390.349,
1375.491,
1313.845,
16.47591,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65442]]}},
{1939.07: {'descr': ['Sst.Yelsh-gry.F/VC-gr.Gran.Sbang.W-cmt.P-srt.w-tr C,Cl,Mic,tr Pyr,poss Fe-min.'],
'data': [[332.421,
307.451,
203.185,
185.181,
16.18542,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66541]]}},
{1939.27: {'descr': ['Sst.Yelsh-gry.F/VC-gr.Sbang.W-cmt.P-srt.w-tr C,ltl Cl,Mic,poss Fe-min.'],
'data': [[2595.238,
2503.582,
2376.7,
2289.948,
23.94572,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65943]]}},
{1939.47: {'descr': ['Sst.Yelsh-gry.F/VC-gr.Gran.Sbang.W-cmt.P-srt.w-tr C,Cl,Mic,poss Fe-min.'],
'data': [[3167.989,
3064.247,
1833.299,
1759.511,
24.36377,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65435]]}},
{1939.67: {'descr': ['Sst.Yelsh-gry.F/VC-gr.Gran.Sbang.W-cmt.VP-srt.w-C,Cl,Mic,Pyr.'],
'data': [[0.0,
0.0,
899.461,
852.28,
13.04259,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67184]]}},
{1940.02: {'descr': ['Mdst.MLt-gry.VW-Consol.Frac.w-Pyr.'],
'data': [[0.0,
0.0,
0.0,
0.0,
2.72859,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.87873]]}},
{1940.28: {'descr': ['Mdst.MLt-gry.VW-Consol.Frac.Fis.w-Pyr.'],
'data': [[0.0,
0.0,
0.003,
0.001,
2.82935,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.73787]]}},
{1940.52: {'descr': ['Mdst.MLt-gry.VW-Vonsol.Frac.Fis-w-Pyr.'],
'data': [[0.0,
0.0,
0.003,
0.002,
3.68203,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.70648]]}},
{1940.79: {'descr': ['Mdst.MLt/Yelsh-gry.VW-Consol.w-abd Pyr.'],
'data': [[0.045,
0.025,
0.0,
0.0,
4.75235,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
3.2682]]}},
{1941.05: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-Cl,Mic,Pyr.'],
'data': [[26.661,
22.326,
6.861,
5.303,
19.90245,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67006]]}},
{1941.3: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Thin Lam.w-Cl,Mic,Pyr.'],
'data': [[13.222,
10.583,
14.913,
11.951,
18.55916,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66856]]}},
{1941.5: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Lam.w-Cl,Mic,Pyr.'],
'data': [[2.695,
1.995,
0.418,
0.27,
14.34195,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67412]]}},
{1941.75: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Lam.w-Cl,Mic,Pyr.'],
'data': [[9.969,
7.852,
2.171,
1.684,
17.32611,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.672]]}},
{1942.32: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-Cl,Mic,tr Pyr.'],
'data': [[47.506,
41.028,
37.785,
32.065,
21.8382,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65664]]}},
{1942.5: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Lam.w-Cl,Mic,Pyr.'],
'data': [[9.27,
7.318,
2.073,
1.528,
17.22763,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66701]]}},
{1942.7: {'descr': ['Sst.Yelsh-gry.VF-gr.Scat M-gr.Sbang.W-cmt.W-srt.Lam.Frac.w-Cl,Mic,Pyr.'],
'data': [[0.0,
0.0,
0.134,
0.081,
13.03756,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.69094]]}},
{1942.9: {'descr': ['Sst.Yelsh-gry.VF/VC-gr.Gran.Sbang.W-cmt.VP-srt.Thin Lam.Mtrx.w-Cl,Mic,Pyr.'],
'data': [[22.218,
18.181,
9.165,
7.104,
13.54788,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67185]]}},
{1943.02: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Frac.w-Cl,Mic,Pyr,poss Fe-min.'],
'data': [[0.0,
0.0,
9.521,
7.401,
18.73807,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.68119]]}},
{1943.24: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Thin Lam.Mtrx.w-Cl,Mic,Pyr.'],
'data': [[40.47,
34.525,
21.271,
17.624,
15.98376,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66433]]}},
{1943.58: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.tr Mtrx.w-Cl,Mic,Pyr.'],
'data': [[4.226,
3.165,
0.251,
0.157,
14.96501,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.682]]}},
{1943.8: {'descr': ['Sst.Yelsh-gry.VF/M-gr.Sbang.W-cmt.M-srt.Frac.tr Mtrx.w-Cl,Mic,Pyr,poss Fe.'],
'data': [[0.0,
0.0,
28.418,
23.9,
18.31553,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67242]]}},
{1944.02: {'descr': ['Sst.Yelsh-gry.F/C-gr.Sbang.W-cmt.P-srt.Mtrx.w-Cl,Mic,Pyr,poss Fe-min.'],
'data': [[15.107,
12.459,
6.329,
4.946,
15.4022,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.77507]]}},
{1944.43: {'descr': ['Sst.Yelsh-gry.VF/C-gr.Sbang.W-cmt.P-srt.Lam.Frac.tr Mtrx.w-Cl,Mic,Pyr.'],
'data': [[0.0,
0.0,
7.589,
5.782,
15.94222,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66002]]}},
{1944.62: {'descr': ['Sst.Yelsh-gry.M/VC-gr.Sbang.W-cmt.P-srt.Mtrx.w-Cl,Mic.'],
'data': [[521.089,
487.842,
0.0,
0.0,
18.78383,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64629]]}},
{1944.8: {'descr': ['Sst.Lt-gry.VF-gr.Sbang.VW-cmt.VW-srt.Lam.Frac.Fis.w-Cl,Mic,Pyr.'],
'data': [[0.0,
0.0,
0.016,
0.009,
10.24497,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.682]]}},
{1945.02: {'descr': ['Sst.Yelsh-gry.VF-gr.Sbang.W-cmt.VW-srt.w-Cl,Mic,Pyr,poss Fe-min.'],
'data': [[18.492,
15.095,
11.663,
9.175,
19.93373,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.69901]]}},
{1945.25: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-Cl,Mic,tr Pyr,poss Fe-min.'],
'data': [[16.224,
13.248,
8.984,
6.918,
18.47934,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.68354]]}},
{1945.5: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-Cl,Mic,tr Pyr,poss Fe-min.'],
'data': [[22.039,
18.108,
17.733,
14.732,
19.40163,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67203]]}},
{1945.75: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-Cl,Mic,tr Pyr,poss Fe-min.'],
'data': [[37.889,
32.304,
23.74,
19.772,
20.43098,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66442]]}},
{1946.02: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Lam.w-Cl,Mic,tr Pyr,poss Fe-min.'],
'data': [[3.405,
2.54,
0.908,
0.614,
15.0333,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67738]]}},
{1946.25: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-Cl,Mic,tr Pyr,poss Fe-min.'],
'data': [[2.212,
1.53,
14.332,
11.534,
14.75609,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67152]]}},
{1946.5: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-Cl,Mic,tr Pyr,poss Fe-min.'],
'data': [[3.522,
2.639,
7.002,
5.386,
13.96924,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65781]]}},
{1946.7: {'descr': ['Sst.Yelsh-gry.VF/M-gr.Sbang.W-cmt.M-srt.Lam.w-tr C,Cl,Mic,tr Pyr,poss Fe-min.'],
'data': [[5.526,
4.311,
1.692,
1.188,
14.73305,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66512]]}},
{1947.12: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Thin Lam.w-Cl,Mic,tr Pyr,poss Fe-min.'],
'data': [[6.259,
4.831,
0.356,
0.228,
15.62211,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66421]]}},
{1947.3: {'descr': ['Sst.Yelsh-gry.VF-gr.Sbang.W-cmt.VW-srt.Irr Lam.w-Cl,Mic,tr Pyr,poss Fe-min.'],
'data': [[1.362,
0.944,
1.015,
0.691,
15.06677,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66919]]}},
{1947.5: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-Cl,Mic,tr Pyr,poss Fe-min.'],
'data': [[3.519,
2.641,
1.659,
1.163,
15.3958,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66945]]}},
{1947.75: {'descr': ['Sst.Lt-gry.VF-gr.Sbang.W-cmt.VW-srt.Lam.Fis.w-Cl,Mic,tr Pyr.'],
'data': [[1.815,
1.279,
0.056,
0.032,
7.87137,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66371]]}},
{1948.02: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-Cl,Mic,tr Pyr,poss Fe-min.'],
'data': [[0.895,
0.604,
0.0,
0.0,
12.7292,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66648]]}},
{1948.25: {'descr': ['Sst.Yelsh-gry.VF/M-gr.Sbang.W-cmt.M-srt.Irr Lam.w-Cl,Mic,tr Pyr,poss Fe-min.'],
'data': [[1.633,
1.143,
0.799,
0.536,
15.21999,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67015]]}},
{1948.48: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-ltl Cl,Mic.'],
'data': [[78.086,
68.805,
1.316,
0.91,
15.60081,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63816]]}},
{1948.73: {'descr': ['Sst.Yelsh-gry.VF-gr.Sbang.W-cmt.VW-srt.Irr Lam.w-tr C,Cl,Mic.'],
'data': [[8.847,
7.102,
7.642,
6.133,
17.39128,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63769]]}},
{1949.32: {'descr': ['Sst.Yelsh-gry.VF-gr.Sbang.W-cmt.VW-srt.w-ltl Cl,Mic,tr Pyr.'],
'data': [[14.674,
11.77,
0.195,
0.12,
11.44772,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63674]]}},
{1949.5: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-Cl,Mic,tr Pyr.'],
'data': [[0.197,
0.122,
0.18,
0.11,
11.58867,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64496]]}},
{1949.67: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.VW-cmt.W-srt.Irr Lam.w-Cl,Mic.'],
'data': [[0.137,
0.082,
0.055,
0.031,
12.82761,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64563]]}},
{1949.83: {'descr': ['Sst.Yelsh-gry.VF-gr.Sbang.VW-cmt.VW-srt.w-Cl,Mic,poss Fe-min.'],
'data': [[0.086,
0.051,
0.058,
0.033,
10.39863,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67686]]}},
{1950.05: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.VW-cmt.VW-srt.w-Cl,Mic.'],
'data': [[0.073,
0.042,
0.035,
0.02,
9.32697,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65048]]}},
{1950.25: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-Cl,Mic,Pyr.'],
'data': [[0.182,
0.111,
0.068,
0.039,
11.76959,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64957]]}},
{1950.5: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.Mtrx.w-Cl,Mic.'],
'data': [[0.872,
0.588,
1.365,
0.945,
10.53041,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65972]]}},
{1950.75: {'descr': ['Sst.Yelsh-gry.VF/M-gr.Sbang.W-cmt.M-srt.w-tr C,Cl,Mic,tr Pyr.'],
'data': [[13.032,
10.337,
0.454,
0.295,
21.14039,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64574]]}},
{1951.02: {'descr': ['Sst.MDk-gry.F/M-gr.Sbang.W-cmt.W-srt.Lam.Frac.w-Cl,Mic.'],
'data': [[0.0,
0.0,
0.01,
0.005,
3.37148,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.57373]]}},
{1951.27: {'descr': ['Sst.Yelsh-gry.F/V-gr.Sbang.W-cmt.P-srt.tr Mtrx.w-ltl Cl,Mic.'],
'data': [[1114.22,
1060.214,
0.096,
0.057,
13.94985,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63512]]}},
{1951.62: {'descr': ['Sst.Yelsh-gry.F/VC-gr.Sbang.W-cmt.P-srt.w-tr Cl,Mic.'],
'data': [[9187.57,
8987.352,
767.492,
724.836,
23.92039,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64053]]}},
{1951.82: {'descr': ['Sst.Yelsh-gry.F/C-gr.Sbang.W-cmt.P-srt.Thin Lam.w-Cl,Mic.'],
'data': [[909.813,
862.427,
6250.78,
6092.829,
19.16118,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.6495]]}},
{1952.03: {'descr': ['Sst.Yelsh-gry.F/VC-gr.Sbang.W-cmt.P-srt.w-tr Cl,Mic.'],
'data': [[4731.946,
4599.031,
3055.232,
2953.831,
23.94263,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.6464]]}},
{1952.29: {'descr': ['Sst.Yelsh-gry.VF-gr.W-Consol.VW-srt.w-Cl,Mic,tr Pyr.'],
'data': [[4.966,
3.858,
3.279,
2.403,
14.29629,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63775]]}},
{1952.51: {'descr': ['Sst.M-gry.VF-gr.Sbang.W-cmt.VW-srt.Lam.w-tr C,Cl,Mic,tr Pyr.'],
'data': [[0.193,
0.119,
0.02,
0.011,
10.72526,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.68376]]}},
{1952.73: {'descr': ['Sst.MLt-gry.VF/F-gr.Sbang.W-cmt.W-srt.Lam.w-C,Cl,Mic,Pyr.'],
'data': [[0.232,
0.144,
0.077,
0.045,
3.99897,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.61308]]}},
{1953.02: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Lam.Frac.w-C,Cl,Mic,tr Pyr.'],
'data': [[0.0,
0.0,
0.034,
0.019,
8.84913,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.61764]]}},
{1953.22: {'descr': ['Sst.Yelsh-gry.F/M-gr.Sbang.W-cmt.W-srt.Lam.Mtrx.w-C,Cl,Mic.'],
'data': [[0.587,
0.386,
0.319,
0.203,
10.97412,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.61248]]}},
{1953.53: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.Mtrx.w-tr C,Cl,Mic.'],
'data': [[0.199,
0.123,
0.062,
0.036,
7.51282,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64203]]}},
{1953.77: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Lam.Mtrx.w-C,Cl,Mic.'],
'data': [[0.709,
0.472,
0.57,
0.375,
9.59034,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63722]]}},
{1954.05: {'descr': ['Sst.Yelsh-gry.F-gr.Sbang.W-cmt.VW-srt.Lam.Mtrx.w-tr C,Cl,Mic,tr Pyr.'],
'data': [[1.041,
0.709,
0.354,
0.226,
10.55352,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65729]]}},
{1954.3: {'descr': ['Sst.Yelsh-gry.VF-gr.Sbang.W-cmt.VW-srt.Irr Lam.w-C,Cl,Mic.'],
'data': [[52.304,
44.964,
78.09,
68.892,
17.14552,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.61266]]}},
{1954.5: {'descr': ['Sst.Yelsh-gry.VF-gr.Sbang.W-cmt.W-srt.w-C,Cl,Mic.'],
'data': [[33.612,
28.633,
22.638,
18.64,
17.89099,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63234]]}},
{1954.75: {'descr': ['Sst.Yelsh-gry.VF-gr.Sbang.W-cmt.VW-srt.Irr Lam.w-tr C,Cl,Mic.'],
'data': [[34.965,
29.816,
27.351,
23.113,
17.67672,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65061]]}},
{1955.02: {'descr': ['Sst.Yelsh-gry.VF-gr.Sbang.W-cmt.VW-srt.Lam.w-C,Cl,Mic.'],
'data': [[1.431,
0.994,
0.363,
0.233,
14.15056,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.6354]]}},
{1955.25: {'descr': ['Sst.Yelsh-gry.VF-gr.Sbang.W-cmt.VW-srt.Irr Lam.w-tr C,Cl,Mic,Pyr.'],
'data': [[2.554,
2.021,
1.166,
0.8,
14.02677,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.62952]]}},
{1955.5: {'descr': ['Sst.Yelsh-gry.VF-gr.Sbang.W-cmt.VW-srt.w-C,Cl,Mic.'],
'data': [[12.165,
9.725,
2.769,
2.201,
17.33075,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63961]]}},
{1955.76: {'descr': ['Sst.M-gry.VF-gr.Sbang.W-cmt.VW-srt.Irr Lam.w-C,Cl,Mic.'],
'data': [[0.729,
0.486,
2.276,
1.779,
14.65482,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65937]]}},
{1956.02: {'descr': ['Sst.M-gry.VF-gr.Sbang.W-cmt.VW-srt.Irr Lam.w-C,Cl,Mic.'],
'data': [[1.002,
0.681,
0.223,
0.139,
14.78761,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.62019]]}},
{1956.26: {'descr': ['Sst.MDk-gry.VF-gr.Sbang.W-cmt.VW-srt.Lam.w-C,Cl,Mic.'],
'data': [[2.568,
2.032,
0.083,
0.049,
9.06851,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.42492]]}},
{1956.64: {'descr': ['Sst.MLt-gry.VF/F-gr.Sbang.VW-cmt.W-srt.Irr Lam.w-C,Cl,Mic.'],
'data': [[0.05,
0.028,
0.131,
0.079,
8.09512,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.6617]]}},
{1956.87: {'descr': ['Sst.MLt-gry.VF-gr.Sbang.VW-cmt.VW-srt.Lam.w-C,Cl,Mic.'],
'data': [[0.136,
0.082,
0.059,
0.034,
7.48537,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65232]]}},
{1957.02: {'descr': ['Sst.MLt-gry.VF-gr.Sbang.VW-cmt.VW-srt.Irr Lam.w-tr C,Cl,Mic.'],
'data': [[0.059,
0.034,
0.053,
0.03,
11.15853,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64809]]}},
{1957.26: {'descr': ['Sst.Yelsh-gry.VF/C-gr.Sbang.W-cmt.P-srt.w-C,Cl,Mic,tr Pyr.'],
'data': [[1.404,
0.974,
0.137,
0.082,
15.60702,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64798]]}},
{1957.5: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-C,Cl,Mic.'],
'data': [[2.064,
1.606,
15.815,
12.969,
11.88241,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.62473]]}},
{1957.73: {'descr': ['Sst.Yelsh-gry.VF/M-gr.Sbang.W-cmt.M-srt.Mtrx.Irr Lam.w-C,Cl,Mic.'],
'data': [[119.116,
106.597,
127.093,
113.991,
18.51125,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64694]]}},
{1958.02: {'descr': ['Sst.Yelsh-gry.VF/M-gr.Sbang.W-cmt.M-srt.Mtrx.w-Cl,Mic.'],
'data': [[30.035,
25.515,
3.201,
2.331,
16.29299,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66183]]}},
{1958.19: {'descr': ['Sst.Yelsh-gry.F/C-gr.Sbang.W-cmt.P-srt.Mtrx.w-Cl,Mic.'],
'data': [[417.067,
388.185,
238.367,
218.35,
20.43893,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65089]]}},
{1958.51: {'descr': ['Sst.Yelsh-gry.F/M-gr.Sbang.W-cmt.M-srt.Mtrx.w-Cl,Mic.'],
'data': [[568.373,
533.131,
190.762,
173.509,
22.31951,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64452]]}},
{1958.74: {'descr': ['Sst.Yelsh-gry.F/C-gr.Sbang.W-cmt.P-srt.Mtrx.w-Cl,Mic.'],
'data': [[395.944,
368.017,
466.778,
435.731,
20.05811,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64528]]}},
{1959.02: {'descr': ['Sst.Yelsh-gry.VF-gr.Sbang.W-cmt.VW-srt.Mtrx.w-tr C,Cl,Mic.'],
'data': [[10.004,
7.846,
6.922,
5.27,
16.51937,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64207]]}},
{1959.24: {'descr': ['Sst.Yelsh-gry.VF-gr.Sbang.W-cmt.VW-srt.Mtrx.Lam.Fis.w-tr C,Cl,Mic.'],
'data': [[15.96,
13.012,
9.255,
7.311,
14.6653,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65111]]}},
{1959.48: {'descr': ['Sst.Yelsh-gryVF-gr.Sbang.W-cmt.VW-srt.w-tr C,Cl,Mic.'],
'data': [[4.174,
3.134,
4.367,
3.224,
16.27376,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.6439]]}},
{1959.76: {'descr': ['Sst.MLt-gry.VF-gr.VW-Consol.VW-srt.Irr Lam.w-tr C,Cl,Mic.'],
'data': [[0.122,
0.073,
0.157,
0.095,
12.10845,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63613]]}},
{1960.02: {'descr': ['Sst.MLt-gry.VF-gr.VW-Consol.VW-srt.Irr Lam.w-tr C,Cl,Mic.'],
'data': [[0.062,
0.035,
0.015,
0.008,
13.53135,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64426]]}},
{1960.32: {'descr': ['Sst.MLt-gry.VF-gr.VW-Consol.VW-srt.tr Mtrx.w-tr C,Cl,Mic.'],
'data': [[4.454,
3.362,
1.414,
0.981,
17.43654,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64027]]}},
{1960.53: {'descr': ['Sst.Yelsh-gry.VF-gr.W-Consol.VW-srt.w-Cl,Mic.'],
'data': [[18.504,
15.179,
11.717,
9.182,
15.36299,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64267]]}},
{1960.75: {'descr': ['Sst.Yelsh-gry.VF-gr.W-Consol.VW-srt.tr Mtrx.w-Cl,Mic.'],
'data': [[79.152,
69.756,
67.849,
59.193,
19.0736,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64612]]}},
{1961.04: {'descr': ['Sst.Yelsh-gry.VF-gr.W-Consol.VW-srt.tr Mtrx.w-Cl,Mic.'],
'data': [[17.625,
14.279,
9.31,
7.195,
18.90914,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63727]]}},
{1961.26: {'descr': ['Sst.Yelsh-gry.VF/M-gr.Sbang.W-cmt.VW-srt.w-C,Cl,Mic.'],
'data': [[12.504,
10.052,
4.775,
3.633,
16.15475,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64599]]}},
{1961.55: {'descr': ['Sst.Yelsh-gry.VF-gr.W-Consol.VW-srt.w-C,Cl,Mic.'],
'data': [[0.303,
0.191,
0.147,
0.089,
18.08597,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.62053]]}},
{1961.75: {'descr': ['Sst.Yelsh-gry.VF-gr.VW-Consol.VW-srt.w-C,Cl,Mic.'],
'data': [[0.152,
0.093,
1.974,
1.398,
15.38539,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67682]]}},
{1962.02: {'descr': ['Sst.Yelsh-gry.VF-gr.VW-Consol.VW-srt.Lam.w-tr Cl,Mic,poss Fe-min.'],
'data': [[0.046,
0.026,
0.008,
0.004,
10.10872,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.68623]]}},
{1962.24: {'descr': ['Sst.Yelsh-gry.VF-gr.VW-Consol.VW-srt.Irr Lam.w-tr C,Cl,Mic,tr Pyr.'],
'data': [[0.058,
0.033,
0.001,
0.001,
12.71543,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67165]]}},
{1962.49: {'descr': ['Sst.Yelsh-gry.VF-gr.W-Consol.VW-srt.w-C,Cl,Mic.'],
'data': [[1.537,
1.072,
3.156,
2.499,
17.23852,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65213]]}},
{1962.75: {'descr': ['Sst.MLt-gry.VF-gr.VW-Consol.VW-srt.Lam.w-tr C,Cl,Mic.'],
'data': [[0.06,
0.034,
0.02,
0.011,
10.76181,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.6543]]}},
{1963.07: {'descr': ['Sst.Yelsh-gry.VF-gr.W-Consol.VW-srt.w-Cl,Mic,tr Pyr.'],
'data': [[0.727,
0.485,
0.058,
0.033,
15.74397,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66021]]}},
{1963.27: {'descr': ['Sst.Yelsh-gry.VF-gr.W-Consol.VW-srt.w-Cl,Mic.'],
'data': [[0.793,
0.532,
0.646,
0.428,
16.27359,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66076]]}},
{1963.53: {'descr': ['Sst.Yelsh-gry.VF/F-gr.W-Consol.W-srt.w-Cl,Mic,Pyr.'],
'data': [[0.962,
0.652,
0.884,
0.597,
12.91152,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67412]]}},
{1963.79: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Thin Lam.w-Cl,Mic.'],
'data': [[11.215,
8.89,
6.317,
4.917,
17.01296,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.658]]}},
{1964.02: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-tr C,Cl,Mic.'],
'data': [[25.748,
21.274,
20.234,
16.68,
19.15098,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63828]]}},
{1964.28: {'descr': ['Sst.MLt-gry.VF/F-gr.W-Consol.W-srt.Lam.w-C,Cl,Mic,tr Pyr.'],
'data': [[0.962,
0.652,
0.303,
0.192,
13.04615,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.62964]]}},
{1964.55: {'descr': ['Sst.Yelsh-gry.VF-gr.W-Consol.VW-srt.Irr Lam.w-C.Cl,Mic.'],
'data': [[1.23,
0.847,
5.794,
4.246,
14.17755,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64405]]}},
{1964.76: {'descr': ['Sst.Yelsh-gry.VF/M-gr.Sbang.W-cmt.M-srt.tr Mtrx.w-tr C,Cl,Mic.'],
'data': [[36.398,
30.597,
127.598,
114.29,
14.49908,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64623]]}},
{1965.02: {'descr': ['Sst.Yelsh-gry.VF-gr.Sbang.W-cmt.VW-srt.w-Cl,Mic.'],
'data': [[343.411,
317.944,
419.302,
390.326,
23.48967,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64591]]}},
{1965.23: {'descr': ['Sst.Lt Olv-gry.VF/M-gr.Sbang.W-cmt.M-srt.Mtrx.w-Cl,Mic,poss Fe-min.'],
'data': [[18.247,
14.955,
0.792,
0.531,
14.64704,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66339]]}},
{1965.54: {'descr': ['Mdst.MLt-gry.VW-Consol.w-C,Mic.'],
'data': [[0.018,
0.009,
0.013,
0.007,
1.5913,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.62932]]}},
{1965.85: {'descr': ['SndyMdst.w-VF-gr.Lt-gry.VW-Consol.Frac.w-C,Mic.'],
'data': [[0.0,
0.0,
0.047,
0.027,
3.78738,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66409]]}},
{1966.1: {'descr': ['Mdst.MLt-gry.w VF-gr.VW-Consol.w-C,Mic.'],
'data': [[0.023,
0.012,
0.011,
0.006,
2.52389,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.6643]]}},
{1966.3: {'descr': ['Mdst.MLt-gry.w VF-gr.VW-Consol.w-tr C,Mic.'],
'data': [[0.034,
0.019,
0.011,
0.006,
2.48755,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.651]]}},
{1966.53: {'descr': ['Mdst.MLt-gry.w VF-gr.VW-Consol.C-Lam.w-C,Mic.'],
'data': [[0.06,
0.034,
0.008,
0.004,
1.50045,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.60974]]}},
{1966.73: {'descr': ['Sst.Yelsh-gry.VF/M-gr.Sbang.VW-cmt.M-srt.w-Cl,Mic.'],
'data': [[19.989,
16.295,
3.642,
2.762,
11.59194,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.70901]]}},
{1967.08: {'descr': ['Sst.Yelsh-gry.VF/M-gr.Sbang.VW-cmt.M-srt.w-tr C,Cl,Mic.'],
'data': [[69.076,
60.453,
14.283,
11.786,
15.5926,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64594]]}},
{1967.3: {'descr': ['Sst.Yelsh-gry.VF/M-gr.Sbang.VW-cmt.M-srt.Lam.w-Cl,Mic.'],
'data': [[38.878,
33.336,
3.375,
2.502,
14.94865,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64149]]}},
{1967.52: {'descr': ['Sst.Yelsh-gry.VF/VC-gr.Sbrndd.W-cmt.VP-srt.Mtrx.Irr Lam.w-C,Cl,Mic.'],
'data': [[520.635,
487.308,
137.936,
123.928,
16.10455,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65308]]}},
{1967.79: {'descr': ['Sst.Yelsh-gry.F/C-gr.Sbang.W-cmt.VP-srt.w-Cl,Mic.'],
'data': [[1382.598,
1320.742,
79.466,
70.018,
22.43775,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67151]]}},
{1968.02: {'descr': ['Mdst.MDk-gry.w VF-gr.VW-Consol.Irr Lam.Fis.w-tr C,Mic.'],
'data': [[0.155,
0.094,
0.002,
0.001,
2.34734,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.55948]]}},
{1968.25: {'descr': ['Sst.Yelsh-gry.VF-gr.Sbang.W-cmt.VW-srt.w-ltl Cl,Mic.'],
'data': [[663.963,
625.122,
691.434,
651.507,
22.6773,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64109]]}},
{1968.48: {'descr': ['Sst.Yelsh-gry.VF/M-gr.Sbang.W-cmt.M-srt.w-Cl,Mic.'],
'data': [[372.275,
345.455,
451.932,
421.523,
19.50674,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63604]]}},
{1968.75: {'descr': ['Sst.Yelsh-gry.VF-gr.VW-Consol.VW-srt.Irr Lam.w-Cl,Mic,poss Fe-min.'],
'data': [[11.679,
9.481,
14.417,
11.484,
15.27181,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66737]]}},
{1969.08: {'descr': ['Sst.Yelsh-gry.F-gr.Sbang.W-cmt.VW-srt.w-C,Cl,Mic.'],
'data': [[142.98,
128.792,
78.652,
69.266,
16.62948,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.6274]]}},
{1969.3: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-tr C,Cl,Mic.'],
'data': [[108.637,
96.901,
97.285,
86.205,
16.26085,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.6557]]}},
{1969.5: {'descr': ['Sst.Yelsh-gry.VF/F-gr.W-Consol.W-srt.Irr Lam.w-tr C,Cl,Mic.'],
'data': [[0.359,
0.23,
0.232,
0.144,
10.99349,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65815]]}},
{1969.74: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-tr C,Cl,Mic.'],
'data': [[3.256,
2.469,
0.246,
0.154,
10.46676,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63849]]}},
{1970.06: {'descr': ['Sst.Yelsh-gry.VF-gr.W-Consol.VW-srt.w-Cl,Mic.'],
'data': [[51.521,
44.784,
120.893,
108.255,
11.9283,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65758]]}},
{1970.27: {'descr': ['Sst.VLt-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-Cl,Mic.'],
'data': [[530.522,
496.881,
514.114,
481.073,
18.02415,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.6439]]}},
{1970.52: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-tr C,Cl,Mic.'],
'data': [[301.759,
278.453,
450.998,
420.627,
21.72837,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63379]]}},
{1970.73: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-Cl,Mic.'],
'data': [[360.896,
334.687,
468.138,
437.028,
18.40294,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64383]]}},
{1971.02: {'descr': ['Sst.MLt-gry.VF-gr.Sbang.W-cmt.VW-srt.w-Cl,Mic.'],
'data': [[126.529,
113.464,
126.503,
113.462,
17.23921,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64011]]}},
{1971.24: {'descr': ['Sst.Yelsh-gry.VF-gr.Sbang.W-cmt.VW-srt.w-Cl,Mic.'],
'data': [[13.068,
10.477,
1.382,
0.958,
13.83761,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65496]]}},
{1971.54: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Irr Lam.w-C,Cl,Mic.'],
'data': [[462.556,
431.668,
319.726,
295.432,
21.85611,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64466]]}},
{1971.75: {'descr': ['Sst.Yelsh-gry.VF/F-gr.W-Consol. mW-srt.w-C,Cl,Mic.'],
'data': [[222.934,
203.872,
170.436,
154.444,
20.75868,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65276]]}},
{1972.02: {'descr': ['Sst.Yelsh-gry.F-gr.Sbang.W-cmt.VW-srt.Irr Lam.w-tr C,Cl,Mic,tr Pyr.'],
'data': [[237.331,
217.362,
186.052,
169.085,
20.27341,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64632]]}},
{1972.25: {'descr': ['Sst.Yelsh-gry.VF-gr.VW-Consol.VW-srt.Lam.w-Cl,Mic,poss Fe-min.'],
'data': [[1.057,
0.721,
1.755,
1.234,
12.98222,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66327]]}},
{1972.55: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-C,Cl,Mic.'],
'data': [[109.68,
97.967,
137.371,
123.569,
15.38155,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64332]]}},
{1972.75: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Lam.w-tr C,Cl,Mic.'],
'data': [[8.633,
6.93,
6.383,
5.049,
15.49292,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65858]]}},
{1973.02: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-Cl,Mic,poss Fe-min.'],
'data': [[30.653,
25.782,
29.336,
24.881,
16.58191,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65709]]}},
{1973.26: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-C,Cl,Mic.'],
'data': [[46.847,
40.404,
38.901,
33.336,
18.5138,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65167]]}},
{1973.49: {'descr': ['Sst.VLt-gry.VF-gr.Sbang.W-cmt.VW-srt.w-tr C,Cl,Mic.'],
'data': [[73.738,
64.933,
170.439,
154.441,
15.48179,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65257]]}},
{1973.74: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Fis.w-Cl,Mic.'],
'data': [[334.321,
309.304,
336.65,
311.526,
20.83417,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65357]]}},
{1974.32: {'descr': ['Sst.Lt-gry.VF-gr.Sbang.W-cmt.VW-srt.Lam.Fis.w-tr C,Cl,Mic,tr Pyr.'],
'data': [[3.567,
2.662,
0.444,
0.288,
13.25838,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63863]]}},
{1974.48: {'descr': ['Sst.M-gry.VF/F-gr.Sbang.W-cmt.W-srt.Lam.tr Mtrx.w-tr C,Cl,Mic.'],
'data': [[1.431,
0.995,
0.118,
0.071,
14.03845,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65557]]}},
{1974.65: {'descr': ['Sst.M-gry.VF-gr.VW-Consol.VW-srt.Lam.w-Cl,Mic,Pyr.'],
'data': [[0.141,
0.085,
0.074,
0.043,
13.46308,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64425]]}},
{1974.83: {'descr': ['Sst.Lt Olv-gry.VF/F-gr.Sbang.W-cmt.W-srt.tr Mtrx.w-C,Cl,Mic,abd Pyr.'],
'data': [[0.154,
0.094,
0.262,
0.164,
11.86107,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.69571]]}},
{1975.02: {'descr': ['Mdst.M-gry.VF/F-gr.VW-Consol.W-srt.w-C,Cl,Mic,poss Fe-min.'],
'data': [[0.02,
0.011,
0.027,
0.015,
2.73565,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.59716]]}},
{1975.26: {'descr': ['Sst.MLt-gry.VF-gr.Sbang.W-cmt.VW-srt.Lam.w-C,Cl,Mic,Pyr.'],
'data': [[0.042,
0.024,
0.026,
0.014,
9.15819,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65026]]}},
{1975.5: {'descr': ['Sst.VLt-gry.VF-gr.Sbang.W-cmt.VW-srt.Irr Lam.w-C,Cl,Mic.'],
'data': [[0.096,
0.057,
1.228,
0.846,
13.46341,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64741]]}},
{1975.75: {'descr': ['Sst.MLt-gry.VF-gr.VW-Consol.VW-srt.Irr Lam.w-C,Cl,Mic.'],
'data': [[0.042,
0.023,
0.004,
0.002,
7.34839,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65602]]}},
{1976.02: {'descr': ['Slsty Sst.Lt-gry.VF-gr.VW Consol.VW-srt.Lam.w-C,Cl,Mic,poss Fe-min.'],
'data': [[0.057,
0.033,
0.031,
0.017,
10.22567,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.68415]]}},
{1976.26: {'descr': ['Slsty Sst.M-gry.VF-gr.VW Consol.VW-srt.Lam.w-C,Cl,Mic,Pyr.'],
'data': [[0.059,
0.034,
0.02,
0.011,
7.95357,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67222]]}},
{1976.5: {'descr': ['Sst.Lt-gry.VF-gr.VW-Consol.VW-srt.Lam.w-C,Cl,Mic,Pyr.'],
'data': [[0.093,
0.055,
0.017,
0.009,
11.42335,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65691]]}},
{1976.75: {'descr': ['Sst.Lt-gry.VF-gr.VW-Consol.VW-srt.Lam.w-C,Cl,Mic,Pyr.'],
'data': [[0.166,
0.102,
0.025,
0.013,
8.34043,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.63852]]}},
{1977.02: {'descr': ['Sst.Lt-gry.VF-gr.VW-Consol.VW srt.w-C,Cl,Mic,poss Fe-min.'],
'data': [[0.239,
0.149,
0.112,
0.067,
13.71619,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66542]]}},
{1977.25: {'descr': ['Sst.Lt-gry.VF-gr.VW-Consol.VW srt.Lam.w-C,Cl,Mic,tr Pyr.'],
'data': [[0.194,
0.12,
0.024,
0.013,
12.92918,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65561]]}},
{1977.51: {'descr': ['Sst.Lt-gry.VF/F-gr.VW-Consol.W srt.Fis.w-Cl,Mic,poss Fe-min.'],
'data': [[6.642,
5.095,
4.422,
3.352,
15.37053,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66011]]}},
{1977.77: {'descr': ['Sst.Lt-gry.VF-gr.VW-Consol.VW srt.Fis.w-C,Cl,Mic,tr Pyr.'],
'data': [[0.959,
0.651,
0.227,
0.141,
12.76678,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65316]]}},
{1978.32: {'descr': ['Sst.Lt-gry.VF/M-gr.VW Consol.M srt.Lam.Frac.w-C,Cl,Mic,poss Fe-min.'],
'data': [[0.0,
0.0,
0.132,
0.08,
11.3335,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.6486]]}},
{1978.5: {'descr': ['Sst.Lt-gry.VF/F-gr.VW Consol.W srt.w-tr Calc,Cl,Mic,poss Fe-min.'],
'data': [[40.739,
35.064,
20.687,
17.017,
17.51168,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.68379]]}},
{1978.7: {'descr': ['Sst.Lt-gry.VF/F-gr.VW Consol.VW-srt.Lam.w-C,Cl,Mic,poss Fe-min.'],
'data': [[0.098,
0.058,
0.109,
0.065,
10.33719,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66098]]}},
{1978.88: {'descr': ['Slsty Sst.MLt-gry.VF-gr.VW Consol.VW-srt.Lam.w-C,Cl,Mic,poss Fe-min.'],
'data': [[0.107,
0.064,
0.074,
0.043,
11.68598,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66552]]}},
{1979.02: {'descr': ['Sst.Yelsh-gry.VF/M-gr.VW Consol.M-srt.Lam.Fis.Mtrx.w-C,Cl,Mic,poss Fe-min.'],
'data': [[6.085,
4.677,
7.569,
6.1,
11.51438,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65606]]}},
{1979.25: {'descr': ['Sst.VLt-gry.F/M-gr.Sbang.W-cmt.M-srt.w-tr Cl.'],
'data': [[1722.764,
1651.775,
486.432,
454.547,
20.38721,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64458]]}},
{1979.46: {'descr': ['Sst.Lt-gry.VF-gr.VW Consol.VW-srt.Fis.w-C,Cl,Mic.'],
'data': [[0.995,
0.676,
0.084,
0.049,
11.05768,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64788]]}},
{1979.75: {'descr': ['Sst.Lt-gry.VF/F-gr.VW Consol.W-srt.Thin Lam.w-Cl,Mic,poss Fe-min.'],
'data': [[9.106,
7.117,
11.609,
9.429,
13.00959,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.69492]]}},
{1980.02: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-ltl Cl,Mic.'],
'data': [[558.779,
523.998,
596.169,
559.849,
22.93377,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66242]]}},
{1980.23: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-ltl Cl,Mic,tr Pyr.'],
'data': [[559.596,
524.704,
439.65,
409.777,
22.2669,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65279]]}},
{1980.5: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-ltl Cl,Mic.'],
'data': [[420.865,
391.804,
147.913,
133.392,
21.65629,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65754]]}},
{1980.75: {'descr': ['Sst.Lt-gry.VF/C-gr.Sbang.W-cmt.P-srt.w-ltl Cl,Mic.'],
'data': [[909.761,
862.228,
219.213,
200.279,
23.23437,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65884]]}},
{1981.02: {'descr': ['Sst.Lt-gry.VF/M-gr.Sbang.W-cmt.M-srt.Irr Lam.w-C,Cl,Mic,tr Pyr.'],
'data': [[61.32,
53.515,
14.042,
11.348,
16.89518,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.68712]]}},
{1981.25: {'descr': ['Sst.Lt-gry.VF/F-gr.Sbang.W-cmt.W-srt.w-tr C,ltl Cl,Mic,poss Fe-min.'],
'data': [[151.734,
137.053,
183.173,
166.378,
17.8092,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66355]]}},
{1981.51: {'descr': ['Sst.Lt-gry.VF/M-gr.Sbang.W-cmt.M-srt.w-Cl,Mic.'],
'data': [[1.178,
0.809,
0.237,
0.148,
11.41745,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.6545]]}},
{1981.75: {'descr': ['Sst.Lt-gry.VF/C-gr.Sbang.W-cmt.P-srt.w-Cl,Mic.'],
'data': [[3.772,
2.815,
2.247,
1.757,
16.1087,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65847]]}},
{1982.12: {'descr': ['Sst.Lt-gry.F/M-gr.Sbang.W-cmt.M-srt.tr Mtrx.w-Cl,Mic.'],
'data': [[38.395,
32.908,
0.219,
0.136,
14.17604,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64581]]}},
{1982.35: {'descr': ['Sst.Lt-gry.VF/M-gr.Sbang.W-cmt.M-srt.w-llt Cl,Mic,poss Fe-min.'],
'data': [[217.808,
198.934,
260.715,
239.469,
20.34436,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.67607]]}},
{1982.57: {'descr': ['Sst.Lt-gry.VF/VC-gr.Sbang.W-cmt.VP-srt.Mtrx.Irr Lam.w-C,Cl,Mic,ltl Pyr.'],
'data': [[91.605,
81.311,
628.956,
591.362,
17.65817,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.66311]]}},
{1982.79: {'descr': ['Sst.Lt-gry.VF/VC-gr.Gran.Sbang.W-cmt.VP-srt.Mtrx.w-ltl Cl,Mic.'],
'data': [[1823.535,
1750.044,
628.296,
590.727,
21.23241,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.64861]]}},
{1983.02: {'descr': ['Sst.Lt-gry.VF/VC-gr.Gran.Sbang.W-cmt.VP-srt.tr Mtrx.w-Cl,Mic.'],
'data': [[517.099,
484.015,
142.276,
128.133,
19.07649,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65108]]}},
{1983.24: {'descr': ['Sst.Lt-gry.VF/VC-gr.Sbang.W-cmt.VP-srt.w-ltl Cl,Mic,ltl Pyr.'],
'data': [[650.344,
612.018,
132.574,
119.098,
15.08463,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.65493]]}},
{1983.44: {'descr': ['Sst.Lt Olv-gry.VF/F-gr.Sbang.W-cmt.W-srt.Lam.Frac.tr Mtrx.w-C,Cl,Mic,abd Pyr.'],
'data': [[0.0,
0.0,
1.82,
1.283,
9.44161,
-1002.0,
-1002.0,
-1002.0,
-1002.0,
2.76367]]}},
{1983.7: {'descr': ['Sst.Yelsh-gry.VF/F-gr.Sbang.W-cmt.W-srt.Lam.Frac.w-C,Cl,Mic.'],
'data': [[0.0,
0.0,
0.04,
0.022,
7.41085,
-1002.0,
-1002.0,
-1002.0,
-1002.0]]}}]}
That's the data we collected. Cool!
In [6]:
text = """\
30 1
2001.10 0.00 2.11
40 1 2
-1002.0000 34.5678
30 1
2001.90 0.00 1
36 1 1
Sst.Lt-gry. Pyr.
40 1 2
18.72400 15.45700
30 1
2002.90 0.00 2
36 1 1
Sst.Lt-gry. W-cmt.
"""
In [7]:
grammar = Grammar(
r"""
file = data_blocks+
data_blocks = depth_block descr_block? data_block?
depth_block = "30" WS "1" WS depth WS NUMBER WS NUMBER WS
descr_block = "36" WS "1" WS "1" WS description WS
data_block = "40" WS "1" WS record_count WS DATA WS
record_count = NUMBER+
depth = NUMBER+
description = SENTENCE+
field_name = SENTENCE+
WS = ~r"\s*"
NUMBER = ~r"[-.0-9]+"
DATA = ~r"[- .0-9]+"
SENTENCE = ~r"[-., /ÅA-Z]"i
"""
)
In [8]:
ast = grammar.parse(text)
In [10]:
from parsimonious import NodeVisitor
class FileVisitor(NodeVisitor):
def visit_file(self, node, visited_children):
data = {}
for d in visited_children:
data.update(d)
return data
def visit_data_blocks(self, node, visited_children):
depth, descr, data = visited_children
descr = descr[0] if isinstance(descr, list) else ''
data = data[0] if isinstance(data, list) else []
return {depth: {'descr': descr, 'data': data}}
def visit_depth_block(self, node, visited_children):
_, _, _, _, depth, *_ = node.children
return float(depth.text)
def visit_descr_block(self, node, visited_children):
*_, descr, _ = visited_children
return descr
def visit_description(self, node, visited_children):
return node.text
def visit_data_block(self, node, visited_children):
*_, data, _ = visited_children
return data
def visit_DATA(self, node, visited_children):
return [float(x) for x in node.text.split()]
def generic_visit(self, node, visited_children):
return visited_children or node
In [11]:
FileVisitor().visit(ast)
Out[11]:
{2001.1: {'descr': '', 'data': [-1002.0, 34.5678]},
2001.9: {'descr': 'Sst.Lt-gry. Pyr.', 'data': [18.724, 15.457]},
2002.9: {'descr': 'Sst.Lt-gry. W-cmt.', 'data': []}}
In [14]:
from parsimonious import Grammar
grammar = Grammar(
r"""
file = chunk+
chunk = depth_block other_block*
other_block = descr_block / data_block
depth_block = ~"30\s+1\s+" depth number number nl
descr_block = ~"36\s+1\s+1\s+" description+ nl
data_block = ~"40\s+1\s+" count nl number+ nl
count = number+
depth = number+
ws = ~r"[ \t]+"
nl = ~r"(\n\r?|\r\n?)"
number = ~r"-?[.0-9]+"
description = ~r"\S+"
"""
)
In [15]:
ast = grammar.parse(text)
---------------------------------------------------------------------------
ParseError Traceback (most recent call last)
<ipython-input-15-890e7927edc6> in <module>
----> 1 ast = grammar.parse(text)
~/anaconda3/envs/py38/lib/python3.8/site-packages/parsimonious/grammar.py in parse(self, text, pos)
113 """
114 self._check_default_rule()
--> 115 return self.default_rule.parse(text, pos=pos)
116
117 def match(self, text, pos=0):
~/anaconda3/envs/py38/lib/python3.8/site-packages/parsimonious/expressions.py in parse(self, text, pos)
118
119 """
--> 120 node = self.match(text, pos=pos)
121 if node.end < len(text):
122 raise IncompleteParseError(text, node.end, self)
~/anaconda3/envs/py38/lib/python3.8/site-packages/parsimonious/expressions.py in match(self, text, pos)
135 node = self.match_core(text, pos, {}, error)
136 if node is None:
--> 137 raise error
138 return node
139
ParseError: Rule 'number' didn't match at ' 0.00 2.11
40 ' (line 2, column 13).
In [17]:
class Visitor(NodeVisitor):
visit_file = NodeVisitor.lift_child
def visit_chunk(self, node, visited_children):
chunk, others = visited_children
for block in others:
chunk.update(block)
return chunk
def visit_depth_block(self, node, visited_children):
_, depth, _, _, _ = visited_children
return {'depth':depth}
visit_other_block = NodeVisitor.lift_child
def visit_descr_block(self, node, visited_children):
_, descriptions, _ = visited_children
return {'description':descriptions}
def visit_data_block(self, node, visited_children):
_, count, data_list, _ = visited_children
return {'count':count, 'data':data_list}
visit_count = NodeVisitor.lift_child
visit_depth = NodeVisitor.lift_child
def visit_number(self, node, visited_children):
text = node.text.strip()
return float(text) if '.' in text else int(text)
def visit_description(self, node, visited_children):
return node.text.strip()
In [19]:
Visitor().visit(ast)
---------------------------------------------------------------------------
NotImplementedError Traceback (most recent call last)
~/anaconda3/envs/py38/lib/python3.8/site-packages/parsimonious/nodes.py in visit(self, node)
216 try:
--> 217 return method(node, [self.visit(n) for n in node])
218 except (VisitationError, UndefinedLabel):
~/anaconda3/envs/py38/lib/python3.8/site-packages/parsimonious/nodes.py in generic_visit(self, node, visited_children)
240 """
--> 241 raise NotImplementedError('No visitor method was defined for this expression: %s' %
242 node.expr.as_rule())
NotImplementedError: No visitor method was defined for this expression: "30"
During handling of the above exception, another exception occurred:
VisitationError Traceback (most recent call last)
<ipython-input-19-a55c8ce2d40d> in <module>
----> 1 Visitor().visit(ast)
~/anaconda3/envs/py38/lib/python3.8/site-packages/parsimonious/nodes.py in visit(self, node)
215 # up.
216 try:
--> 217 return method(node, [self.visit(n) for n in node])
218 except (VisitationError, UndefinedLabel):
219 # Don't catch and re-wrap already-wrapped exceptions.
~/anaconda3/envs/py38/lib/python3.8/site-packages/parsimonious/nodes.py in <listcomp>(.0)
215 # up.
216 try:
--> 217 return method(node, [self.visit(n) for n in node])
218 except (VisitationError, UndefinedLabel):
219 # Don't catch and re-wrap already-wrapped exceptions.
~/anaconda3/envs/py38/lib/python3.8/site-packages/parsimonious/nodes.py in visit(self, node)
215 # up.
216 try:
--> 217 return method(node, [self.visit(n) for n in node])
218 except (VisitationError, UndefinedLabel):
219 # Don't catch and re-wrap already-wrapped exceptions.
~/anaconda3/envs/py38/lib/python3.8/site-packages/parsimonious/nodes.py in <listcomp>(.0)
215 # up.
216 try:
--> 217 return method(node, [self.visit(n) for n in node])
218 except (VisitationError, UndefinedLabel):
219 # Don't catch and re-wrap already-wrapped exceptions.
~/anaconda3/envs/py38/lib/python3.8/site-packages/parsimonious/nodes.py in visit(self, node)
215 # up.
216 try:
--> 217 return method(node, [self.visit(n) for n in node])
218 except (VisitationError, UndefinedLabel):
219 # Don't catch and re-wrap already-wrapped exceptions.
~/anaconda3/envs/py38/lib/python3.8/site-packages/parsimonious/nodes.py in <listcomp>(.0)
215 # up.
216 try:
--> 217 return method(node, [self.visit(n) for n in node])
218 except (VisitationError, UndefinedLabel):
219 # Don't catch and re-wrap already-wrapped exceptions.
~/anaconda3/envs/py38/lib/python3.8/site-packages/parsimonious/nodes.py in visit(self, node)
225 # see where it went wrong.
226 exc_class, exc, tb = exc_info()
--> 227 reraise(VisitationError, VisitationError(exc, exc_class, node), tb)
228
229 def generic_visit(self, node, visited_children):
~/anaconda3/envs/py38/lib/python3.8/site-packages/six.py in reraise(tp, value, tb)
693 value = tp()
694 if value.__traceback__ is not tb:
--> 695 raise value.with_traceback(tb)
696 raise value
697 finally:
~/anaconda3/envs/py38/lib/python3.8/site-packages/parsimonious/nodes.py in visit(self, node)
215 # up.
216 try:
--> 217 return method(node, [self.visit(n) for n in node])
218 except (VisitationError, UndefinedLabel):
219 # Don't catch and re-wrap already-wrapped exceptions.
~/anaconda3/envs/py38/lib/python3.8/site-packages/parsimonious/nodes.py in generic_visit(self, node, visited_children)
239
240 """
--> 241 raise NotImplementedError('No visitor method was defined for this expression: %s' %
242 node.expr.as_rule())
243
VisitationError: NotImplementedError: No visitor method was defined for this expression: "30"
Parse tree:
<Node matching "30"> <-- *** We were here. ***
In [877]:
from parsimonious import NodeVisitor
import pandas as pd
class FileVisitor(NodeVisitor):
file = {}
file['fields'] = []
file['data'] = []
file['depth'] = []
file['description'] = []
def visit_file_data(self, node, visited_children):
well, _, country, _, date, _, company, _ = node.children
self.file['well_name'] = well.text
self.file['country'] = country.text
self.file['company'] = company.text
try:
self.file['date'] = pd.to_datetime(date.text).isoformat()
except (TypeError, ValueError) as e:
self.file['date'] = date.text
def visit_field_row(self, node, visited_children):
*_, field = node.children
self.file['fields'].append(field.text.strip())
def visit_range_data(self, node, visited_children):
_, _, _, _, start, _, stop, *_ = node.children
self.file['start'] = float(start.text)
self.file['stop'] = float(stop.text)
def visit_depth_block(self, node, visited_children):
_, _, _, _, depth, *_ = node.children
self.file['depth'].append(float(depth.text))
def visit_data_block(self, node, visited_children):
data = []
for child in node.children:
if child.expr_name == 'data':
self.file['data'].append([float(x) for x in child.text.split()])
def visit_descr_block(self, node, visited_children):
*_, descr, _ = node.children
self.file['description'].append(descr.text)
def generic_visit(self, node, visited_children):
"""
For all other nodes.
"""
pass
Content source: agile-geoscience/gio
Similar notebooks: