Using Computer Vision Algorithms for Plant Detection and Counting¶
Morphological operations are widely used techniques in image processing to detect and count objects, including plants in drone images. A general approach on how morphological operations can be used for this purpose is presented below:
Image preprocessing: Before applying morphological operations, it is recommended to perform preprocessing steps on the image to improve the quality of the results. This may include reducing noise with a smoothing filter, such as the Gaussian filter, and segmenting the image to highlight regions of interest, such as plants.
Image binarization: Binarization is the process of converting the image into a black and white image, where objects of interest are represented as white pixels and the background as black pixels. There are different binarization methods available, such as the Otsu method or applying a fixed threshold. The method chosen will depend on the characteristics of the image.
Morphological operations: The two most commonly used morphological operations for plant detection and counting are erosion and dilation.
Erosion: Erosion is used to remove small details and noise from the binary image. It wears away the edges of objects, reducing their size. By applying erosion, small objects such as small blobs or noises disappear, while larger objects such as plants are preserved.
Dilation: Dilation is used to fill holes and increase the size of objects in the binary image. It expands the edges of objects, making them larger. By applying dilation, objects become more cohesive and connected.
These operations can be applied in sequence to improve plant segmentation. The order of application can vary depending on the image and the desired result. Multiple iterations of erosion and dilation can be performed to achieve the desired result.
Plant detection and counting: After applying morphological operations, regions of interest that correspond to plants can be identified in the resulting binary image. There are several methods you can adopt to detect and count plants:
Connected components: Using connected component labeling algorithms, it is possible to identify connected regions of white pixels in the binary image. Each identified region represents a plant.
Object counting: You can use object counting algorithms to identify and count the objects detected in the binary image. These algorithms can count the number of regions or segments in the image, each of which represents a plant.
Remember to adjust the parameters of the morphological operations, such as the size of the structuring element used in erosion and dilation, to suit the size and shape of the plants you are trying to detect.
Plant detection¶
Let's start by installing rasterio.
!pip install rasterio
Collecting rasterio Downloading rasterio-1.3.10-cp310-cp310-manylinux2014_x86_64.whl.metadata (14 kB) Collecting affine (from rasterio) Downloading affine-2.4.0-py3-none-any.whl.metadata (4.0 kB) Requirement already satisfied: attrs in /usr/local/lib/python3.10/dist-packages (from rasterio) (24.2.0) Requirement already satisfied: certifi in /usr/local/lib/python3.10/dist-packages (from rasterio) (2024.7.4) Requirement already satisfied: click>=4.0 in /usr/local/lib/python3.10/dist-packages (from rasterio) (8.1.7) Requirement already satisfied: cligj>=0.5 in /usr/local/lib/python3.10/dist-packages (from rasterio) (0.7.2) Requirement already satisfied: numpy in /usr/local/lib/python3.10/dist-packages (from rasterio) (1.26.4) Collecting snuggs>=1.4.1 (from rasterio) Downloading snuggs-1.4.7-py3-none-any.whl.metadata (3.4 kB) Requirement already satisfied: click-plugins in /usr/local/lib/python3.10/dist-packages (from rasterio) (1.1.1) Requirement already satisfied: setuptools in /usr/local/lib/python3.10/dist-packages (from rasterio) (71.0.4) Requirement already satisfied: pyparsing>=2.1.6 in /usr/local/lib/python3.10/dist-packages (from snuggs>=1.4.1->rasterio) (3.1.2) Downloading rasterio-1.3.10-cp310-cp310-manylinux2014_x86_64.whl (21.5 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 21.5/21.5 MB 45.8 MB/s eta 0:00:00 Downloading snuggs-1.4.7-py3-none-any.whl (5.4 kB) Downloading affine-2.4.0-py3-none-any.whl (15 kB) Installing collected packages: snuggs, affine, rasterio Successfully installed affine-2.4.0 rasterio-1.3.10 snuggs-1.4.7
Now, let's connect Drive to access the files that will be used:
from google.colab import drive
drive.mount('/content/drive')
Mounted at /content/drive
We install the libraries that we are going to use
from skimage.filters import threshold_multiotsu
from skimage.measure import label, regionprops
from skimage.morphology import closing, square
from skimage.color import label2rgb
import matplotlib.pyplot as plt
import rasterio
import geopandas as gpd
import pandas as pd
import numpy as np
import os
from rasterio.plot import show
from rasterio.mask import mask
import json
import cv2
Then we set the path of the image we are going to use:
path_img = '/content/drive/MyDrive/Datasets/Rice Detection/2018-08-14_ARI80_20m_Orthomosaic.tif'
With rasterio we open the image and draw it with matplotlib:
src_img = rasterio.open(path_img)
img = src_img.read()
img.shape
(4, 10687, 19876)
img = img.transpose([1,2,0])
After opening the image, we present:
plt.figure(figsize=[16,16])
plt.imshow(img)
plt.axis('off')
(-0.5, 19875.5, 10686.5, -0.5)
Let's now import the vector containing the fields that will divide the image:
path_lotes = '/content/drive/MyDrive/Datasets/Rice Detection/Lotes.shp'
gdf = gpd.read_file(path_lotes)
Presentamos la delimitación de estos lotes:
gdf.boundary.plot()
<Axes: >
We will now use the polygon of each field to crop the image, generating an image for each field. We will create a folder to store these new images:
if not os.path.isdir('/content/Lotes_imgs'):
os.mkdir('/content/Lotes_imgs')
With Geopandas and Raster we will cut out the images with each polygon and save them as a new image:
for feat in json.loads(gdf.to_json())['features']:
name_poly = 'Lote_' + str(feat['properties']['Lote'])
coords = [feat['geometry']]
with rasterio.open(path_img) as src:
out_img, out_transform = mask(dataset=src, shapes=coords, crop=True)
out_meta = src.meta.copy()
out_meta.update({"driver": "GTiff",
"height": out_img.shape[1],
"width": out_img.shape[2],
"compress":'lzw',
"transform": out_transform})
path_to_save_clip = os.path.join('/content/Lotes_imgs',name_poly + '.tif')
print(path_to_save_clip)
with rasterio.open(path_to_save_clip, "w", **out_meta) as dest:
dest.write(out_img)
del out_img, out_meta,src
/content/Lotes_imgs/Lote_A.tif /content/Lotes_imgs/Lote_B.tif /content/Lotes_imgs/Lote_C.tif /content/Lotes_imgs/Lote_D.tif /content/Lotes_imgs/Lote_E.tif /content/Lotes_imgs/Lote_F.tif /content/Lotes_imgs/Lote_G.tif /content/Lotes_imgs/Lote_H.tif
We will now process and identify plants for each of the images. The resulting Points for each plant will be saved in a single dataframe with the Lot information for each point. Let's review the steps that will be performed in a for loop for each image:
- Open the image with the raster and obtain the green band (G)
- Apply the Otsu boundary algorithm.
- Binarize the image according to the found boundary.
- Apply the morphological operations of erosion and dilation.
- Separate the unique regions that remain in the image.
- For each region we obtain the central point
- We convert the value of the central point of rows and columns to latitude and longitude.
- We store this information together with the name of the field to which that point belongs in a geodataframe.
ls_x = []
ls_y = []
ls_lote = []
imgs_to_pred = os.listdir('/content/Lotes_imgs')
for images in imgs_to_pred:
src = rasterio.open(os.path.join('/content/Lotes_imgs',images))
print(images.split('.')[0])
raster = src.read()
raster = raster.transpose([1,2,0])
R = raster[:,:,0]
G = raster[:,:,1]
B = raster[:,:,2]
G = np.where(G == 255,0,G)
thresh = threshold_multiotsu(G)
binary = G > thresh[1]
binary = binary.astype('uint8')
kernel = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (3,3))
horizontal = cv2.dilate(binary, kernel, iterations = 3)
horizontal = cv2.erode(horizontal, kernel, iterations = 6)
horizontal = cv2.dilate(horizontal, kernel, iterations = 4)
horizontal = cv2.erode(horizontal, kernel, iterations = 6)
label_image = label(horizontal)
for region in regionprops(label_image):
if region.area >= 1:
y0, x0 = region.centroid
xs, ys = rasterio.transform.xy(src.transform, y0, x0)
ls_x.append(xs)
ls_y.append(ys)
ls_lote.append(images.split('.')[0])
Lote_G Lote_D Lote_C Lote_E Lote_B Lote_A Lote_H Lote_F
df_xy = pd.DataFrame([])
df_xy['x'] = ls_x
df_xy['y'] = ls_y
df_xy['Lote'] = ls_lote
gdf_points = gpd.GeoDataFrame(df_xy, geometry=gpd.points_from_xy(df_xy['x'], df_xy['y']))
gdf_points = gdf_points.set_crs(src.crs.to_dict()['init'])
gdf_points
| x | y | Lote | geometry | |
|---|---|---|---|---|
| 0 | 218334.615946 | 2.658457e+06 | Lote_G | POINT (218334.616 2658456.883) |
| 1 | 218334.804559 | 2.658457e+06 | Lote_G | POINT (218334.805 2658456.881) |
| 2 | 218335.021719 | 2.658457e+06 | Lote_G | POINT (218335.022 2658456.859) |
| 3 | 218334.396841 | 2.658457e+06 | Lote_G | POINT (218334.397 2658456.865) |
| 4 | 218335.221933 | 2.658457e+06 | Lote_G | POINT (218335.222 2658456.846) |
| ... | ... | ... | ... | ... |
| 61626 | 218331.132522 | 2.658433e+06 | Lote_F | POINT (218331.133 2658432.674) |
| 61627 | 218330.313555 | 2.658433e+06 | Lote_F | POINT (218330.314 2658432.676) |
| 61628 | 218330.942742 | 2.658433e+06 | Lote_F | POINT (218330.943 2658432.676) |
| 61629 | 218331.574971 | 2.658433e+06 | Lote_F | POINT (218331.575 2658432.641) |
| 61630 | 218332.252271 | 2.658433e+06 | Lote_F | POINT (218332.252 2658432.668) |
61631 rows × 4 columns
Plant size analysis¶
After identifying the locations of each plant in the image, we will analyze the size of the leaf area per plant. From the green band we apply otsu to find the separation threshold and generate the binarized image. We save it in a .tif file.
G = img[:,:,1]
G = np.where(G == 255,0,G)
thresh = threshold_multiotsu(G)
binary_img = G > thresh[1]
binary_img = binary_img.astype('uint8')
binary_img = binary_img[np.newaxis,:,:]
out_meta_img = src_img.meta.copy()
out_meta_img.update({"driver": "GTiff",
"height": binary_img.shape[1],
"width": binary_img.shape[2],
"count": 1,
"compress":'lzw'})
path_to_save = os.path.join('/content/Mask_veg.tif')
with rasterio.open(path_to_save, "w", **out_meta_img) as dest:
dest.write(binary_img)
Now we create a 10cm zone of influence around the point.
gdf_points.geometry = gdf_points['geometry'].buffer(0.10)
gdf_points
| x | y | Lote | geometry | |
|---|---|---|---|---|
| 0 | 218334.615946 | 2.658457e+06 | Lote_G | POLYGON ((218334.716 2658456.883, 218334.715 2... |
| 1 | 218334.804559 | 2.658457e+06 | Lote_G | POLYGON ((218334.905 2658456.881, 218334.904 2... |
| 2 | 218335.021719 | 2.658457e+06 | Lote_G | POLYGON ((218335.122 2658456.859, 218335.121 2... |
| 3 | 218334.396841 | 2.658457e+06 | Lote_G | POLYGON ((218334.497 2658456.865, 218334.496 2... |
| 4 | 218335.221933 | 2.658457e+06 | Lote_G | POLYGON ((218335.322 2658456.846, 218335.321 2... |
| ... | ... | ... | ... | ... |
| 61626 | 218331.132522 | 2.658433e+06 | Lote_F | POLYGON ((218331.233 2658432.674, 218331.232 2... |
| 61627 | 218330.313555 | 2.658433e+06 | Lote_F | POLYGON ((218330.414 2658432.676, 218330.413 2... |
| 61628 | 218330.942742 | 2.658433e+06 | Lote_F | POLYGON ((218331.043 2658432.676, 218331.042 2... |
| 61629 | 218331.574971 | 2.658433e+06 | Lote_F | POLYGON ((218331.675 2658432.641, 218331.674 2... |
| 61630 | 218332.252271 | 2.658433e+06 | Lote_F | POLYGON ((218332.352 2658432.668, 218332.352 2... |
61631 rows × 4 columns
For each plant, let's find the leaf area and percentage of leaf area:
src.res
(0.00511534532489187, 0.005105304523082099)
area_foliar_list = []
percentual_list = []
src = rasterio.open('/content/Mask_veg.tif')
for feat in json.loads(gdf_points.to_json())['features']:
out_img, out_transform = mask(dataset=src, shapes=[feat['geometry']], crop=True)
valid_values = out_img[out_img != 255]
area_foliar = valid_values.sum() * src.res[0] * src.res[1]
area_foliar_list.append(area_foliar)
area_total = len(valid_values) * src.res[0] * src.res[1]
percent = (area_foliar*100) / area_total
percentual_list.append(percent)
print(percent)
A saída de streaming foi truncada nas últimas 5000 linhas.
22.84053156146179
23.41666666666667
40.200166805671394
24.52043369474562
20.416666666666668
38.435940099833616
19.950124688279306
22.138680033416875
21.166666666666668
21.73189009159034
28.393005828476273
24.874791318864773
39.8834304746045
34.138218151540386
13.072439633638636
15.275459098497498
26.35078969243558
16.846473029045644
23.19201995012469
26.455906821963396
34.49709060681629
19.23397169025812
32.16666666666667
41.48580968280468
29.152823920265774
29.966611018363942
16.500000000000004
22.693266832917704
22.351959966638866
24.292845257903494
21.916666666666664
21.381031613976706
19.449081803005008
26.52210175145955
27.272727272727277
24.416666666666668
27.37896494156928
24.063280599500416
27.02251876563803
40.016638935108155
19.684385382059798
34.44259567387687
28.239202657807304
35.80349708576187
19.352159468438533
34.61217681401168
21.232306411323897
49.16666666666667
34.19301164725457
45.62864279766862
18.302828618968388
16.819317235636973
26.82119205298013
20.86450540315877
17.539484621778886
36.21981681931723
18.703241895261847
26.68890742285238
41.86822351959967
23.646960865945044
24.227234753550544
17.863105175292155
23.172757475083053
19.25
37.707641196013284
47.29392173189009
10.90757701915071
29.142381348875936
34.68543046357616
23.08970099667774
39.23524522028263
50.83194675540766
47.45196324143692
39.134054954204835
11.99000832639467
18.65671641791045
37.61467889908258
25.104253544620523
20.29950083194676
36.28023352793995
37.18801996672214
16.2771285475793
25.8520365752286
44.32387312186979
24.396336386344714
48.29308909242298
25.166112956810625
40.66666666666667
27.07641196013288
61.730449251247926
40.049958368026644
27.773144286905755
38.28190158465389
61.86511240632806
50.70774354704413
22.25913621262458
30.583333333333332
41.895261845386536
53.322259136212615
28.023352793995002
16.888519134775375
46.26245847176079
54.65890183028286
14.70099667774086
28.192371475953564
20.85070892410342
17.705735660847882
43.13072439633638
37.88509575353873
20.133111480865228
24.186822351959968
10.972568578553616
23.880597014925375
22.826086956521735
48.92205638474296
25.478767693588676
33.97169025811823
29.22564529558701
27.58333333333334
29.675810473815464
33.277870216306155
21.73189009159034
23.31390507910075
20.833333333333332
23.813488759367196
31.829573934837093
48.50498338870431
59.716430358632195
55.6390977443609
13.856427378964941
12.239800166527893
38.73121869782972
37.2923588039867
46.955796497080904
19.48376353039134
20.083333333333336
36.85524126455907
35.27939949958299
34.0531561461794
14.321398834304746
14.80865224625624
13.405495420482932
18.1063122923588
25.790349417637273
27.703826955074877
46.41068447412355
22.93577981651376
44.046627810158206
28.262676641729012
33.58333333333333
56.53621981681932
27.250000000000004
56.85785536159601
40.38301415487094
23.255813953488367
23.16666666666667
31.416666666666668
35.559265442404005
61.18530884808014
30.025020850708927
23.16666666666667
45.4242928452579
33.91666666666667
14.784053156146177
36.24999999999999
12.323064113238969
25.811823480432974
38.66666666666667
29.45091514143095
38.898163606010016
28.631051752921536
25.935162094763097
40.70058381984988
20.36575228595179
28.5
29.950083194675543
22.250000000000004
25.540765391014975
32.64291632145816
43.96336386344713
39.583333333333336
22.01834862385321
39.617940199335536
17.848206839032528
23.41666666666667
39.85024958402663
41.166666666666664
20.11686143572621
35.333333333333336
23.16666666666667
18.864774624373958
37.36447039199333
46.33333333333334
56.093489148580986
16.736053288925895
34.64106844741236
24.540901502504173
20.233139050791006
36.802664446294756
22.268211920529808
34.71760797342193
39.783152627189324
19.567027477102418
36.24272651704074
40.165975103734446
27.870216306156404
69.94171523730225
23.421926910299
39.8834304746045
32.88925895087428
21.981681931723564
39.40397350993377
26.2063227953411
24.166666666666668
19.518272425249165
31.94675540765391
21.76079734219269
31.109257714762308
16.20718462823726
49.66722129783694
26.923076923076923
33.44453711426189
31.640299750208158
37.406483790523694
22.89758534554538
39.550374687760204
16.694352159468433
42.57095158597663
22.916666666666668
27.227310574521237
22.11138819617623
19.79949874686717
34.138218151540386
19.217970049916808
37.25165562913908
27.462437395659435
24.728487886382624
34.970857618651124
15.736885928393006
27.93994995829858
37.46877601998335
61.83774834437086
24.688279301745638
10.083333333333334
29.034941763727126
18.62011637572735
24.0
21.17940199335548
65.2789342214821
34.945788156797335
26.394671107410492
31.120331950207472
13.628762541806017
23.524522028262677
22.18515429524604
65.94323873121871
9.575353871773522
30.968280467445748
27.356130108423685
31.943286071726437
28.11980033277871
22.4896265560166
20.29950083194676
21.149042464612823
21.85430463576159
20.750000000000004
39.519469759734875
21.416666666666668
23.0
39.56774729842061
15.562913907284768
19.333333333333336
44.83333333333334
22.0
70.70116861435726
30.75
18.583333333333336
34.08521303258145
24.95826377295493
20.517097581317767
20.266889074228523
41.117597998331945
48.37635303913406
20.899250624479603
21.13144758735441
24.97918401332223
36.113427856547126
14.487926727726895
36.272878535773714
39.333333333333336
22.666666666666668
18.18936877076412
36.14357262103506
16.69449081803005
19.06744379683597
20.03311258278146
37.21898417985013
21.36325852036575
28.25
32.89036544850498
12.582781456953644
30.058284762697756
33.94495412844037
13.261050875729776
26.144879267277272
20.233139050791006
25.35328345802161
35.18672199170124
12.624584717607972
19.816819317235634
28.476269775187344
19.269102990033222
20.384294068504598
25.75
24.750830564784046
33.58333333333333
22.71214642262895
44.80465502909394
16.54197838736492
26.061615320566197
26.500000000000004
25.43786488740617
37.666666666666664
26.73350041771095
19.567027477102418
31.057452123230647
19.950124688279306
36.2126245847176
26.245847176079728
25.457570715474212
41.618015012510426
27.333333333333332
40.28356964136781
17.083333333333336
29.635761589403973
22.06494587843464
27.287853577371045
39.11960132890365
30.647840531561453
33.333333333333336
20.433694745621352
17.75
15.033222591362124
33.38884263114072
24.37603993344426
24.479600333055785
56.36969192339717
39.617940199335536
36.325852036575235
17.02838063439065
48.373644703919936
23.06411323896753
27.643630308076602
21.60133444537114
16.11295681063123
23.025768911055696
31.893687707641188
22.48126561199001
33.05578684429643
20.28380634390651
36.43926788685525
22.71214642262895
22.370617696160267
21.31557035803497
18.806959403479702
21.75
34.666666666666664
33.055091819699506
17.485428809325562
25.31223980016653
24.103419516263553
35.88676103247294
22.84053156146179
23.730224812656125
20.798668885191347
21.991701244813278
22.545757071547424
39.05079100749376
15.846538782318598
20.600500417014178
28.86855241264559
21.06577851790175
21.202003338898162
28.85738115095913
17.833333333333336
30.550918196994996
20.53200332502078
19.60132890365448
21.31557035803497
26.49501661129568
31.36439267886855
34.30232558139535
27.68079800498753
30.70539419087137
28.881469115191987
25.08333333333334
21.51793160967473
23.813488759367196
15.811258278145695
33.75104427736007
25.975103734439834
16.61129568106312
35.52960800667223
20.833333333333332
37.021630615640596
27.906976744186046
19.08713692946058
13.93989983305509
11.960132890365445
30.8970099667774
15.562913907284768
24.086378737541526
26.68890742285238
17.54385964912281
56.322795341098164
14.833333333333334
23.211314475873547
13.84487072560467
25.833333333333336
40.28239202657806
17.794486215538846
20.099667774086377
28.85738115095913
34.580216126350784
34.6089850249584
30.532445923460898
21.637426900584792
21.981681931723564
19.150707743547045
16.652789342214824
25.124792013311147
20.930232558139533
20.215410107705058
25.938281901584656
18.864774624373958
32.19633943427621
13.032581453634087
22.731057452123228
23.48547717842324
15.346121768140119
26.228143213988346
15.71072319201995
19.333333333333336
23.03839732888147
18.151540383014158
23.89675270607827
34.22148209825146
35.779816513761475
28.737541528239195
16.47254575707155
27.15121136173768
29.152823920265774
32.38967527060783
35.411471321695764
16.29260182876143
30.333333333333336
34.330839567747304
31.666666666666668
36.907730673316706
23.352793994995828
14.737718567860117
63.870431893687694
26.0797342192691
15.640599001663892
18.0
27.04507512520868
20.149875104079936
23.352793994995828
26.500000000000004
33.55537052456286
14.98751040799334
40.81803005008347
21.916666666666664
26.490066225165567
33.610648918469224
28.273561301084236
20.514950166112953
33.80516236469609
22.250000000000004
11.99000832639467
20.26578073089701
33.69384359400999
18.833333333333332
23.205342237061775
21.73913043478261
15.487094088259783
18.78636741479634
64.07284768211922
18.438538205980063
25.830564784053152
11.86299081035923
19.150707743547045
14.98751040799334
13.749999999999998
14.820982514571192
25.062240663900415
19.33609958506224
20.199501246882793
16.38935108153078
17.19269102990033
13.916666666666666
27.439532944120103
27.477102414654453
25.0208507089241
26.188490408673896
67.1118530884808
23.436196830692246
20.566194837635305
22.138680033416875
22.916666666666668
30.647840531561453
28.524046434494196
13.821815154038301
34.08521303258145
20.316402997502085
17.901748542880934
31.198003327787028
24.833333333333332
24.10640066500416
30.91666666666667
26.35078969243558
14.75
22.916666666666668
28.130217028380635
38.47429519071311
37.96835970024979
20.750000000000004
21.13144758735441
21.197007481296758
32.333333333333336
16.0
24.97918401332223
20.39966694421316
13.133832086450541
22.904564315352697
22.980849292256455
25.645295587010825
20.583333333333332
14.130434782608697
17.126148705096078
30.025020850708927
62.7287853577371
23.480432972522898
27.05394190871369
22.176079734219268
27.128547579298836
24.333333333333332
33.970099667774086
25.938281901584656
33.69474562135113
25.583333333333336
19.916666666666668
14.273789649415692
26.184538653366587
36.060100166944906
46.160267111853095
25.685785536159603
29.318936877076407
16.569525395503746
22.25913621262458
19.06744379683597
27.41666666666667
36.583333333333336
10.132890365448505
21.81515403830142
44.67554076539102
26.961602671118534
32.19633943427621
23.327759197324415
34.38800999167361
47.38154613466335
40.416666666666664
27.712854757929883
31.473771856786012
44.80465502909394
23.25
16.11295681063123
16.11295681063123
23.172757475083053
37.17627401837928
31.333333333333332
29.166666666666668
21.44638403990025
31.72757475083056
32.64119601328903
19.01993355481727
40.73455759599333
22.425249169435215
13.072439633638636
21.547420965058233
18.734388009991676
15.346121768140119
37.44787322768974
30.275229357798164
26.455906821963396
20.416666666666668
21.76079734219269
41.965029142381354
25.978351373855123
26.833333333333336
33.194675540765395
19.285120532003326
12.956810631229235
25.478767693588676
30.358632193494582
29.392173189009164
32.418952618453865
25.833333333333336
19.816819317235634
17.78886118038238
17.878028404344196
21.44638403990025
16.209476309226932
37.10482529118137
19.617622610141314
21.851542952460385
29.750000000000004
16.985845129059115
18.31103678929766
22.980849292256455
28.369384359401
19.516263552960798
20.25
30.058284762697756
26.166666666666668
49.16805324459235
31.36439267886855
29.392173189009164
23.695111847555925
35.328345802161266
26.10508757297748
45.5
24.16943521594684
30.782029950083196
12.271973466003317
38.09128630705395
35.518672199170126
38.071487946799664
12.905911740216487
30.191826522101753
38.78231859883236
19.36824605153782
33.91376451077944
34.028356964136776
20.016680567139286
28.416666666666668
33.36106489184692
31.923714759535656
33.97328881469115
25.621890547263682
45.01661129568106
25.0
32.50207813798836
24.603836530442038
26.804979253112037
23.58803986710963
11.740216486261449
24.729392173189012
31.198003327787028
25.99667774086378
12.916666666666668
23.519599666388658
38.81469115191987
25.415282392026572
15.627597672485452
13.083333333333334
18.6511240632806
17.514595496246873
35.24522028262677
35.16209476309228
31.192660550458715
39.11960132890365
18.682235195996665
24.396336386344714
15.199335548172755
34.85477178423237
33.30557868442965
31.255195344970904
18.128654970760234
42.56026600166251
22.833333333333336
17.152373022481267
19.201995012468828
29.333333333333336
12.219451371571072
24.750830564784046
15.903413821815155
22.764900662251655
28.820598006644513
30.75
12.707641196013286
32.63946711074105
25.790349417637273
36.37873754152824
42.333333333333336
33.97328881469115
43.561872909699
22.757475083056477
21.166666666666668
25.666666666666668
19.900083263946712
20.11686143572621
13.300083125519537
25.707154742096506
23.377703826955077
18.598832360300253
45.583333333333336
24.43703085904921
43.88009991673605
26.68890742285238
29.950083194675543
22.39800166527894
15.474209650582361
26.68890742285238
28.85738115095913
16.29260182876143
45.21232306411324
20.18272425249169
23.67109634551495
23.41666666666667
28.60717264386989
26.224066390041493
17.095435684647303
18.48459616985845
13.5
29.55870108243131
31.863560732113143
40.016708437761075
16.985845129059115
25.35446205170976
35.22064945878435
24.958402662229616
41.618015012510426
30.865224625623963
21.76814011676397
22.564529558701086
35.0
28.70216306156406
17.0
17.985012489592005
23.25
24.812656119900083
19.317235636969194
22.296173044925126
27.333333333333332
25.811823480432974
26.166666666666668
47.083333333333336
31.837073981712386
41.382181515403836
17.75
44.15692821368949
17.735220649458785
18.90091590341382
19.617622610141314
19.400499583680265
40.08298755186722
54.590984974958275
44.472152950955945
23.67109634551495
21.547420965058233
25.99667774086378
33.66666666666667
22.129783693843596
31.504571903574398
14.569536423841061
23.128119800332783
30.03327787021631
10.491257285595339
36.54485049833886
14.571190674437968
36.42439431913117
39.86655546288574
13.738551207327227
33.38870431893687
10.43046357615894
30.8970099667774
49.2089925062448
42.0
30.09143807148795
32.28476821192053
19.60132890365448
32.724252491694344
31.530782029950085
47.206005004170144
54.674457429048424
19.583333333333336
42.53544620517098
22.18515429524604
34.82587064676617
22.802653399668326
28.23725981620719
18.682235195996665
17.6814011676397
20.66666666666667
35.2253756260434
19.435215946843847
46.30705394190871
25.33112582781457
30.590191188694934
39.06899418121364
33.94190871369295
16.307947019867548
33.08395677472984
16.458852867830426
37.707641196013284
24.126455906821967
32.556203164029974
37.96835970024979
34.0
27.643630308076602
43.75000000000001
18.666666666666668
19.751037344398338
9.159034138218152
25.726141078838175
32.72273105745212
12.905911740216487
21.76814011676397
25.478767693588676
35.0
33.610648918469224
19.150707743547045
25.207986688851914
32.86307053941909
18.56786011656953
18.6511240632806
31.4214463840399
11.083333333333334
33.55481727574751
15.179316096747291
27.060782681099088
25.02078137988363
18.817651956702747
20.133111480865228
30.416666666666664
19.150707743547045
28.16666666666667
44.778613199665834
16.652789342214824
28.547717842323653
15.653621981681932
24.896265560165972
33.30557868442965
26.605504587155966
40.31587697423109
21.192052980132452
36.885928393005834
18.604651162790695
32.64119601328903
27.182044887780553
18.734388009991676
32.80467445742905
16.985845129059115
21.64862614487927
23.976608187134506
32.78008298755187
38.14691151919867
20.517097581317767
30.948419301164723
20.39966694421316
14.083333333333336
18.5
41.965029142381354
29.883138564273793
30.75
16.333333333333332
11.676396997497914
30.46744574290484
29.49039264828739
40.0665004156276
15.583333333333334
13.678065054211842
56.975772765246454
28.34580216126351
31.08894430590191
32.50207813798836
18.952618453865338
33.77703826955075
35.16209476309228
27.499999999999996
30.80766028309742
23.352793994995828
39.15211970074814
49.16666666666667
23.960066555740433
34.551495016611284
44.712739383846795
22.518765638031695
17.13810316139767
29.783693843594012
16.319733555370526
21.77888611803824
29.323308270676694
16.666666666666668
24.290484140233726
22.05513784461153
22.25913621262458
16.819317235636973
18.817651956702747
30.10842368640534
27.060782681099088
24.812656119900083
44.462947543713575
17.083333333333336
20.199501246882793
23.603002502085072
37.44787322768974
32.362728785357746
21.86978297161937
20.416666666666668
25.62396006655574
37.93677204658902
61.166666666666664
34.554537885095755
31.89009159034138
38.63447127393839
48.91666666666667
33.02752293577982
33.333333333333336
32.30383973288815
16.02990033222591
23.377703826955077
32.6955074875208
51.25000000000001
28.750000000000004
36.447039199332785
18.80199667221298
36.42384105960265
20.881863560732114
20.982514571190677
14.784053156146177
11.7109634551495
25.333333333333336
24.89592006661116
38.14691151919867
20.18272425249169
22.916666666666668
23.30827067669173
22.60216847372811
21.2448132780083
17.43119266055046
36.960132890365436
33.3609958506224
11.960132890365445
26.10141313383209
19.684385382059798
28.890728476821195
20.715474209650584
42.01331114808652
19.36560934891486
31.00581878636742
40.71606994171524
36.18968386023294
31.886477462437398
24.14654454621149
30.60884070058382
31.504571903574398
22.11138819617623
34.80066445182724
21.89841798501249
24.937655860349125
16.333333333333332
16.069941715237302
28.820598006644513
25.68351284175642
19.684385382059798
33.471760797342185
33.888426311407166
12.57285595337219
18.78636741479634
20.732722731057454
34.96677740863787
24.396336386344714
36.605657237936775
16.652789342214824
23.230641132389678
31.166666666666668
10.916666666666668
24.31307243963364
27.431421446384036
22.776392352452206
27.02251876563803
15.67973311092577
25.12520868113523
26.78868552412646
26.46076794657763
18.453865336658353
33.277870216306155
27.58333333333334
18.530884808013354
29.71619365609349
31.67082294264339
25.457570715474212
13.598673300165837
16.209476309226932
13.833333333333334
42.07011686143573
24.315352697095438
29.45091514143095
26.144879267277272
23.504983388704314
25.5813953488372
24.666666666666668
23.480432972522898
17.485428809325562
24.250000000000004
33.80516236469609
13.666666666666666
19.269102990033222
21.333333333333336
32.80730897009966
24.33554817275747
19.0
12.80133000831255
21.48209825145712
24.418604651162784
40.51796157059315
23.44139650872818
19.933554817275745
31.693077564637196
37.0
51.07615894039735
30.224812656119898
16.0
21.428571428571423
19.966583124477864
29.808492922564533
26.210350584307182
37.46877601998335
13.238967527060783
21.64862614487927
30.474604496253125
30.647840531561453
16.23646960865945
29.04841402337229
19.633943427620633
20.316402997502085
24.290484140233726
15.033222591362124
26.766417290108066
20.367278797996665
27.606338615512932
14.321398834304746
43.21398834304747
20.781379883624272
28.239202657807304
29.925187032418958
20.59800664451827
24.123539232053425
22.666666666666668
15.763135946622185
24.540901502504173
37.71856786011657
27.833333333333332
33.52745424292845
16.80602006688963
18.629908103592317
21.262458471760795
29.034941763727126
16.58374792703151
30.647840531561453
27.712854757929883
42.5
22.518765638031695
29.010806317539487
26.416666666666668
30.550918196994996
12.624584717607972
15.609348914858098
32.94412010008341
22.250000000000004
20.750000000000004
20.695364238410594
18.068276436303083
28.80932556203164
27.348295926849545
20.517097581317767
37.85357737104826
26.984126984126988
22.75
27.703826955074877
44.379683597002504
14.119601328903652
21.67774086378737
24.833887043189367
17.358803986710964
25.830564784053152
32.308970099667775
25.99667774086378
16.22296173044925
21.666666666666668
37.38551207327227
31.172069825436413
33.44398340248962
16.126350789692438
16.390728476821195
21.118530884808017
21.214642262895175
13.03986710963455
23.916666666666668
20.083333333333336
37.20930232558139
14.023372287145246
32.31151615575808
34.11371237458193
17.779632721202002
13.988343047460454
12.593828190158465
29.725228975853458
33.11148086522463
12.51042535446205
16.05351170568562
23.603002502085072
15.179316096747291
30.191826522101753
27.325581395348834
20.885547201336674
20.698254364089777
20.39966694421316
12.5
30.09143807148795
33.888426311407166
26.91666666666667
30.31561461794019
86.90575479566307
29.824561403508778
23.85702410640067
28.179551122194514
21.851542952460385
49.41860465116279
26.01828761429759
24.583333333333336
24.708818635607322
19.03171953255426
12.01000834028357
31.057452123230647
24.83277591973244
20.916666666666668
37.44787322768974
23.916666666666668
40.78398665554629
25.31223980016653
46.87760199833472
38.81469115191987
31.41186299081036
28.92768079800499
15.40383014154871
48.50249584026622
24.086378737541526
26.711185308848084
27.272727272727277
27.763923524522028
35.7202331390508
43.5
25.811823480432974
27.439532944120103
20.234113712374583
12.64559068219634
24.97918401332223
21.26772310258549
17.373233582709894
27.295492487479137
26.245847176079728
36.24272651704074
28.940783986655546
19.53449709060682
29.657477025898082
17.083333333333336
24.833333333333332
32.3873121869783
38.80099916736053
23.646960865945044
29.29883138564274
43.25000000000001
26.162790697674417
33.80516236469609
26.061615320566197
27.976686094920908
13.775933609958505
29.22564529558701
35.66666666666667
30.647840531561453
51.5
30.60884070058382
28.916666666666668
41.298917568692765
26.677713338856673
41.6597510373444
28.309741881765195
15.653621981681932
20.767306088407008
37.45847176079734
30.980066445182725
24.501661129568106
23.85702410640067
27.0
50.0
34.8585690515807
32.97252289758535
21.0
29.010806317539487
33.11148086522463
31.666666666666668
27.20465890183029
29.69140950792327
21.989966555183944
23.121869782971622
39.833333333333336
29.509559434746468
53.70524562864281
20.18272425249169
36.77204658901831
16.957605985037404
19.684385382059798
21.64862614487927
26.49501661129568
24.812656119900083
27.144046627810155
30.257689110556946
18.083333333333336
27.477102414654453
18.03823773898587
28.046744574290493
55.05804311774461
17.290108063175392
37.46877601998335
22.41666666666667
22.8595178719867
23.08970099667774
26.083333333333336
36.37873754152824
32.083333333333336
29.750000000000004
27.265170407315043
27.8838174273859
38.538205980066444
19.65029142381349
20.448877805486287
18.864774624373958
24.16943521594684
35.80968280467446
31.0
19.03171953255426
25.68807339449541
34.721065778517904
30.275229357798164
25.332225913621258
21.713810316139767
25.228975853455456
20.200333889816363
31.863560732113143
36.61384487072561
27.468879668049798
16.25
25.29118136439268
30.583333333333332
29.06976744186046
29.29883138564274
28.130217028380635
18.916666666666668
31.395348837209298
29.75893599334996
34.551495016611284
34.49709060681629
32.80467445742905
24.103419516263553
38.26232247284879
19.45364238410596
22.87853577371048
13.238967527060783
31.218697829716195
26.289517470881865
33.30557868442965
37.45847176079734
49.169435215946834
49.29107589658049
28.476269775187344
25.478767693588676
22.148209825145713
33.19397993311037
19.317235636969194
28.80932556203164
29.925187032418958
29.13188647746244
21.89841798501249
42.22776392352452
18.325041459369817
22.50830564784053
25.333333333333336
16.680567139282736
27.52293577981651
32.306411323896754
53.2392026578073
35.475792988313856
51.209341117598
24.5
21.06577851790175
18.645484949832777
31.52627189324437
18.833333333333332
36.91666666666667
15.320566194837637
31.920199501246884
30.016583747927033
39.983305509181974
15.333333333333336
40.25
48.00332778702163
41.50000000000001
38.60232945091514
37.021630615640596
35.10815307820299
36.113427856547126
14.98751040799334
44.67554076539102
35.88676103247294
30.92868988391377
17.607973421926907
27.454242928452576
30.557868442964196
27.787021630615637
40.29975020815987
15.25704809286899
31.67082294264339
36.50000000000001
13.261050875729776
33.41666666666667
26.66666666666667
30.44203502919099
26.000000000000004
23.172757475083053
14.47587354409318
36.37873754152824
26.955074875207984
36.41666666666667
30.532445923460898
34.920634920634924
22.286661143330576
42.26289517470882
35.79734219269102
42.39130434782608
47.78613199665831
20.566194837635305
29.22564529558701
32.9450915141431
28.797996661101838
35.43046357615894
32.335827098919374
29.201331114808653
40.63280599500417
16.069941715237302
25.521267723102586
25.166666666666668
41.201000834028356
19.60132890365448
47.87676935886762
20.216306156405988
22.518765638031695
31.333333333333332
25.0208507089241
16.416666666666664
28.202995008319466
11.926605504587156
27.462437395659435
29.651162790697672
36.41666666666667
38.23773898586866
29.608006672226857
16.375727348295925
24.166666666666668
21.013289036544847
29.333333333333336
40.35087719298246
25.75
25.54257095158598
37.60399334442596
20.36575228595179
29.90810359231412
26.01828761429759
43.286071726438706
22.39800166527894
25.18765638031693
13.416666666666668
58.01335559265443
18.734388009991676
24.89592006661116
44.333333333333336
18.56786011656953
19.01584653878232
31.063122923588033
13.184079601990051
40.049958368026644
43.55777223607648
23.504983388704314
26.473029045643155
28.202995008319466
23.58803986710963
34.528773978315265
35.137385512073266
40.886287625418056
22.462562396006657
16.182572614107883
20.248962655601662
42.94068504594821
13.238967527060783
43.1438127090301
28.60717264386989
17.180984153461218
17.40216486261449
19.01993355481727
34.00167084377611
23.563696919233973
28.690575479566306
17.3044925124792
26.97751873438801
17.985012489592005
28.595178719867
15.929941618015013
46.54454621149042
21.713810316139767
21.880199667221298
45.431893687707635
29.059117402164865
16.458852867830426
37.5207986688852
30.717863105175297
36.272878535773714
12.003311258278147
25.25
18.703241895261847
17.3044925124792
29.543568464730292
18.697829716193656
20.199501246882793
28.973509933774835
28.642797668609493
31.697171381031616
21.862011637572735
29.107589658048376
28.986710963455145
19.28213689482471
23.06411323896753
19.548872180451124
20.847176079734215
49.2089925062448
28.55953372189842
23.519599666388658
28.822055137844615
50.79232693911593
39.617940199335536
17.803660565723796
13.953488372093023
25.124792013311147
22.02826267664173
28.000000000000007
16.902581182348044
36.794019933554814
38.63447127393839
24.373956594323875
39.44954128440368
19.01584653878232
32.19349457881568
38.54515050167224
29.377593360995853
13.122923588039864
17.65195670274771
24.83277591973244
26.948590381426204
35.38717735220649
18.3927091963546
24.97918401332223
22.923588039867106
33.58333333333333
22.647793505412157
25.910596026490065
24.812030075187973
14.867109634551493
42.66666666666667
41.117597998331945
29.48504983388704
37.73898586866168
27.333333333333332
21.166666666666668
32.41666666666667
14.5
16.458852867830426
22.821576763485478
21.916666666666664
18.18936877076412
35.17126148705096
20.681063122923586
17.901748542880934
36.947456213511266
27.68974145120934
14.87946799667498
25.124792013311147
14.095079232693914
15.512927439532943
28.70216306156406
26.90058479532164
28.428927680798004
34.138218151540386
14.559068219633943
29.808492922564533
49.08333333333334
18.386023294509155
32.61050875729775
17.798013245033115
48.96093100581879
24.91666666666667
9.075770191507079
19.833333333333332
31.36439267886855
24.89592006661116
8.90924229808493
22.693266832917704
28.989139515455307
24.647302904564317
18.56786011656953
25.14571190674438
27.59767248545303
36.97829716193657
16.19601328903654
15.083333333333334
26.600166251039074
28.464106844741238
41.965029142381354
17.318900915903413
29.059117402164865
33.5
38.34024896265561
16.099585062240667
27.990033222591357
41.25
11.54485049833887
20.930232558139533
21.535893155258766
24.792013311148086
29.25
28.85738115095913
50.496688741721854
38.36530442035029
19.182652210175146
25.562031640299754
49.667774086378735
20.96505823627288
16.736053288925895
43.452877397831536
34.916666666666664
26.41196013289036
42.42928452579035
10.074937552039968
12.604340567612688
24.126455906821967
24.97918401332223
26.254180602006688
30.75
30.25
29.833333333333336
31.6624895572264
23.730224812656125
33.08457711442786
40.765391014975044
13.988343047460454
17.358803986710964
25.66445182724252
43.760399334442596
31.72757475083056
25.726141078838175
28.666666666666668
16.500000000000004
26.89425478767694
21.184320266889074
22.148209825145713
18.750000000000004
41.31886477462437
12.88445552784705
20.517097581317767
43.70308590492077
10.758965804837365
33.80516236469609
18.12136325852037
25.978351373855123
25.35328345802161
35.166666666666664
25.916666666666668
30.275229357798164
29.083333333333336
33.08333333333334
33.75104427736007
20.467836257309944
31.31229235880398
25.06244796003331
28.986710963455145
29.41666666666667
39.217318900915906
57.75
12.873754152823919
19.131161236424393
24.792013311148086
22.02826267664173
36.10648918469218
29.475437135720234
24.5
19.916666666666668
16.833333333333336
20.497925311203318
14.428690575479566
32.22314737718568
29.97502081598668
13.000000000000002
21.06577851790175
32.282157676348554
30.80766028309742
25.06244796003331
19.60132890365448
15.391014975041598
48.75
25.583333333333336
17.863105175292155
31.270903010033443
30.32581453634085
15.916666666666668
25.496688741721854
21.75
22.768974145120932
18.80199667221298
27.41666666666667
15.986677768526228
19.516263552960798
11.759799833194329
15.070774354704414
17.583333333333332
21.232306411323897
18.48459616985845
15.973377703826955
20.947630922693268
14.096185737976782
20.615128844555283
34.44259567387687
22.96173044925125
11.212624584717608
21.59468438538206
19.166666666666668
18.515429524603835
21.149042464612823
20.53200332502078
17.318900915903413
31.114808652246257
18.28761429758936
22.87853577371048
16.888519134775375
17.470881863560734
20.549084858569053
36.61384487072561
19.867549668874176
25.0
19.06744379683597
29.86688851913478
41.895261845386536
19.65029142381349
12.073272273105745
17.218543046357613
17.52491694352159
25.478767693588676
30.217028380634392
24.00332225913621
30.257689110556946
22.87145242070117
33.55481727574751
12.073272273105745
19.7171381031614
22.433774834437088
16.861435726210352
21.511627906976738
9.833333333333334
20.149875104079936
18.65671641791045
14.904246461282266
29.44120100083403
21.547420965058233
19.201995012468828
21.0
20.534223706176963
25.8520365752286
26.333333333333332
15.237302248126563
25.75
24.396336386344714
21.843853820598
27.657807308970092
23.793677204658902
13.893510815307819
15.237302248126563
23.89675270607827
23.083333333333336
57.059800664451814
28.654485049833884
32.77870216306156
34.99584372402328
33.55537052456286
31.390507910074938
25.730994152046783
34.637801831806826
26.390041493775936
21.381031613976706
19.69949916527546
25.562031640299754
14.166666666666666
15.191986644407347
25.91362126245847
15.295095594347467
25.332225913621258
36.583333333333336
20.566194837635305
20.25
14.273789649415692
13.749999999999998
28.92768079800499
30.839567747298425
54.41666666666668
26.66666666666667
26.66666666666667
20.36575228595179
20.815986677768525
29.48504983388704
23.75415282392026
22.212978369384363
18.37073981712386
22.009966777408636
41.791044776119406
31.250000000000004
9.159034138218152
63.84039900249377
16.417910447761198
29.641965029142384
20.86450540315877
27.773144286905755
19.60132890365448
14.51209341117598
17.069109075770193
16.209476309226932
27.499999999999996
32.22314737718568
11.175496688741722
15.307820299500834
17.6814011676397
37.259816207184635
19.04761904761905
26.39933166248956
26.455906821963396
25.083612040133776
28.273561301084236
22.71214642262895
29.118136439267886
19.150707743547045
24.958402662229616
27.310574521232304
27.242524916943513
13.455149501661126
22.500000000000004
26.166666666666668
28.096425602660023
39.933444259567395
35.27454242928452
19.98334721065779
17.235636969192342
26.91666666666667
19.88352745424293
26.394671107410492
17.514595496246873
18.234804329725232
24.063280599500416
17.75
30.69883527454243
24.166666666666668
30.871369294605806
14.583333333333334
14.666666666666668
15.008291873963516
19.285120532003326
22.628951747088188
28.239202657807304
26.65562913907285
31.697171381031616
28.642797668609493
27.870216306156404
26.961602671118534
20.282626766417295
26.210350584307182
22.06494587843464
22.101751459549625
35.66084788029926
13.97670549084859
29.55870108243131
28.725165562913908
22.60216847372811
33.16708229426434
16.375727348295925
17.764804003336113
18.6511240632806
28.822055137844615
34.55759599332221
32.282157676348554
15.876974231088944
40.200166805671394
21.511627906976738
28.239202657807304
23.377703826955077
23.46089850249584
15.627597672485452
31.833333333333336
31.442869057547956
25.7285595337219
38.21815154038302
11.916666666666668
26.517040731504576
17.744610281923716
19.30116472545757
21.81515403830142
13.881961762261014
30.583333333333332
19.198664440734557
20.819397993311036
35.88676103247294
18.1063122923588
22.462562396006657
26.833333333333336
20.367278797996665
16.763969974979148
11.490424646128227
16.819317235636973
21.695760598503743
18.552412645590685
17.02838063439065
25.10390689941812
13.155703580349709
22.324414715719065
22.25913621262458
32.053422370617696
23.480432972522898
30.8970099667774
16.416666666666664
28.903654485049827
12.656119900083265
24.459234608985025
29.392173189009164
28.55953372189842
16.54197838736492
21.4759535655058
29.583333333333336
25.3968253968254
15.653621981681932
50.0
14.571190674437968
26.455906821963396
16.25207296849088
33.52745424292845
20.986622073578594
28.726061615320567
24.896265560165972
35.559265442404005
15.67973311092577
19.400499583680265
18.76563803169308
45.62135112593829
16.319733555370526
9.833333333333334
14.035087719298248
12.166666666666666
10.132890365448505
18.62011637572735
17.759336099585063
22.212978369384363
17.622610141313384
26.72772689425479
21.833333333333336
39.267886855241265
25.62396006655574
15.000000000000002
27.20465890183029
40.68219633943428
22.389306599832917
13.5
12.635078969243558
32.66832917705736
13.266998341625209
12.489592006661114
12.209302325581392
23.083333333333336
22.435362802335284
22.296173044925126
26.683291770573568
17.014178482068388
24.83277591973244
25.31223980016653
27.393838467943382
15.692821368948247
26.12687813021703
23.7698081734779
21.583333333333332
15.000000000000002
18.318068276436303
17.45635910224439
15.128844555278473
30.000000000000004
22.250000000000004
27.773144286905755
27.870216306156404
19.849874895746453
35.333333333333336
21.5
27.98013245033113
26.97751873438801
56.76348547717842
41.90871369294606
19.684385382059798
30.63439065108514
68.19317235636969
25.49833887043189
33.13905079100749
40.0
16.142384105960264
25.270157938487117
21.11388196176226
18.046357615894042
28.023352793995002
30.974188176519565
22.268557130942455
24.833887043189367
19.55074875207987
23.083333333333336
17.126148705096078
35.35773710482529
19.25
20.969089390142024
30.724396336386345
37.96835970024979
43.333333333333336
18.318068276436303
24.02001668056714
7.327227310574521
28.452579034941763
17.622610141313384
22.719734660033172
35.963455149501655
23.46089850249584
20.382695507487522
54.371357202331396
35.57772236076476
33.66750208855472
37.406483790523694
17.347789824854043
30.217028380634392
31.916666666666664
37.22871452420702
26.315789473684212
15.012510425354463
44.76744186046511
25.792988313856426
15.012510425354463
23.205342237061775
21.416666666666668
26.438698915763137
18.6511240632806
25.811823480432974
25.228975853455456
26.705490848585693
34.41938178780284
12.80133000831255
25.43640897755611
20.868113522537563
16.375727348295925
19.60132890365448
20.35029190992494
15.070774354704414
19.532554257095157
20.433694745621352
64.17290108063176
32.308970099667775
29.5
15.42952460383653
16.38935108153078
16.333333333333332
16.402997502081597
28.53577371048253
30.590191188694934
24.95826377295493
33.166248955722644
10.491257285595339
16.279069767441857
28.690575479566306
12.739383846794338
29.166666666666668
20.930232558139533
17.333333333333332
14.321398834304746
24.89592006661116
21.05263157894737
10.299003322259136
22.0
22.71214642262895
15.946843853820594
14.071606994171526
33.69384359400999
30.968280467445748
14.262023217247098
33.16708229426434
35.435684647302914
24.60515378221114
41.881765195670276
15.903413821815155
23.48547717842324
29.858215179316097
29.632721202003342
23.41666666666667
25.562031640299754
13.02170283806344
17.24709784411277
50.08333333333333
17.946577629382308
21.888053467000837
17.54385964912281
19.182652210175146
35.66084788029926
27.060782681099088
13.366750208855475
21.786310517529216
22.379367720465897
34.94176372712147
22.81432139883431
25.830564784053152
23.147377185678604
16.086235489220567
20.732722731057454
16.44518272425249
16.985845129059115
15.736885928393006
20.815986677768525
17.19269102990033
21.89841798501249
14.071606994171526
20.767306088407008
16.099585062240667
30.525437864887408
26.311407160699417
26.539101497504163
29.333333333333336
23.397169025811827
15.71072319201995
19.416666666666668
40.533778148457046
17.583333333333332
17.622610141313384
27.431421446384036
23.134328358208958
29.083333333333336
22.18543046357616
36.04651162790697
20.36575228595179
16.25
24.937655860349125
16.694352159468433
9.891936824605153
18.250000000000004
22.75
29.608006672226857
32.64119601328903
34.82959268495428
22.25913621262458
16.026711185308848
21.666666666666668
9.14380714879468
18.46282372598162
16.2771285475793
21.73189009159034
20.384294068504598
20.995850622406643
17.583333333333332
14.524207011686144
17.9635761589404
26.72772689425479
22.564529558701086
20.85070892410342
10.407993338884262
18.948247078464107
19.900083263946712
8.992506244796003
32.0
30.597014925373134
22.647793505412157
21.630615640599004
10.90757701915071
14.083333333333336
24.0
12.083333333333334
12.67723102585488
21.017514595496248
19.499999999999996
15.86378737541528
26.473029045643155
19.46975973487987
14.154870940882597
20.39966694421316
21.89841798501249
21.428571428571423
20.781379883624272
22.628951747088188
33.333333333333336
22.757475083056477
9.416666666666666
14.166666666666666
24.04643449419569
37.36447039199333
30.141548709408827
25.477178423236516
12.583333333333334
17.558528428093645
29.201331114808653
21.202003338898162
16.153205661948377
34.0567612687813
19.80033277870216
24.438902743142144
15.538847117794486
15.986677768526228
24.207011686143574
25.208681135225376
30.46744574290484
21.232306411323897
23.85702410640067
25.3955037468776
23.563696919233973
24.91666666666667
58.637873754152814
23.397169025811827
24.14654454621149
42.40663900414938
14.95405179615706
11.647254575707153
21.833333333333336
21.945137157107233
25.8520365752286
25.18765638031693
20.995850622406643
29.40685045948204
18.936877076411957
60.865945045795165
15.40383014154871
11.99000832639467
15.71072319201995
23.793677204658902
24.874791318864773
15.474209650582361
28.083333333333336
26.02168473728107
12.26021684737281
25.66445182724252
20.819397993311036
24.129353233830848
13.741721854304636
24.207011686143574
21.64862614487927
13.643926788685523
22.04658901830283
30.191826522101753
15.487094088259783
15.314569536423841
22.40802675585284
33.94495412844037
30.890924229808498
35.518672199170126
57.26210350584307
33.194675540765395
23.813488759367196
30.416666666666664
16.444073455759597
27.823920265780725
14.095079232693914
20.500000000000004
33.38884263114072
37.95681063122923
12.905911740216487
24.833333333333332
20.66666666666667
19.71595655806182
16.38935108153078
35.58333333333334
16.72212978369384
20.500000000000004
17.40216486261449
29.573934837092732
13.333333333333336
16.569525395503746
31.385642737896493
25.35446205170976
24.481327800829877
35.083333333333336
21.81515403830142
26.500000000000004
34.138218151540386
16.153205661948377
12.833333333333334
44.01993355481727
15.008291873963516
21.297836938435942
24.37603993344426
32.5542570951586
21.013289036544847
14.904246461282266
16.6110183639399
21.262458471760795
20.39966694421316
10.548172757475081
17.901748542880934
13.68948247078464
25.18703241895262
20.916666666666668
21.184320266889074
14.666666666666668
17.05490848585691
27.144046627810155
23.28881469115192
12.489592006661114
31.385642737896493
21.60133444537114
16.694352159468433
23.16666666666667
68.526228143214
26.144879267277272
16.63907284768212
26.52210175145955
18.530884808013354
23.436196830692246
22.527015793848715
21.862011637572735
9.3255620316403
23.255813953488367
21.285475792988315
15.295095594347467
24.542429284525795
21.166666666666668
32.52710592160133
10.324729392173191
21.434528773978315
23.956594323873123
27.477102414654453
17.166666666666668
25.375626043405678
30.557868442964196
20.416666666666668
21.013289036544847
15.21197007481297
17.946577629382308
16.889632107023413
19.849874895746453
17.75
20.000000000000004
20.149875104079936
23.006644518272424
38.73121869782972
26.578073089700997
19.23397169025812
17.886855241264563
22.314737718567862
11.823480432972522
20.617696160267112
20.784641068447414
19.76647206005004
21.64862614487927
28.10675562969141
16.013344453711426
28.190158465387828
28.059950041631975
30.44203502919099
14.737718567860117
28.96494156928214
15.40383014154871
28.85738115095913
26.517040731504576
15.653621981681932
24.33554817275747
26.62229617304493
16.069941715237302
16.9449081803005
16.583333333333332
22.647793505412157
26.11940298507463
32.666666666666664
23.14118629908104
23.03839732888147
11.480865224625624
18.6511240632806
22.75
24.396336386344714
14.23841059602649
14.345287739783153
42.13576158940397
16.22296173044925
24.00332225913621
17.961570593149542
11.09271523178808
22.314737718567862
16.916666666666668
18.151540383014158
22.18515429524604
24.979253112033202
14.321398834304746
16.832504145936984
16.471571906354512
23.833333333333336
31.109257714762308
9.333333333333334
20.982514571190677
22.591362126245844
11.916666666666668
22.41666666666667
39.1701244813278
23.391812865497077
26.477935054121566
17.41666666666667
37.44787322768974
28.822055137844615
20.85070892410342
13.93989983305509
8.992506244796003
24.5
18.166666666666668
27.083333333333336
31.976744186046506
21.67774086378737
19.449081803005008
20.943708609271525
22.212978369384363
20.514950166112953
16.959064327485383
26.766417290108066
26.473029045643155
13.560732113144757
17.970049916805323
32.44370308590493
20.750000000000004
21.26772310258549
24.60515378221114
24.00332225913621
26.061615320566197
42.394014962593516
12.479201331114808
18.750000000000004
16.62510390689942
17.069109075770193
28.833333333333332
14.98751040799334
13.333333333333336
14.048212801330012
21.351125938281903
31.95020746887967
19.253112033195023
26.0797342192691
34.08146300914381
13.072439633638636
21.368948247078468
14.463840399002494
18.447412353923205
23.397169025811827
12.583333333333334
19.75
31.833333333333336
15.191986644407347
15.037593984962408
23.583333333333336
19.98334721065779
29.950083194675543
28.309741881765195
20.382695507487522
27.68079800498753
9.666666666666668
18.129139072847686
35.22064945878435
25.935162094763097
17.901748542880934
21.416666666666668
17.180984153461218
25.5
10.90757701915071
12.686567164179104
25.668896321070232
17.069109075770193
19.400499583680265
24.707846410684475
10.583333333333334
20.767306088407008
19.518272425249165
15.21197007481297
32.136894824707845
24.166666666666668
21.630615640599004
24.166666666666668
16.44518272425249
26.2063227953411
17.901748542880934
15.487094088259783
14.929107589658049
20.43189368770764
15.282392026578073
24.583333333333336
17.083333333333336
10.407993338884262
17.833333333333336
43.18936877076412
21.416666666666668
28.55953372189842
25.89508742714405
13.572023313905078
22.95492487479132
30.641132389675274
15.40383014154871
18.113522537562606
22.389306599832917
25.75
13.18864774624374
18.151540383014158
22.916666666666668
32.5542570951586
39.81636060100167
26.45107794361526
19.733555370524563
24.542429284525795
19.150707743547045
46.57762938230384
14.571190674437968
13.289036544850498
28.85738115095913
10.90757701915071
11.461794019933553
15.250000000000002
26.0797342192691
20.18272425249169
14.23841059602649
19.866999168744808
47.171381031613976
23.72598162071846
35.893155258764615
30.383973288814694
17.65195670274771
35.940099833610645
12.718204488778055
14.559068219633943
18.76563803169308
21.149042464612823
20.06661115736886
24.063280599500416
26.058091286307057
23.77389858686617
19.966722129783697
49.79218620116376
34.16252072968491
23.352793994995828
25.18703241895262
22.980849292256455
32.16957605985038
22.09302325581395
10.250000000000002
58.471760797342185
23.03839732888147
16.153205661948377
23.750000000000004
21.825726141078835
32.666666666666664
13.032581453634087
18.666666666666668
18.916666666666668
20.233139050791006
26.78868552412646
23.40248962655602
18.6511240632806
30.557868442964196
42.026578073089695
25.25
22.231473771856788
36.76348547717843
21.184320266889074
20.764119601328897
26.46076794657763
26.166666666666668
19.06744379683597
26.267664172901082
19.833333333333332
25.375626043405678
26.62229617304493
18.62011637572735
13.821815154038301
15.40383014154871
14.416666666666666
36.05328892589509
23.455759599332225
29.833333333333336
16.180150125104255
39.333333333333336
14.25
15.64569536423841
17.470881863560734
19.632414369256477
23.255813953488367
18.78130217028381
25.66445182724252
43.191311612364245
24.583333333333336
25.43640897755611
23.563696919233973
13.749999999999998
39.733998337489616
18.151540383014158
32.64119601328903
20.982514571190677
18.219633943427624
14.904246461282266
21.73189009159034
14.083333333333336
16.083333333333336
18.718801996672216
26.250000000000004
30.30050083472454
37.84232365145228
25.747508305647838
30.673316708229425
34.637801831806826
24.006622516556295
35.19134775374376
28.726061615320567
32.0
37.48960931005819
12.073272273105745
25.124792013311147
29.323308270676694
51.95996663886573
23.006644518272424
30.801335559265443
24.522028262676645
18.86949293433084
23.25
11.157368859283931
20.982514571190677
16.583333333333332
15.75
19.900083263946712
13.868003341687553
20.885547201336674
24.438902743142144
24.688279301745638
28.92768079800499
14.023372287145246
19.53449709060682
28.500414250207125
21.926910299003318
20.951585976627715
25.62604340567613
19.25
25.95993322203673
17.318900915903413
16.056572379367722
18.05324459234609
41.00000000000001
32.556203164029974
23.0
32.61231281198003
31.52627189324437
19.400499583680265
18.703241895261847
22.222222222222225
35.80349708576187
17.318900915903413
25.792988313856426
68.60949208992507
17.235636969192342
34.80066445182724
22.296173044925126
24.97918401332223
14.833333333333334
22.4896265560166
24.16943521594684
19.55074875207987
14.309484193011647
16.23646960865945
10.264900662251657
17.221297836938437
26.477935054121566
31.72757475083056
22.39800166527894
44.15692821368949
22.545757071547424
11.258278145695364
28.16666666666667
17.597998331943284
26.372712146422632
17.083333333333336
25.956738768718804
20.715474209650584
28.25
16.486261448792675
16.09674728940784
27.740863787375407
24.730290456431536
18.97993311036789
28.35820895522388
39.833333333333336
14.80865224625624
10.21594684385382
12.282157676348548
17.373233582709894
21.035058430717864
18.515429524603835
31.920199501246884
20.815986677768525
16.55629139072848
31.803005008347245
21.118530884808017
35.933609958506224
31.75787728026534
19.734660033167494
26.37729549248748
13.018242122719736
26.804979253112037
14.796342477140483
13.311148086522465
15.346121768140119
18.12136325852037
20.715474209650584
10.241465445462117
27.893422148209822
28.618968386023294
12.7906976744186
14.524207011686144
22.666666666666668
19.69949916527546
34.252297410192156
9.666666666666668
18.885191347753743
21.75
26.333333333333332
16.44518272425249
22.11138819617623
35.63696919233972
26.878130217028385
23.7698081734779
20.899250624479603
15.833333333333334
18.734388009991676
19.416666666666668
14.23841059602649
25.415282392026572
25.666666666666668
31.693077564637196
15.378221113881962
24.62437395659433
25.228975853455456
21.862011637572735
14.321398834304746
12.583333333333334
16.290726817042607
18.318068276436303
37.344398340248965
21.825726141078835
24.166666666666668
11.528822055137846
23.19201995012469
25.89807852965748
16.930775646371977
10.55694098088113
16.666666666666668
16.75
20.39966694421316
13.238967527060783
20.200333889816363
14.617940199335546
10.324729392173191
18.401332223147378
23.31390507910075
18.453865336658353
28.5
18.880534670008355
27.54590984974958
19.317235636969194
35.19599666388657
17.744610281923716
9.424520433694745
26.000000000000004
18.447412353923205
16.527545909849753
27.963272120200333
23.358270989193684
28.22647793505412
19.98334721065779
17.931609674728943
26.416666666666668
8.47176079734219
13.749999999999998
28.750000000000004
25.707154742096506
30.141548709408827
17.931609674728943
23.0
15.960099750623442
24.086378737541526
10.083333333333334
19.916666666666668
27.606338615512932
26.64446294754372
24.5
32.362728785357746
47.62301918265222
12.396006655574043
23.873121869782974
18.666666666666668
19.65029142381349
22.71214642262895
23.269391159299417
13.443983402489625
11.009174311926605
24.063280599500416
25.459098497495827
19.633943427620633
33.9966832504146
36.340852130325814
30.008312551953455
17.13810316139767
16.736053288925895
16.47254575707155
25.041459369817577
18.530884808013354
14.737718567860117
17.19269102990033
20.85070892410342
18.48459616985845
13.893510815307819
16.569525395503746
20.016680567139286
22.157190635451503
28.11980033277871
21.695760598503743
17.069109075770193
24.750000000000004
14.202657807308967
16.736053288925895
17.916666666666668
10.347682119205297
27.393838467943382
25.562031640299754
19.518272425249165
34.86238532110092
16.44518272425249
23.98001665278934
34.1117597998332
29.69140950792327
21.035058430717864
22.48126561199001
23.5
29.357798165137616
51.241721854304636
12.0
15.86378737541528
27.363184079601986
19.900083263946712
23.583333333333336
34.44537114261886
53.03913405495421
17.152373022481267
27.02251876563803
24.063280599500416
26.97751873438801
52.123230641132395
13.238967527060783
14.916666666666668
15.275459098497498
10.049833887043189
18.113522537562606
23.224728487886388
17.78886118038238
38.05162364696087
12.989175686927561
22.71214642262895
30.525437864887408
39.550374687760204
23.67109634551495
31.976744186046506
17.45635910224439
21.57676348547718
12.822647793505412
14.25
16.319733555370526
19.966722129783697
30.42394014962594
13.655287260616152
18.984179850124896
14.666666666666668
14.451827242524914
28.737541528239195
28.046744574290493
45.38653366583541
15.986677768526228
20.401337792642142
30.500000000000004
20.25
13.93989983305509
9.3255620316403
28.464106844741238
36.19683069224354
14.487926727726895
18.1063122923588
31.276063386155133
19.816819317235634
13.155703580349709
22.50830564784053
15.474209650582361
24.647302904564317
18.63560732113145
33.72093023255813
31.36439267886855
25.166112956810625
20.36575228595179
17.40216486261449
12.292358803986708
22.194513715710727
12.16887417218543
9.492089925062448
19.76647206005004
13.094245204336948
21.926910299003318
35.773710482529125
27.038269550748755
24.02001668056714
21.166666666666668
27.68079800498753
12.822647793505412
10.324729392173191
24.937655860349125
24.646128226477938
14.083333333333336
14.072847682119205
25.08333333333334
14.487926727726895
15.191986644407347
24.542429284525795
19.09924937447873
19.13477537437604
17.43119266055046
17.095435684647303
18.6511240632806
20.100083402835697
16.473509933774835
13.000000000000002
21.981681931723564
19.76744186046511
39.16666666666667
28.286189683860233
35.38205980066444
11.853088480801336
18.604651162790695
18.63560732113145
17.705735660847882
18.219633943427624
21.232306411323897
15.89018302828619
19.65029142381349
21.619365609348915
10.066555740432614
25.49833887043189
19.55074875207987
23.121869782971622
16.9449081803005
26.583333333333336
30.532445923460898
21.262458471760795
24.62437395659433
20.200333889816363
21.13144758735441
26.627712854757934
14.368770764119597
20.500000000000004
20.649458784346383
15.653621981681932
17.735220649458785
15.557404326123129
15.876974231088944
28.34580216126351
19.451371571072315
29.06976744186046
15.5
32.39202657807308
17.554076539101494
28.003314001657007
21.083333333333336
18.52159468438538
17.25
19.214703425229743
17.235636969192342
15.461346633416458
19.567027477102418
19.567027477102418
19.567027477102418
15.179316096747291
20.233139050791006
24.396336386344714
16.0
23.08970099667774
10.473815461346634
29.97502081598668
19.75
15.108514190317196
35.137385512073266
14.559068219633943
15.697674418604649
15.609348914858098
25.43786488740617
20.833333333333332
15.793848711554446
24.937447873227693
18.61435726210351
15.512927439532943
27.787021630615637
23.08970099667774
16.916666666666668
25.14571190674438
17.81848459616986
21.702838063439067
17.43119266055046
31.390507910074938
19.317235636969194
34.52579034941764
11.916666666666668
17.3841059602649
20.615128844555283
12.292358803986708
23.519599666388658
21.888053467000837
15.736885928393006
28.85738115095913
35.22064945878435
20.01661129568106
18.416666666666668
18.713450292397663
21.702838063439067
34.44259567387687
19.949916527545913
10.824313072439635
13.488759367194005
18.48459616985845
28.13278008298755
23.230641132389678
32.63946711074105
16.694352159468433
13.20598006644518
22.268557130942455
18.48459616985845
17.696160267111853
28.690575479566306
14.071606994171526
19.61602671118531
17.152373022481267
24.68723936613845
17.38768718801997
21.77888611803824
14.962593516209479
24.252491694352155
17.985012489592005
15.929941618015013
13.93989983305509
38.48080133555927
26.01828761429759
18.79699248120301
17.901748542880934
23.397169025811827
23.7698081734779
8.576186511240634
21.630615640599004
22.073578595317723
33.66666666666667
15.237302248126563
24.333333333333332
27.893422148209822
17.195325542570952
25.7689110556941
17.0
26.955074875207984
20.514950166112953
47.495826377295494
20.29950083194676
11.323896752706078
19.548872180451124
21.934945788156796
24.791318864774627
28.046744574290493
16.069941715237302
24.501661129568106
26.605504587155966
30.692243536280237
16.486261448792675
21.096345514950162
24.02327514546966
12.905911740216487
33.638634471273946
26.627712854757934
16.44518272425249
19.333333333333336
17.5
20.34883720930232
24.166666666666668
22.87145242070117
21.981681931723564
20.566194837635305
24.166666666666668
13.355592654424042
15.653621981681932
22.95492487479132
20.617696160267112
12.582781456953644
20.416666666666668
34.551495016611284
16.527545909849753
28.60717264386989
24.396336386344714
31.803005008347245
28.01330008312552
27.477102414654453
20.698254364089777
16.069941715237302
25.68807339449541
25.81453634085213
16.290726817042607
30.456431535269708
28.488372093023248
25.0208507089241
15.42952460383653
22.95492487479132
24.063280599500416
26.039933444259567
21.630615640599004
32.77870216306156
20.200333889816363
33.80634390651086
14.891846921797006
18.515429524603835
10.513245033112582
23.833333333333336
22.61014131338321
31.146179401993354
15.531561461794016
31.859883236030026
27.712854757929883
18.076285240464347
26.311407160699417
19.900083263946712
12.271973466003317
13.53820598006644
53.44970906068163
24.688279301745638
18.5
31.52627189324437
44.28690575479567
27.51454696591854
31.390507910074938
22.166666666666668
15.570358034970857
13.821815154038301
14.796342477140483
21.529509559434743
13.833333333333334
19.25
19.485903814262024
11.656952539550375
25.0208507089241
19.051580698835274
19.0
19.36824605153782
14.154870940882597
19.150707743547045
22.212978369384363
25.228975853455456
19.400499583680265
29.260182876142977
55.29608006672228
18.24212271973466
25.666666666666668
28.34580216126351
17.94019933554817
16.902581182348044
23.06411323896753
23.92026578073089
21.51793160967473
17.554076539101494
21.583333333333332
22.333333333333332
16.362126245847172
11.407160699417155
20.416666666666668
20.166666666666668
15.365448504983386
29.5
21.351125938281903
32.362728785357746
12.083333333333334
30.884808013355592
24.227234753550544
28.000000000000007
19.198664440734557
20.382695507487522
23.255813953488367
29.916666666666668
29.41666666666667
46.12176814011677
61.39767054908486
33.499584372402325
19.567027477102418
15.697674418604649
25.3968253968254
33.86023294509152
22.75
10.049833887043189
11.378737541528238
24.854045037531275
23.019182652210176
29.357798165137616
13.000000000000002
13.488759367194005
24.95826377295493
16.777408637873755
16.416666666666664
19.288079470198674
26.123128119800334
27.462437395659435
23.936613844870728
20.580912863070544
21.77888611803824
27.250000000000004
37.46877601998335
28.179551122194514
15.973377703826955
37.14759535655058
25.12520868113523
32.58520365752286
21.833333333333336
29.99164578111947
15.697674418604649
20.18272425249169
23.294509151414307
22.81432139883431
30.333333333333336
21.416666666666668
26.64446294754372
16.887417218543046
23.603002502085072
30.73089700996677
23.98001665278934
26.311407160699417
26.10141313383209
17.19269102990033
24.189526184538657
33.47210657785179
21.73189009159034
21.017514595496248
21.06577851790175
24.62437395659433
26.705490848585693
13.405495420482932
45.12905911740217
20.033388981636065
10.324729392173191
9.310058187863675
15.346121768140119
38.60232945091514
15.5
22.09302325581395
10.182119205298015
13.988343047460454
17.3841059602649
18.78636741479634
25.10390689941812
25.89508742714405
21.285475792988315
20.566194837635305
19.435215946843847
23.466003316749585
22.647793505412157
31.530782029950085
14.023372287145246
18.015012510425354
21.219715956558062
19.950124688279306
13.621262458471756
20.0
9.825145711906744
19.916666666666668
16.444073455759597
22.425249169435215
25.685785536159603
21.197007481296758
19.41908713692946
13.658940397350992
11.7109634551495
19.01993355481727
28.22647793505412
18.90091590341382
31.140716069941714
43.63030807660284
32.08645054031588
39.48462177888612
13.738551207327227
13.03986710963455
24.646128226477938
28.85738115095913
38.57024106400665
35.38717735220649
17.069109075770193
10.963455149501659
34.99170812603648
20.583333333333332
30.775646371976645
36.72787979966611
16.902581182348044
16.957605985037404
26.228143213988346
23.0
14.036544850498338
29.568106312292354
15.121136173767754
19.633943427620633
22.425249169435215
23.519599666388658
72.85595337218984
26.014913007456506
23.19201995012469
18.03823773898587
24.189526184538657
25.975103734439834
14.691151919866446
20.681063122923586
15.012510425354463
39.30058284762698
15.058236272878537
29.308909242298085
26.394671107410492
35.416666666666664
22.129783693843596
14.583333333333334
27.833333333333332
28.726061615320567
41.382181515403836
16.666666666666668
20.26578073089701
45.78815679733111
38.773819386909686
19.816819317235634
31.746031746031747
34.19516263552961
21.945137157107233
17.78886118038238
19.80033277870216
19.532554257095157
32.97252289758535
28.654485049833884
26.148705096073517
38.66666666666667
23.480432972522898
17.666666666666668
20.149875104079936
15.5
38.76871880199667
21.118530884808017
30.550918196994996
29.118136439267886
9.908409658617817
16.083333333333336
29.083333333333336
31.863560732113143
25.75
21.702838063439067
13.32223147377186
20.333333333333336
26.0797342192691
17.901748542880934
25.269262634631318
10.324729392173191
13.609958506224066
16.13976705490849
28.96494156928214
17.735220649458785
13.405495420482932
29.142381348875936
15.697674418604649
15.487094088259783
17.069109075770193
31.35946622185154
20.583333333333332
35.46511627906977
22.591362126245844
19.317235636969194
15.986677768526228
19.567027477102418
14.87946799667498
23.913043478260867
25.3955037468776
33.61134278565471
30.66666666666667
14.02489626556017
25.43786488740617
26.10508757297748
20.534223706176963
9.075770191507079
22.379367720465897
19.666666666666668
23.108894430590194
43.41666666666667
23.873121869782974
27.272727272727277
18.817651956702747
33.833333333333336
16.319733555370526
23.07053941908714
44.629475437135724
22.647793505412157
27.916666666666664
16.153205661948377
21.85430463576159
20.615128844555283
27.634854771784234
13.245033112582783
9.159034138218152
28.059950041631975
14.119601328903652
21.31557035803497
21.547420965058233
25.519534497090607
22.240663900414937
22.01834862385321
23.147377185678604
19.25
19.53449709060682
37.93677204658902
13.493377483443707
16.985845129059115
21.285475792988315
30.416666666666664
31.250000000000004
25.5
43.760399334442596
37.91666666666668
15.320566194837637
18.386023294509155
19.186046511627904
17.568692756036633
17.43119266055046
24.501661129568106
43.96336386344713
17.705735660847882
30.980066445182725
32.22314737718568
22.443890274314217
10.000000000000002
25.540765391014975
28.905597326649957
13.749999999999998
17.78886118038238
27.56892230576441
29.666666666666668
33.47210657785179
27.083333333333336
31.723563696919236
36.38634471273939
30.922693266832916
29.2743953294412
28.654485049833884
23.504983388704314
24.207011686143574
21.34551495016611
21.637426900584792
18.52159468438538
29.5
27.726894254787677
20.649458784346383
23.67109634551495
40.21648626144879
20.29950083194676
17.63727121464226
18.18936877076412
27.272727272727277
38.96752706078268
29.5
10.241465445462117
18.211920529801326
26.061615320566197
25.978351373855123
32.558139534883715
19.66804979253112
19.900083263946712
17.109634551495013
12.67723102585488
17.083333333333336
28.073089700996675
18.5
24.252491694352155
18.302828618968388
18.151540383014158
23.813488759367196
21.202003338898162
14.725457570715475
25.87354409317804
12.64559068219634
13.03986710963455
12.905911740216487
24.688279301745638
35.57772236076476
26.73350041771095
6.666666666666668
14.261884904086738
21.232306411323897
36.13655287260617
29.28452579034942
11.0
16.985845129059115
21.227197346600335
17.441860465116275
25.745033112582785
36.333333333333336
26.311407160699417
16.23646960865945
42.63114071606994
14.571190674437968
25.5813953488372
11.803823773898587
30.833333333333332
14.95016611295681
18.27242524916943
31.302170283806348
16.527545909849753
21.70671085335543
29.22564529558701
10.232945091514145
14.784053156146177
29.034941763727126
23.976608187134506
14.607679465776293
15.237302248126563
14.154870940882597
13.405495420482932
47.67054908485857
25.99667774086378
14.666666666666668
15.15403830141549
40.98497495826377
25.583333333333336
25.146198830409364
24.292845257903494
42.08333333333333
18.515429524603835
25.08305647840531
23.14118629908104
30.050083472454094
24.22980849292257
15.40383014154871
35.940099833610645
12.05320033250208
14.47587354409318
22.04658901830283
22.8595178719867
34.8585690515807
31.67082294264339
42.84525790349418
25.477178423236516
17.38768718801997
58.5345545378851
39.550374687760204
18.536990856192855
23.62728785357737
21.862011637572735
16.833333333333336
25.99667774086378
27.823920265780725
44.50000000000001
21.56536219816819
14.238134887593672
23.75415282392026
16.486261448792675
49.62593516209476
23.40248962655602
44.26910299003322
20.617696160267112
20.59800664451827
32.9156223893066
25.12520868113523
20.615128844555283
19.751037344398338
53.97350993377483
27.856547122602166
23.58803986710963
14.416666666666666
14.571190674437968
22.06494587843464
22.916666666666668
26.517040731504576
22.583333333333336
15.083333333333334
21.381031613976706
9.850993377483443
29.601990049751247
21.953255425709514
22.50830564784053
20.05012531328321
40.69767441860464
13.749999999999998
19.285120532003326
21.906354515050168
29.163214581607292
27.20465890183029
15.435684647302903
33.80516236469609
31.416666666666668
23.019182652210176
24.708818635607322
12.020033388981636
20.149875104079936
40.48212801330009
16.555740432612314
23.943661971830988
46.74457429048414
36.22704507512521
30.641132389675274
26.355296080066722
12.229617304492512
17.705735660847882
23.98001665278934
45.24207011686144
24.040066777963272
24.97918401332223
11.212624584717608
16.555740432612314
15.179316096747291
25.935162094763097
71.32169576059852
32.50207813798836
32.52710592160133
29.641965029142384
15.793848711554446
16.29260182876143
36.40897755610973
31.64451827242524
31.36439267886855
31.77648040033361
23.108894430590194
28.156146179401986
34.13621262458471
41.230257689110566
17.25
17.539484621778886
43.79683597002498
21.13144758735441
15.692821368948247
27.287853577371045
14.238134887593672
27.0
22.176079734219268
19.65029142381349
28.309741881765195
31.41186299081036
21.297836938435942
14.048212801330012
23.519599666388658
44.91666666666667
26.561199000832644
39.083333333333336
46.843853820598
30.474604496253125
30.08333333333334
40.416666666666664
27.348295926849545
41.02990033222591
30.46744574290484
37.53127606338616
22.11138819617623
14.333333333333334
9.159034138218152
30.46744574290484
36.86405337781485
37.21898417985013
39.56774729842061
19.333333333333336
9.492089925062448
30.673316708229425
13.355592654424042
20.715474209650584
37.59398496240602
46.794338051623654
20.885547201336674
31.67082294264339
12.51042535446205
25.478767693588676
30.31561461794019
22.647793505412157
22.89758534554538
19.083333333333332
27.893422148209822
18.552412645590685
22.8595178719867
21.76814011676397
22.527015793848715
14.178482068390325
41.81969949916528
22.647793505412157
32.02668890742285
20.634920634920636
21.76079734219269
14.095079232693914
24.522028262676645
20.016680567139286
20.233139050791006
53.33889816360602
35.30391340549542
40.09983361064892
11.046511627906975
22.591362126245844
18.86949293433084
24.438902743142144
20.43189368770764
29.916666666666668
39.41908713692946
35.69051580698836
30.557868442964196
16.279069767441857
32.94605809128631
35.44093178036606
46.339434276206326
30.91666666666667
27.712854757929883
30.63439065108514
28.892589508742716
14.154870940882597
30.23255813953488
25.83612040133779
39.065108514190314
24.22980849292257
18.536990856192855
25.7285595337219
32.50207813798836
45.1209341117598
22.3421926910299
37.7814845704754
21.59468438538206
33.13905079100749
18.552412645590685
25.3955037468776
39.06899418121364
19.253112033195023
14.87946799667498
15.653621981681932
27.68079800498753
13.261050875729776
11.240632805995006
18.598832360300253
20.200333889816363
12.239800166527893
12.748344370860927
34.637801831806826
25.08333333333334
31.00581878636742
18.469217970049915
19.617622610141314
21.17940199335548
21.96339434276206
29.475437135720234
39.75
19.035743973399832
18.984179850124896
23.750000000000004
16.166666666666668
18.880534670008355
22.942643391521198
20.39966694421316
29.142381348875936
40.96586178184847
37.35440931780366
18.318068276436303
24.895572263993316
42.52491694352159
43.677204658901836
15.820149875104079
20.199501246882793
23.983402489626556
43.18936877076412
20.899250624479603
42.583333333333336
22.268557130942455
38.704318936877065
22.360764754779723
11.740216486261449
19.451371571072315
21.464226289517473
36.083333333333336
24.270225187656383
42.85714285714285
20.100083402835697
30.391340549542047
33.19502074688797
44.95412844036698
15.416666666666666
71.76079734219267
34.49709060681629
45.37114261884904
25.621890547263682
22.79534109816972
29.09698996655518
21.184320266889074
18.79699248120301
28.631051752921536
11.784232365145227
13.32223147377186
35.25000000000001
48.79668049792531
19.48376353039134
37.00918964076859
15.191986644407347
24.60515378221114
28.986710963455145
25.66445182724252
15.487094088259783
19.633943427620633
12.489592006661114
27.71784232365145
25.08305647840531
48.20384294068505
16.97171381031614
14.510779436152571
10.74104912572856
20.0332502078138
29.12863070539419
32.97252289758535
25.416666666666668
32.80467445742905
15.776293823038397
23.960066555740433
36.49210307564422
17.568692756036633
34.471273938384684
49.4991652754591
33.36113427856547
26.750000000000004
33.166666666666664
12.003311258278147
28.690575479566306
27.468879668049798
25.89508742714405
16.23646960865945
25.833333333333336
17.344398340248965
19.69949916527546
19.69949916527546
18.916666666666668
16.777408637873755
20.566194837635305
19.035743973399832
38.62126245847175
21.583333333333332
31.94675540765391
16.62510390689942
24.562864279766863
20.316402997502085
26.144879267277272
27.787021630615637
18.734388009991676
27.333333333333332
20.316402997502085
22.148209825145713
26.04340567612688
23.121869782971622
11.627906976744184
20.96505823627288
15.61461794019933
41.965029142381354
19.102990033222586
16.25
15.320566194837637
11.323896752706078
18.734388009991676
21.981681931723564
17.38768718801997
37.65586034912718
15.487094088259783
41.068447412353926
23.31390507910075
19.0
19.06744379683597
51.37385512073272
30.948419301164723
33.333333333333336
22.148209825145713
30.539419087136935
15.358931552587649
31.89009159034138
68.41666666666667
12.406328059950042
15.365448504983386
21.030756442227766
16.319733555370526
28.16666666666667
39.6163469557965
14.000000000000004
24.667774086378735
23.817427385892117
33.52745424292845
27.038269550748755
29.858215179316097
13.953488372093023
13.166666666666666
15.320566194837637
17.6814011676397
32.50207813798836
38.583333333333336
13.455149501661126
33.08333333333334
18.12136325852037
18.885191347753743
29.333333333333336
24.123539232053425
39.75
20.86450540315877
18.583333333333336
25.62396006655574
18.598832360300253
34.920634920634924
16.63907284768212
22.3421926910299
30.839567747298425
15.288220551378448
21.351125938281903
24.68723936613845
12.57285595337219
18.9640768588137
13.905079100749374
27.41666666666667
31.109257714762308
12.583333333333334
20.082987551867223
24.979253112033202
13.881961762261014
20.416666666666668
14.261884904086738
19.102990033222586
14.154870940882597
23.019182652210176
26.162790697674417
17.445742904841406
15.692821368948247
28.973509933774835
25.062240663900415
34.44537114261886
40.38301415487094
13.988343047460454
14.47587354409318
18.932443703085905
23.10258548790659
32.252701579384876
18.136439267886857
18.56786011656953
16.721854304635766
18.86949293433084
12.665562913907285
16.847372810675566
18.24212271973466
29.85074626865672
30.08333333333334
22.3421926910299
18.5
26.311407160699417
19.400499583680265
20.732722731057454
18.250000000000004
14.571190674437968
24.812656119900083
15.531561461794016
15.275459098497498
15.083333333333334
30.724396336386345
15.333333333333336
32.77731442869058
16.569525395503746
8.659450457951706
17.848206839032528
20.649458784346383
13.488759367194005
15.640599001663892
13.621262458471756
10.596026490066226
30.141548709408827
17.81848459616986
22.06494587843464
15.108514190317196
21.981681931723564
40.46627810158201
27.477102414654453
41.90317195325543
16.402997502081597
31.385642737896493
24.646128226477938
24.771404821280132
38.96752706078268
12.323064113238969
20.25
8.5
12.251655629139073
18.008298755186722
12.416666666666666
24.33554817275747
32.805995004163194
21.197007481296758
16.11295681063123
21.202003338898162
27.606338615512932
29.808492922564533
29.858215179316097
17.152373022481267
18.05324459234609
15.86378737541528
21.6597510373444
10.657785179017486
22.693266832917704
22.904564315352697
15.780730897009963
15.776293823038397
54.70441298917569
14.666666666666668
13.787375415282389
18.432026688907424
24.646128226477938
16.819317235636973
16.6110183639399
29.741019214703428
24.97918401332223
17.901748542880934
17.376775271512113
20.35029190992494
19.333333333333336
13.072439633638636
20.4149377593361
22.433774834437088
12.385702410640066
21.493775933609957
79.78369384359401
10.565723793677204
17.871986699916878
28.070175438596497
28.143213988343053
25.31223980016653
25.374376039933445
20.100083402835697
13.988343047460454
22.41666666666667
20.000000000000004
19.700748129675812
14.820982514571192
14.95405179615706
20.563847429519075
30.91666666666667
17.735220649458785
13.749999999999998
14.820982514571192
12.323064113238969
19.4675540765391
13.704318936877073
22.333333333333332
30.298013245033115
17.514595496246873
21.76079734219269
26.289517470881865
20.59800664451827
19.949916527545913
29.0
15.320566194837637
17.75
17.65195670274771
27.212020033388978
18.56786011656953
16.180150125104255
13.549459684123024
13.018242122719736
20.233139050791006
12.905911740216487
14.53488372093023
16.777408637873755
19.01993355481727
31.640299750208158
18.70860927152318
22.148209825145713
29.142381348875936
20.482930890924234
12.136325852036576
19.400499583680265
18.09841534612177
18.770764119601324
9.908409658617817
28.130217028380635
36.29568106312292
12.15653621981682
11.490424646128227
23.128119800332783
12.905911740216487
21.096345514950162
21.06577851790175
18.318068276436303
14.463840399002494
10.158201498751042
25.91362126245847
23.338870431893685
19.849874895746453
33.888426311407166
14.666666666666668
46.20517097581318
22.8595178719867
18.5
30.141548709408827
14.2975893599335
12.0
29.883138564273793
21.100917431192663
19.69949916527546
14.238134887593672
19.684385382059798
9.749999999999998
19.93327773144287
17.221297836938437
18.234804329725232
16.44518272425249
14.833333333333334
14.106844741235395
14.654454621149043
16.708229426433913
35.46511627906977
34.19516263552961
13.238967527060783
14.083333333333336
20.233139050791006
23.41666666666667
16.819317235636973
23.504983388704314
15.416666666666666
26.17056856187291
32.3873121869783
19.36560934891486
16.209476309226932
17.333333333333332
20.583333333333332
26.01828761429759
16.44518272425249
12.57285595337219
22.916666666666668
13.372093023255813
19.400499583680265
26.49501661129568
13.749999999999998
26.97751873438801
28.000000000000007
13.715710723192018
16.63907284768212
10.916666666666668
12.333333333333334
12.833333333333334
10.000000000000002
16.652789342214824
26.162790697674417
18.0
16.180150125104255
17.696160267111853
10.916666666666668
32.306411323896754
25.81453634085213
21.81515403830142
18.530884808013354
23.983402489626556
21.070234113712374
23.92026578073089
17.597998331943284
9.159034138218152
13.327814569536425
22.443890274314217
20.930232558139533
13.738551207327227
18.386023294509155
23.53923205342237
12.209302325581392
12.406328059950042
68.99418121363259
30.391340549542047
28.583333333333332
26.04340567612688
28.761429758935993
15.640599001663892
13.572023313905078
11.240632805995006
19.98334721065779
24.292845257903494
20.450751252086814
24.31307243963364
23.53923205342237
31.913116123642443
16.832504145936984
29.28452579034942
26.083333333333336
19.400499583680265
35.10815307820299
16.97171381031614
18.604651162790695
27.52293577981651
18.750000000000004
17.886855241264563
20.36575228595179
29.475437135720234
11.074104912572857
17.916666666666668
31.22923588039866
21.06577851790175
20.133111480865228
20.26578073089701
12.718204488778055
23.690773067331676
26.855713094245207
13.000000000000002
12.593828190158465
15.583333333333334
19.48376353039134
25.645295587010825
25.75
38.6855241264559
16.569525395503746
24.416666666666668
19.833333333333332
9.74188176519567
15.5
10.299003322259136
16.597510373443985
23.10258548790659
28.34580216126351
28.97585345545379
23.41666666666667
13.488759367194005
24.750000000000004
26.35078969243558
10.281923714759538
13.916666666666666
17.180984153461218
27.726894254787677
19.88352745424293
22.81432139883431
23.280861640430825
21.880199667221298
21.67774086378737
20.233139050791006
18.333333333333332
17.095435684647303
31.561461794019927
20.63227953410982
28.833333333333332
23.019182652210176
17.109634551495013
17.040731504571905
13.905079100749374
12.989175686927561
26.061615320566197
21.51793160967473
12.624584717607972
21.13144758735441
18.34862385321101
18.62011637572735
25.643153526970956
29.69140950792327
17.275747508305642
15.71072319201995
14.796342477140483
19.01584653878232
32.27953410981698
12.15653621981682
10.049833887043189
20.266889074228523
26.578073089700997
14.238134887593672
11.573688592839302
9.891936824605153
9.74188176519567
12.406328059950042
50.12468827930174
17.069109075770193
18.091286307053945
19.75
9.492089925062448
16.527545909849753
8.75
20.482930890924234
18.6511240632806
16.6804979253112
28.70216306156406
21.149042464612823
19.65029142381349
12.739383846794338
16.110183639399
11.28630705394191
15.008291873963516
28.5
18.046357615894042
15.789473684210527
20.34883720930232
23.83720930232558
21.56536219816819
18.70860927152318
22.516556291390728
23.833333333333336
30.775646371976645
20.514950166112953
24.10640066500416
16.51376146788991
16.721854304635766
44.61152882205514
18.09841534612177
28.57142857142857
20.149875104079936
32.556203164029974
17.221297836938437
12.406328059950042
23.230641132389678
18.604651162790695
25.250836120401335
17.705735660847882
30.23255813953488
17.539484621778886
27.703826955074877
22.974101921470343
11.5
30.500000000000004
14.25
10.613598673300167
8.825978351373855
30.257689110556946
25.562031640299754
16.97171381031614
31.478405315614612
48.123436196830696
14.273789649415692
17.539484621778886
26.817042606516292
21.96339434276206
11.42384105960265
15.512927439532943
13.238967527060783
18.333333333333332
17.735220649458785
18.325041459369817
18.515429524603835
25.104253544620523
31.270903010033443
16.486261448792675
20.500000000000004
18.181818181818183
25.54257095158598
32.860717264386984
13.079470198675496
35.07896924355777
20.233139050791006
27.166666666666664
13.177648040033361
23.730224812656125
12.375415282392023
19.06744379683597
14.691151919866446
21.60133444537114
16.153205661948377
24.31307243963364
16.777408637873755
20.847176079734215
17.78886118038238
18.151540383014158
9.74188176519567
18.61435726210351
16.056572379367722
20.732722731057454
25.02078137988363
17.45635910224439
22.25913621262458
13.133832086450541
11.0
15.250000000000002
28.80932556203164
10.513245033112582
23.5
13.455149501661126
26.766417290108066
11.656952539550375
19.583333333333336
21.702838063439067
19.518272425249165
29.201331114808653
26.627712854757934
16.473509933774835
13.5
14.666666666666668
14.273789649415692
21.232306411323897
11.323896752706078
14.53488372093023
20.233139050791006
17.916666666666668
17.333333333333332
20.216306156405988
10.666666666666668
19.900083263946712
24.14654454621149
20.732722731057454
26.000000000000004
17.180984153461218
17.848206839032528
15.846538782318598
12.916666666666668
28.666666666666668
9.408825978351373
15.986677768526228
19.370860927152314
16.569525395503746
20.695364238410594
40.349417637271216
12.023217247097845
27.62063227953411
21.67774086378737
14.416666666666666
31.031613976705497
15.217391304347826
25.374376039933445
29.41666666666667
18.318068276436303
19.217970049916808
22.48126561199001
31.640299750208158
16.54197838736492
14.119601328903652
16.02990033222591
26.82724252491694
18.453865336658353
23.025768911055696
14.904246461282266
25.540765391014975
22.370617696160267
22.904564315352697
16.930775646371977
14.5
30.481727574750824
31.10367892976588
16.569525395503746
20.232172470978444
21.73189009159034
34.64106844741236
15.166666666666668
18.083333333333336
14.929107589658049
26.2063227953411
32.64119601328903
64.64226289517472
20.683903252710596
12.687813021702839
15.71072319201995
25.87646076794658
14.867109634551493
21.547420965058233
17.441860465116275
13.5
25.978351373855123
10.824313072439635
10.513245033112582
18.770764119601324
19.78297161936561
26.245847176079728
14.321398834304746
12.45847176079734
16.528239202657804
12.489592006661114
17.955112219451372
39.285714285714285
11.506622516556293
13.018242122719736
13.738551207327227
22.583333333333336
25.478767693588676
16.985845129059115
19.683069224353627
12.67723102585488
25.75
23.5
18.0
22.27763923524522
28.03660565723794
13.493377483443707
21.31557035803497
23.730224812656125
20.166666666666668
25.0208507089241
18.27242524916943
11.627906976744184
15.5
39.833333333333336
9.242298084929224
12.75
17.38768718801997
17.069109075770193
24.166666666666668
19.599666388657216
31.723563696919236
14.678899082568808
16.069941715237302
24.812656119900083
22.564529558701086
22.240802675585282
11.352253756260435
51.04253544620517
24.52043369474562
11.0
26.89425478767694
12.905911740216487
24.667774086378735
10.90757701915071
16.901408450704224
21.666666666666668
23.686405337781483
18.750000000000004
20.566194837635305
14.70099667774086
44.7324414715719
27.477102414654453
16.126350789692438
15.763135946622185
22.885572139303484
23.853211009174313
17.622610141313384
31.636060100166947
14.131338320864506
15.033222591362124
24.35577722360765
19.435215946843847
29.09393183707398
36.37873754152824
14.737718567860117
28.333333333333332
23.31390507910075
8.326394671107412
18.604651162790695
14.071606994171526
13.749999999999998
13.32223147377186
18.68770764119601
11.740216486261449
20.39966694421316
34.916666666666664
12.873754152823919
14.737718567860117
14.820982514571192
22.68557130942452
26.289517470881865
19.08713692946058
15.141430948419304
16.166666666666668
18.52159468438538
17.75
15.487094088259783
18.151540383014158
17.485428809325562
25.08333333333334
8.243130724396337
16.528239202657804
9.408825978351373
11.823480432972522
35.38717735220649
11.906744379683598
10.657785179017486
20.133111480865228
18.76563803169308
18.280467445742907
20.416666666666668
12.748344370860927
12.520729684908789
16.569525395503746
18.363939899833056
11.740216486261449
21.666666666666668
14.2975893599335
15.282392026578073
14.737718567860117
15.371762740183796
17.069109075770193
23.178807947019866
24.459234608985025
22.370617696160267
14.867109634551493
15.876974231088944
13.666666666666666
20.000000000000004
22.39800166527894
30.974188176519565
13.727121464226288
10.074937552039968
15.557404326123129
20.951585976627715
27.606338615512932
18.932443703085905
13.155703580349709
10.407993338884262
18.128654970760234
25.66445182724252
10.407993338884262
22.81432139883431
11.490424646128227
15.40383014154871
17.568692756036633
11.823480432972522
21.0
16.374269005847953
11.833333333333334
19.499999999999996
25.166112956810625
20.59800664451827
13.416666666666668
15.095913261050876
19.950124688279306
19.25
19.25
11.5
17.391304347826082
13.20598006644518
20.995850622406643
12.873754152823919
12.57285595337219
16.166666666666668
21.386800334168758
17.38768718801997
21.76079734219269
14.238134887593672
12.905911740216487
27.483443708609272
20.701168614357268
18.6511240632806
10.696517412935323
18.63560732113145
9.583333333333334
14.916666666666668
11.333333333333334
15.191986644407347
17.109634551495013
20.016680567139286
14.285714285714283
9.749999999999998
18.280467445742907
12.323064113238969
69.35215946843851
15.859766277128548
13.20598006644518
17.358803986710964
15.894039735099337
10.927152317880795
17.7109440267335
14.40466278101582
16.19601328903654
17.1238570241064
24.64494569757728
18.56786011656953
14.2975893599335
18.78130217028381
15.916666666666668
10.074937552039968
17.014178482068388
31.557035803497087
13.632585203657522
10.158201498751042
14.40466278101582
25.5
15.008291873963516
23.358270989193684
13.856427378964941
14.654454621149043
19.633943427620633
17.235636969192342
12.614870509607352
27.348295926849545
14.929107589658049
23.603002502085072
20.083333333333336
11.416666666666668
14.654454621149043
14.867109634551493
15.929941618015013
16.75
14.774624373956595
13.833333333333334
16.736053288925895
11.99000832639467
10.43046357615894
16.180150125104255
10.434056761268781
9.437086092715232
23.269391159299417
11.341059602649008
16.957605985037404
6.827643630308076
51.20732722731058
16.791979949874687
18.438538205980063
17.40216486261449
9.908409658617817
15.250000000000002
20.600500417014178
14.487926727726895
18.984179850124896
14.916666666666668
11.740216486261449
17.779632721202002
19.666666666666668
41.479634247714046
20.482930890924234
19.66804979253112
12.406328059950042
68.2235195996664
17.180984153461218
13.990066225165565
15.627597672485452
19.516263552960798
18.90091590341382
17.152373022481267
11.740216486261449
12.323064113238969
16.486261448792675
21.64862614487927
17.221297836938437
22.148209825145713
9.075770191507079
21.333333333333336
19.833333333333332
12.251655629139073
19.186046511627904
15.903413821815155
19.083333333333332
21.619365609348915
31.80682764363031
20.732722731057454
20.517097581317767
21.583333333333332
12.489592006661114
27.408637873754145
24.667774086378735
20.01661129568106
13.57615894039735
22.39800166527894
22.314737718567862
14.929107589658049
20.815986677768525
21.637426900584792
29.97502081598668
12.916666666666668
18.703241895261847
13.050706566916045
12.760633861551293
13.881961762261014
13.621262458471756
17.568692756036633
31.218697829716195
16.9449081803005
24.937447873227693
18.015012510425354
12.822647793505412
16.19601328903654
18.770764119601324
14.786967418546366
8.409658617818486
15.21197007481297
10.5
15.333333333333336
15.67973311092577
16.23646960865945
18.136439267886857
21.724709784411278
15.078707539353772
12.083333333333334
12.063227953410983
18.984179850124896
20.1163757273483
11.490424646128227
14.035087719298248
13.881961762261014
17.206982543640898
12.614870509607352
9.286898839137645
14.583333333333334
16.916666666666668
14.929107589658049
14.000000000000004
29.5
15.461346633416458
11.166666666666666
15.033222591362124
19.416666666666668
16.583333333333332
15.275459098497498
9.25
23.255813953488367
16.680567139282736
10.927152317880795
11.323896752706078
20.517097581317767
9.492089925062448
10.75
10.657785179017486
16.902581182348044
14.583333333333334
31.77648040033361
12.57285595337219
10.000000000000002
10.000000000000002
15.250000000000002
12.136325852036576
16.180150125104255
21.535893155258766
13.094245204336948
21.351125938281903
15.92039800995025
9.833333333333334
9.850993377483443
9.841534612176813
15.583333333333334
11.666666666666666
20.982514571190677
13.560732113144757
21.297836938435942
23.41666666666667
21.0
10.990840965861782
17.955112219451372
10.990840965861782
24.396336386344714
19.76647206005004
15.986677768526228
16.319733555370526
15.671641791044776
16.763969974979148
18.90091590341382
18.438538205980063
13.072439633638636
18.023255813953487
12.707641196013286
18.682235195996665
6.7443796835970025
21.75
15.237302248126563
13.632585203657522
13.824503311258278
13.704318936877073
20.04991680532446
28.642797668609493
11.602671118530887
14.817880794701987
22.68557130942452
10.42535446205171
27.250000000000004
20.66666666666667
13.526970954356845
16.736053288925895
20.59800664451827
13.594662218515428
10.049833887043189
14.238134887593672
25.249169435215943
18.318068276436303
12.531328320802004
22.81432139883431
12.323064113238969
12.718204488778055
17.1238570241064
14.87946799667498
13.155703580349709
12.582781456953644
15.070774354704414
15.250000000000002
19.253112033195023
13.893510815307819
12.739383846794338
12.209302325581392
14.368770764119597
14.691151919866446
11.99000832639467
10.333333333333336
11.471321695760599
18.181818181818183
17.77408637873754
26.683291770573568
22.120200333889816
17.607973421926907
11.009174311926605
13.072439633638636
14.440734557595993
18.984179850124896
17.097581317764806
13.072439633638636
10.250000000000002
10.916666666666668
20.25
22.647793505412157
13.072439633638636
15.67973311092577
25.35446205170976
9.136212624584715
15.850622406639005
10.916666666666668
22.666666666666668
34.528773978315265
16.16915422885572
27.0
9.658617818484597
11.573688592839302
16.527545909849753
15.833333333333334
13.988343047460454
17.970049916805323
12.92743953294412
19.150707743547045
19.900083263946712
14.796342477140483
23.185988323603006
19.833333333333332
27.93017456359103
19.29824561403509
13.738551207327227
14.106844741235395
15.295095594347467
22.75
23.750000000000004
14.000000000000004
27.136929460580916
56.21351125938282
16.847372810675566
18.250000000000004
25.18765638031693
21.73189009159034
13.155703580349709
17.5103734439834
24.166666666666668
12.189054726368159
12.989175686927561
17.02838063439065
13.250000000000002
13.572023313905078
15.487094088259783
13.905079100749374
10.407993338884262
22.833333333333336
15.275459098497498
20.881863560732114
17.735220649458785
18.159203980099505
11.13881961762261
19.333333333333336
15.653621981681932
20.815986677768525
11.886949293433085
17.40216486261449
23.548922056384743
29.45091514143095
19.166666666666668
23.67109634551495
11.407160699417155
14.036544850498338
19.816819317235634
25.7689110556941
18.234804329725232
16.666666666666664
22.02826267664173
12.271973466003317
64.6076794657763
10.963455149501659
23.211314475873547
13.488759367194005
20.28380634390651
9.666666666666668
25.06244796003331
8.492922564529557
23.730224812656125
25.645295587010825
23.53923205342237
18.401332223147378
13.572023313905078
24.875207986688856
11.407160699417155
26.677713338856673
16.666666666666668
18.48459616985845
26.250000000000004
14.713216957605985
16.375727348295925
10.75
14.796342477140483
19.416666666666668
10.324729392173191
10.074937552039968
29.190992493744787
22.768974145120932
24.0
30.224812656119898
31.693077564637196
20.982514571190677
14.356846473029046
11.740216486261449
34.637801831806826
17.705735660847882
13.488759367194005
15.850622406639005
18.5
14.820982514571192
18.90091590341382
25.374376039933445
16.97019867549669
11.148086522462563
16.819317235636973
25.29215358931553
15.237302248126563
14.80865224625624
22.500000000000004
12.437395659432386
17.358803986710964
12.656119900083265
15.5
12.26021684737281
16.026711185308848
20.916666666666668
18.90091590341382
17.985012489592005
16.126350789692438
23.504983388704314
11.157368859283931
8.159866777685263
11.490424646128227
21.56536219816819
11.554447215295097
21.945137157107233
10.166666666666668
14.929107589658049
19.29824561403509
13.372093023255813
27.212020033388978
10.548172757475081
20.899250624479603
25.228975853455456
19.25
13.272120200333891
11.426188490408675
16.290726817042607
18.916666666666668
18.280467445742907
7.577019150707745
19.217970049916808
21.26772310258549
13.072439633638636
19.684385382059798
13.57615894039735
20.497925311203318
18.469217970049915
15.903413821815155
18.083333333333336
13.083333333333334
17.66169154228856
13.655287260616152
15.045719035743975
21.529509559434743
17.75
15.008291873963516
28.15371762740184
17.735220649458785
20.982514571190677
21.368948247078468
20.433694745621352
11.833333333333334
16.333333333333332
15.653621981681932
13.333333333333336
11.87707641196013
9.023178807947021
21.13144758735441
22.68557130942452
17.445742904841406
33.72093023255813
20.784641068447414
13.549459684123024
13.333333333333336
15.083333333333334
18.80199667221298
13.963210702341135
18.37073981712386
11.823480432972522
12.239800166527893
12.624584717607972
11.175496688741722
16.63907284768212
21.017514595496248
17.901748542880934
We add these values to the geodataframe:
gdf_points['LAI'] = area_foliar_list
gdf_points['LAI_percent'] = percentual_list
We will use the mean and standard deviation to define the leaf area size classes:
mean_value = gdf_points['LAI'].mean()
std_value = gdf_points['LAI'].std()
mean_list = []
for i,row in gdf_points.iterrows():
value = row['LAI']
if value < (mean_value-std_value) :
mean_list.append(0)
elif (value >= (mean_value-std_value)) and (value < mean_value):
mean_list.append(1)
elif (value >= mean_value) and (value < (mean_value+std_value)):
mean_list.append(2)
elif value >= (mean_value+std_value):
mean_list.append(3)
gdf_points['Classified'] = mean_list
gdf_points.geometry = gdf_points.geometry.centroid
We can now save the geographic data frame to a shapefile and download it.
gdf_points
| x | y | Lote | geometry | LAI | LAI_percent | Classified | |
|---|---|---|---|---|---|---|---|
| 0 | 218334.615946 | 2.658457e+06 | Lote_G | POINT (218334.616 2658456.883) | 0.006686 | 21.315570 | 2 |
| 1 | 218334.804559 | 2.658457e+06 | Lote_G | POINT (218334.805 2658456.881) | 0.006242 | 19.883527 | 2 |
| 2 | 218335.021719 | 2.658457e+06 | Lote_G | POINT (218335.022 2658456.859) | 0.007573 | 24.227235 | 2 |
| 3 | 218334.396841 | 2.658457e+06 | Lote_G | POINT (218334.397 2658456.865) | 0.006973 | 22.250000 | 2 |
| 4 | 218335.221933 | 2.658457e+06 | Lote_G | POINT (218335.222 2658456.846) | 0.006999 | 22.389307 | 2 |
| ... | ... | ... | ... | ... | ... | ... | ... |
| 61626 | 218331.132522 | 2.658433e+06 | Lote_F | POINT (218331.133 2658432.674) | 0.003970 | 12.624585 | 1 |
| 61627 | 218330.313555 | 2.658433e+06 | Lote_F | POINT (218330.314 2658432.676) | 0.003526 | 11.175497 | 1 |
| 61628 | 218330.942742 | 2.658433e+06 | Lote_F | POINT (218330.943 2658432.676) | 0.005249 | 16.639073 | 1 |
| 61629 | 218331.574971 | 2.658433e+06 | Lote_F | POINT (218331.575 2658432.641) | 0.006581 | 21.017515 | 2 |
| 61630 | 218332.252271 | 2.658433e+06 | Lote_F | POINT (218332.252 2658432.668) | 0.005615 | 17.901749 | 1 |
61631 rows × 7 columns
path_shp = '/content/shapefile'
if not os.path.isdir(path_shp):
os.mkdir(path_shp)
gdf_points.to_file("/content/shapefile/Plants.shp")
<ipython-input-32-c5691b9e9d1d>:1: UserWarning: Column names longer than 10 characters will be truncated when saved to ESRI Shapefile.
gdf_points.to_file("/content/shapefile/Plants.shp")
WARNING:fiona._env:Normalized/laundered field name: 'LAI_percent' to 'LAI_percen'
!zip -r /content/shapefile.zip /content/shapefile
from google.colab import files
files.download("/content/shapefile.zip")
adding: content/shapefile/ (stored 0%) adding: content/shapefile/Plants.shx (deflated 71%) adding: content/shapefile/Plants.dbf (deflated 82%) adding: content/shapefile/Plants.cpg (stored 0%) adding: content/shapefile/Plants.prj (deflated 36%) adding: content/shapefile/Plants.shp (deflated 51%)
Field Analysis¶
Now let's perform an analysis by field. Let's find the number of plants per field. To do this, we group the number of plants in each field.
df_count = gdf_points.groupby('Lote').count()
df_count
| x | y | geometry | LAI | LAI_percent | Classified | |
|---|---|---|---|---|---|---|
| Lote | ||||||
| Lote_A | 5305 | 5305 | 5305 | 5305 | 5305 | 5305 |
| Lote_B | 8516 | 8516 | 8516 | 8516 | 8516 | 8516 |
| Lote_C | 8410 | 8410 | 8410 | 8410 | 8410 | 8410 |
| Lote_D | 7232 | 7232 | 7232 | 7232 | 7232 | 7232 |
| Lote_E | 8332 | 8332 | 8332 | 8332 | 8332 | 8332 |
| Lote_F | 9221 | 9221 | 9221 | 9221 | 9221 | 9221 |
| Lote_G | 7698 | 7698 | 7698 | 7698 | 7698 | 7698 |
| Lote_H | 6917 | 6917 | 6917 | 6917 | 6917 | 6917 |
We will also get the leaf area per field:
gdf_points_to_sum = gdf_points.drop(columns='geometry')
df_sum = gdf_points_to_sum.groupby('Lote').sum()
df_sum['LAI']
| LAI | |
|---|---|
| Lote | |
| Lote_A | 11.807998 |
| Lote_B | 48.828739 |
| Lote_C | 54.199579 |
| Lote_D | 42.880069 |
| Lote_E | 59.483193 |
| Lote_F | 72.384408 |
| Lote_G | 50.486857 |
| Lote_H | 33.403915 |
df_count.reset_index(inplace=True)
df_sum.reset_index(inplace=True)
gdf['Lote'] = gdf['Lote'].apply(lambda x: f"Lote_{x}")
Let's remove the columns that won't be needed.
df_count.drop(columns=['y','geometry','LAI','LAI_percent','Classified'], inplace=True)
df_sum.drop(columns=['y','x','LAI_percent','Classified'], inplace=True)
df_sum
| Lote | LAI | |
|---|---|---|
| 0 | Lote_A | 11.807998 |
| 1 | Lote_B | 48.828739 |
| 2 | Lote_C | 54.199579 |
| 3 | Lote_D | 42.880069 |
| 4 | Lote_E | 59.483193 |
| 5 | Lote_F | 72.384408 |
| 6 | Lote_G | 50.486857 |
| 7 | Lote_H | 33.403915 |
df_count
| Lote | x | |
|---|---|---|
| 0 | Lote_A | 5305 |
| 1 | Lote_B | 8516 |
| 2 | Lote_C | 8410 |
| 3 | Lote_D | 7232 |
| 4 | Lote_E | 8332 |
| 5 | Lote_F | 9221 |
| 6 | Lote_G | 7698 |
| 7 | Lote_H | 6917 |
And let's apply a join to the count data frame and the sum of sheet area data frame:
gdf = gdf.merge(df_count, how='inner', on='Lote' )
gdf = gdf.merge(df_sum, how='inner', on='Lote' )
gdf
| id | Lote | geometry | x | LAI | |
|---|---|---|---|---|---|
| 0 | 1 | Lote_A | POLYGON ((218259.378 2658459.971, 218259.885 2... | 5305 | 11.807998 |
| 1 | 2 | Lote_B | POLYGON ((218282.899 2658434.262, 218258.453 2... | 8516 | 48.828739 |
| 2 | 3 | Lote_C | POLYGON ((218284.095 2658458.842, 218285.952 2... | 8410 | 54.199579 |
| 3 | 4 | Lote_D | POLYGON ((218284.113 2658458.901, 218284.165 2... | 7232 | 42.880069 |
| 4 | 5 | Lote_E | POLYGON ((218309.773 2658482.730, 218317.645 2... | 8332 | 59.483193 |
| 5 | 6 | Lote_F | POLYGON ((218308.771 2658457.897, 218310.687 2... | 9221 | 72.384408 |
| 6 | 7 | Lote_G | POLYGON ((218333.718 2658457.091, 218335.593 2... | 7698 | 50.486857 |
| 7 | 8 | Lote_H | POLYGON ((218333.695 2658457.146, 218333.809 2... | 6917 | 33.403915 |
gdf.rename(columns={'x': 'Qtd_plantas'}, inplace=True)
This way we have the DataFrame ready:
gdf
| id | Lote | geometry | Qtd_plantas | LAI | |
|---|---|---|---|---|---|
| 0 | 1 | Lote_A | POLYGON ((218259.378 2658459.971, 218259.885 2... | 5305 | 11.807998 |
| 1 | 2 | Lote_B | POLYGON ((218282.899 2658434.262, 218258.453 2... | 8516 | 48.828739 |
| 2 | 3 | Lote_C | POLYGON ((218284.095 2658458.842, 218285.952 2... | 8410 | 54.199579 |
| 3 | 4 | Lote_D | POLYGON ((218284.113 2658458.901, 218284.165 2... | 7232 | 42.880069 |
| 4 | 5 | Lote_E | POLYGON ((218309.773 2658482.730, 218317.645 2... | 8332 | 59.483193 |
| 5 | 6 | Lote_F | POLYGON ((218308.771 2658457.897, 218310.687 2... | 9221 | 72.384408 |
| 6 | 7 | Lote_G | POLYGON ((218333.718 2658457.091, 218335.593 2... | 7698 | 50.486857 |
| 7 | 8 | Lote_H | POLYGON ((218333.695 2658457.146, 218333.809 2... | 6917 | 33.403915 |
We can save it in a json file:
gdf.to_file("/content/Lotes_infos.json",driver="GeoJSON")
And draw the polygons using the number of plants as a property:
fig, ax = plt.subplots(figsize=(16,4))
gdf.plot("Qtd_plantas",legend=True, cmap='inferno_r',ax = ax)
ax.title.set_text('Quantidade de Plantas Estimada')
Let's also plot the estimated total leaf area:
fig, ax = plt.subplots(figsize=(16,4))
gdf.plot("LAI",legend=True, cmap='Greens',ax = ax)
ax.title.set_text('Área Foliar Total Estimada')