Md Wasi Ul Kabir commited on
Commit
8bb21fb
·
0 Parent(s):

Initial commit

Browse files
.dockerignore ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ .venv
2
+ __pycache__
3
+ *.pyc
4
+ .git
5
+ .gitignore
6
+ artifacts_inference/*.joblib
7
+ mlruns/
8
+ .venv/
9
+ Old/Data/machinelizard_v7.xlsx
.gitignore ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Python-generated files
2
+ __pycache__/
3
+ *.py[oc]
4
+ build/
5
+ dist/
6
+ wheels/
7
+ *.egg-info
8
+
9
+ # Virtual environments
10
+ .venv
11
+ Old
12
+ mlrunsartifacts_inference/*.joblib
13
+ *.joblib
14
+ .venv/
15
+ Old/
16
+ mlruns/
17
+ Data/machinelizard_v7.xlsx
.python-version ADDED
@@ -0,0 +1 @@
 
 
1
+ 3.9
Data/morph_dataset.csv ADDED
The diff for this file is too large to render. See raw diff
 
Data/performance_dataset.csv ADDED
@@ -0,0 +1,2172 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ sprint,endurance,bite,distance_capacity,jump_distance,jump_vel,jump_accel,jump_power,angle,ecomorph
2
+ -1,215.83,-1,-1,-1,-1,-1,-1,-1,1
3
+ -1,347.29,-1,-1,-1,-1,-1,-1,-1,1
4
+ -1,383.89,-1,-1,-1,-1,-1,-1,-1,1
5
+ -1,293.37,-1,-1,-1,-1,-1,-1,-1,1
6
+ -1,438.52,-1,-1,-1,-1,-1,-1,-1,1
7
+ -1,260.91,-1,-1,-1,-1,-1,-1,-1,1
8
+ -1,296.84,-1,-1,-1,-1,-1,-1,-1,1
9
+ -1,125.25,-1,-1,-1,-1,-1,-1,-1,1
10
+ -1,173.52,-1,-1,-1,-1,-1,-1,-1,1
11
+ -1,282.03,-1,-1,-1,-1,-1,-1,-1,1
12
+ -1,162,-1,-1,-1,-1,-1,-1,-1,1
13
+ -1,255.57,-1,-1,-1,-1,-1,-1,-1,1
14
+ -1,263.98,-1,-1,-1,-1,-1,-1,-1,1
15
+ -1,423.61,-1,-1,-1,-1,-1,-1,-1,1
16
+ -1,210.1,-1,-1,-1,-1,-1,-1,-1,1
17
+ -1,164.37,-1,-1,-1,-1,-1,-1,-1,1
18
+ -1,117.09,-1,-1,-1,-1,-1,-1,-1,1
19
+ -1,274.93,-1,-1,-1,-1,-1,-1,-1,1
20
+ -1,322.93,-1,-1,-1,-1,-1,-1,-1,1
21
+ -1,326.7,-1,-1,-1,-1,-1,-1,-1,1
22
+ -1,387.97,-1,-1,-1,-1,-1,-1,-1,1
23
+ -1,304.4,-1,-1,-1,-1,-1,-1,-1,1
24
+ -1,108.92,-1,-1,-1,-1,-1,-1,-1,1
25
+ -1,299.77,-1,-1,-1,-1,-1,-1,-1,1
26
+ -1,122.21,-1,-1,-1,-1,-1,-1,-1,1
27
+ -1,366.5,-1,-1,-1,-1,-1,-1,-1,1
28
+ -1,404.73,-1,-1,-1,-1,-1,-1,-1,1
29
+ 0.346,-1,5.55,-1,-1,-1,-1,-1,-1,1
30
+ 0.374,-1,6.99,-1,-1,-1,-1,-1,-1,1
31
+ 0.258,-1,5.96,-1,-1,-1,-1,-1,-1,1
32
+ 0.277,-1,6.43,-1,-1,-1,-1,-1,-1,1
33
+ 0.21,-1,5.11,-1,-1,-1,-1,-1,-1,1
34
+ 0.243,-1,6.14,-1,-1,-1,-1,-1,-1,1
35
+ 0.244,-1,5.94,-1,-1,-1,-1,-1,-1,1
36
+ 0.364,-1,7.06,-1,-1,-1,-1,-1,-1,1
37
+ 0.278,-1,6.75,-1,-1,-1,-1,-1,-1,1
38
+ 0.237,-1,5.74,-1,-1,-1,-1,-1,-1,1
39
+ 0.413,-1,4.48,-1,-1,-1,-1,-1,-1,1
40
+ 0.432,-1,4.31,-1,-1,-1,-1,-1,-1,1
41
+ 0.262,-1,4.91,-1,-1,-1,-1,-1,-1,1
42
+ 0.319,-1,6,-1,-1,-1,-1,-1,-1,1
43
+ 0.239,-1,5.36,-1,-1,-1,-1,-1,-1,1
44
+ 0.334,-1,5.9,-1,-1,-1,-1,-1,-1,1
45
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,1
46
+ 0.318,-1,5.9,-1,-1,-1,-1,-1,-1,1
47
+ 0.351,-1,7.36,-1,-1,-1,-1,-1,-1,1
48
+ 0.426,-1,4.45,-1,-1,-1,-1,-1,-1,1
49
+ 0.244,-1,5.25,-1,-1,-1,-1,-1,-1,1
50
+ 0.303,-1,5.9,-1,-1,-1,-1,-1,-1,1
51
+ 0.238,-1,3.76,-1,-1,-1,-1,-1,-1,1
52
+ 0.274,-1,5.85,-1,-1,-1,-1,-1,-1,1
53
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,1
54
+ 0.293,-1,5.83,-1,-1,-1,-1,-1,-1,1
55
+ 0.305,-1,5.86,-1,-1,-1,-1,-1,-1,1
56
+ 0.263,-1,4.69,-1,-1,-1,-1,-1,-1,1
57
+ 0.287,-1,4.23,-1,-1,-1,-1,-1,-1,1
58
+ 0.27,-1,8.36,-1,-1,-1,-1,-1,-1,1
59
+ 0.304,-1,5.61,-1,-1,-1,-1,-1,-1,1
60
+ 0.234,-1,2.58,-1,-1,-1,-1,-1,-1,1
61
+ 0.294,-1,4.45,-1,-1,-1,-1,-1,-1,1
62
+ 0.287,-1,4.85,-1,-1,-1,-1,-1,-1,1
63
+ 0.25,-1,7.14,-1,-1,-1,-1,-1,-1,1
64
+ 0.244,-1,6.4,-1,-1,-1,-1,-1,-1,1
65
+ 0.21,-1,6.4,-1,-1,-1,-1,-1,-1,1
66
+ 0.256,-1,4.39,-1,-1,-1,-1,-1,-1,1
67
+ 0.339,-1,6.01,-1,-1,-1,-1,-1,-1,1
68
+ 0.266,-1,5.89,-1,-1,-1,-1,-1,-1,1
69
+ 0.507,-1,4.54,-1,-1,-1,-1,-1,-1,1
70
+ 0.25,-1,5.56,-1,-1,-1,-1,-1,-1,1
71
+ 0.309,-1,5.75,-1,-1,-1,-1,-1,-1,1
72
+ 0.262,-1,5.25,-1,-1,-1,-1,-1,-1,1
73
+ 0.458,-1,3.81,-1,-1,-1,-1,-1,-1,1
74
+ 0.276,-1,4.81,-1,-1,-1,-1,-1,-1,1
75
+ 0.225,-1,4.95,-1,-1,-1,-1,-1,-1,1
76
+ 0.326,-1,3.9,-1,-1,-1,-1,-1,-1,1
77
+ 0.335,-1,3.46,-1,-1,-1,-1,-1,-1,1
78
+ 0.319,-1,3.35,-1,-1,-1,-1,-1,-1,1
79
+ 0.279,-1,3.76,-1,-1,-1,-1,-1,-1,1
80
+ 0.261,-1,5.9,-1,-1,-1,-1,-1,-1,1
81
+ 0.225,-1,3.96,-1,-1,-1,-1,-1,-1,1
82
+ 0.273,-1,7,-1,-1,-1,-1,-1,-1,1
83
+ 0.352,-1,6.84,-1,-1,-1,-1,-1,-1,1
84
+ 0.311,-1,4.55,-1,-1,-1,-1,-1,-1,1
85
+ 0.272,-1,4.88,-1,-1,-1,-1,-1,-1,1
86
+ 0.225,-1,5.35,-1,-1,-1,-1,-1,-1,1
87
+ 0.196,-1,3.25,-1,-1,-1,-1,-1,-1,1
88
+ 0.294,-1,4.99,-1,-1,-1,-1,-1,-1,1
89
+ 0.378,-1,5.83,-1,-1,-1,-1,-1,-1,1
90
+ 0.316,-1,4.59,-1,-1,-1,-1,-1,-1,1
91
+ 0.278,-1,8.68,-1,-1,-1,-1,-1,-1,1
92
+ 0.309,-1,4.79,-1,-1,-1,-1,-1,-1,1
93
+ 0.311,-1,6.65,-1,-1,-1,-1,-1,-1,1
94
+ 0.413,-1,7.38,-1,-1,-1,-1,-1,-1,1
95
+ 0.259,-1,3.69,-1,-1,-1,-1,-1,-1,1
96
+ 0.157,-1,5.64,-1,-1,-1,-1,-1,-1,1
97
+ 0.296,-1,3.56,-1,-1,-1,-1,-1,-1,1
98
+ 0.263,-1,5.63,-1,-1,-1,-1,-1,-1,1
99
+ 1.78571365,-1,14.48057,22,-1,-1,-1,-1,-1,-1
100
+ 2.08333328,-1,15.6078,12.8,-1,-1,-1,-1,-1,-1
101
+ 1.92307693,-1,24.5456,15,-1,-1,-1,-1,-1,-1
102
+ 1.92307693,-1,23.6785,15.4,-1,-1,-1,-1,-1,-1
103
+ 1.25000046,-1,24.6123,19.6,-1,-1,-1,-1,-1,-1
104
+ 1.92307693,-1,24.7457,25.8,-1,-1,-1,-1,-1,-1
105
+ 1.78571442,-1,24.4122,18.2,-1,-1,-1,-1,-1,-1
106
+ 1.47058762,-1,22.5446,16.6,-1,-1,-1,-1,-1,-1
107
+ 1.56250031,-1,26.3465,18.2,-1,-1,-1,-1,-1,-1
108
+ 2.08333435,-1,27.2803,26.8,-1,-1,-1,-1,-1,-1
109
+ 2.08333328,-1,26.68,16,-1,-1,-1,-1,-1,-1
110
+ 1.66667084,-1,30.2151,23.4,-1,-1,-1,-1,-1,-1
111
+ 1.92307693,-1,29.5481,17.2,-1,-1,-1,-1,-1,-1
112
+ 2.77777679,-1,31.4157,11,-1,-1,-1,-1,-1,-1
113
+ 1.92307693,-1,28.7477,14.6,-1,-1,-1,-1,-1,-1
114
+ 2.08333328,-1,28.9478,23,-1,-1,-1,-1,-1,-1
115
+ 1.78571365,-1,18.6093,11.8,-1,-1,-1,-1,-1,-1
116
+ 1.78571442,-1,22.9448,18.4,-1,-1,-1,-1,-1,-1
117
+ 1.92307693,-1,24.4122,15.4,-1,-1,-1,-1,-1,-1
118
+ 1.78571442,-1,25.0792,13.6,-1,-1,-1,-1,-1,-1
119
+ 2.27272705,-1,24.679,15.2,-1,-1,-1,-1,-1,-1
120
+ 1.92307693,-1,25.6128,20.4,-1,-1,-1,-1,-1,-1
121
+ 2.08333328,-1,15.477,-1,-1,-1,-1,-1,-1,-1
122
+ 3.12500061,-1,22.713,-1,-1,-1,-1,-1,-1,-1
123
+ 2.27272949,-1,32.361,-1,-1,-1,-1,-1,-1,-1
124
+ 1.92307693,-1,30.083,-1,-1,-1,-1,-1,-1,-1
125
+ 2.08333435,-1,37.52,-1,-1,-1,-1,-1,-1,-1
126
+ 2.27272705,-1,39.731,-1,-1,-1,-1,-1,-1,-1
127
+ 2.27272705,-1,31.423,-1,-1,-1,-1,-1,-1,-1
128
+ 2.49999985,-1,39.798,-1,-1,-1,-1,-1,-1,-1
129
+ 1.78571442,-1,11.323,-1,-1,-1,-1,-1,-1,-1
130
+ 2.08333328,-1,27.403,-1,-1,-1,-1,-1,-1,-1
131
+ 1.78571442,-1,30.016,-1,-1,-1,-1,-1,-1,-1
132
+ 1.00000015,-1,41.071,-1,-1,-1,-1,-1,-1,-1
133
+ 2.27272949,-1,-1,-1,-1,-1,-1,-1,-1,-1
134
+ 2.50000092,-1,18.009,14.8,-1,-1,-1,-1,-1,-1
135
+ 1.92307617,-1,27.2136,-1,-1,-1,-1,-1,-1,-1
136
+ 2.49999939,-1,43.6885,9.494,-1,-1,-1,-1,-1,-1
137
+ 2.49999939,-1,14.29381,13.162,-1,-1,-1,-1,-1,-1
138
+ 3.12499847,-1,10.57195,-1,-1,-1,-1,-1,-1,-1
139
+ 2.50000244,-1,-1,-1,-1,-1,-1,-1,-1,-1
140
+ 2.49999939,-1,22.6113,-1,-1,-1,-1,-1,-1,-1
141
+ 1.47058762,-1,18.4092,-1,-1,-1,-1,-1,-1,-1
142
+ 2.50000244,-1,-1,-1,-1,-1,-1,-1,-1,-1
143
+ 2.50000092,-1,9.338,-1,-1,-1,-1,-1,-1,-1
144
+ 2.27272705,-1,41.8876,-1,-1,-1,-1,-1,-1,-1
145
+ 2.27272949,-1,47.6905,-1,-1,-1,-1,-1,-1,-1
146
+ 2.50000244,-1,-1,-1,-1,-1,-1,-1,-1,-1
147
+ 0.52083279,-1,-1,-1,-1,-1,-1,-1,-1,-1
148
+ 4.16666656,-1,27.347,-1,-1,-1,-1,-1,-1,-1
149
+ 2.77777771,-1,22.2778,-1,-1,-1,-1,-1,-1,-1
150
+ 4.16666656,-1,25.8796,-1,-1,-1,-1,-1,-1,-1
151
+ 2.50000015,-1,27.8806,-1,-1,-1,-1,-1,-1,-1
152
+ 4.16666656,-1,23.5451,-1,-1,-1,-1,-1,-1,-1
153
+ 3.57142883,-1,21.344,-1,-1,-1,-1,-1,-1,-1
154
+ 2.77777771,-1,7.5371,-1,-1,-1,-1,-1,-1,-1
155
+ 3.57142853,-1,12.42621,-1,-1,-1,-1,-1,-1,-1
156
+ 2.77777863,-1,13.6735,-1,-1,-1,-1,-1,-1,-1
157
+ 3.12500061,-1,14.8741,-1,-1,-1,-1,-1,-1,-1
158
+ 3.57142883,-1,13.46673,-1,-1,-1,-1,-1,-1,-1
159
+ 2.77777863,-1,13.4067,-1,-1,-1,-1,-1,-1,-1
160
+ 2.77777679,-1,12.05936,-1,-1,-1,-1,-1,-1,-1
161
+ 2.77777863,-1,14.8741,-1,-1,-1,-1,-1,-1,-1
162
+ 2.50000015,-1,12.66633,-1,-1,-1,-1,-1,-1,-1
163
+ 2.50000092,-1,10.2051,-1,-1,-1,-1,-1,-1,-1
164
+ 1.92307526,-1,64.0987,23.162,-1,-1,-1,-1,-1,-1
165
+ 1.47058838,-1,17.8756,19.826,-1,-1,-1,-1,-1,-1
166
+ 1.66666687,-1,16.5416,15.826,-1,-1,-1,-1,-1,-1
167
+ 1.78571442,-1,26.6133,14.166,-1,-1,-1,-1,-1,-1
168
+ 1.25000046,-1,11.6725,14.83,-1,-1,-1,-1,-1,-1
169
+ 1.78571594,-1,18.009,20.664,-1,-1,-1,-1,-1,-1
170
+ 0.89285645,-1,16.5416,10.332,-1,-1,-1,-1,-1,-1
171
+ 1.47058853,-1,17.342,8.996,-1,-1,-1,-1,-1,-1
172
+ 1.78571442,-1,29.9483,8.664,-1,-1,-1,-1,-1,-1
173
+ 1.78571289,-1,9.6048,18.664,-1,-1,-1,-1,-1,-1
174
+ 3.57143188,-1,100.717,18.166,-1,-1,-1,-1,-1,-1
175
+ 2.49999649,-1,109.2546,11.494,-1,-1,-1,-1,-1,-1
176
+ 1.38888931,-1,33.0165,37.4,-1,-1,-1,-1,-1,-1
177
+ 1.78571442,-1,64.2321,29.6,-1,-1,-1,-1,-1,-1
178
+ -1,-1,27.9473,12.4,-1,-1,-1,-1,-1,-1
179
+ 1.92307526,-1,57.362,14.6,-1,-1,-1,-1,-1,-1
180
+ 1.92307693,-1,14.74737,17.8,-1,-1,-1,-1,-1,-1
181
+ 1.47058762,-1,-1,-1,-1,-1,-1,-1,-1,-1
182
+ 2.77777863,-1,-1,-1,-1,-1,-1,-1,-1,-1
183
+ 2.77778046,-1,-1,-1,-1,-1,-1,-1,-1,-1
184
+ 3.12500061,-1,-1,-1,-1,-1,-1,-1,-1,-1
185
+ 2.08333115,-1,-1,-1,-1,-1,-1,-1,-1,-1
186
+ 1.56250031,-1,-1,-1,-1,-1,-1,-1,-1,-1
187
+ 2.27272949,-1,-1,-1,-1,-1,-1,-1,-1,-1
188
+ 3.57143188,-1,-1,-1,-1,-1,-1,-1,-1,-1
189
+ 3.12500305,-1,-1,-1,-1,-1,-1,-1,-1,-1
190
+ 2.50000244,-1,-1,-1,-1,-1,-1,-1,-1,-1
191
+ 2.50000244,-1,-1,-1,-1,-1,-1,-1,-1,-1
192
+ 2.77777679,-1,-1,-1,-1,-1,-1,-1,-1,-1
193
+ 3.57142578,-1,-1,-1,-1,-1,-1,-1,-1,-1
194
+ 0.71428589,-1,-1,-1,-1,-1,-1,-1,-1,-1
195
+ 3.57142578,-1,-1,-1,-1,-1,-1,-1,-1,-1
196
+ 2.49999939,-1,-1,-1,-1,-1,-1,-1,-1,-1
197
+ 4.99999878,-1,-1,-1,-1,-1,-1,-1,-1,-1
198
+ 1.92307693,-1,-1,-1,-1,-1,-1,-1,-1,-1
199
+ 2.27272949,-1,-1,-1,-1,-1,-1,-1,-1,-1
200
+ 1.92307877,-1,-1,-1,-1,-1,-1,-1,-1,-1
201
+ 0.25,-1,2,-1,-1,-1,-1,-1,-1,2
202
+ 0.4,-1,1.76,-1,-1,-1,-1,-1,-1,2
203
+ 0.5,-1,2.14,-1,-1,-1,-1,-1,-1,2
204
+ 0.3,-1,1.6,-1,-1,-1,-1,-1,-1,2
205
+ 0.5,-1,1.76,-1,-1,-1,-1,-1,-1,2
206
+ 0.5,-1,1.08,-1,-1,-1,-1,-1,-1,2
207
+ 0.5,-1,2.31,-1,-1,-1,-1,-1,-1,2
208
+ 0.4,-1,3.76,-1,-1,-1,-1,-1,-1,2
209
+ 0.2,-1,1.83,-1,-1,-1,-1,-1,-1,2
210
+ 0.2,-1,4.58,-1,-1,-1,-1,-1,-1,2
211
+ 0.5,-1,3.03,-1,-1,-1,-1,-1,-1,2
212
+ 0.2,-1,1.76,-1,-1,-1,-1,-1,-1,2
213
+ 0.4,-1,1.76,-1,-1,-1,-1,-1,-1,2
214
+ 0.25,-1,1.81,-1,-1,-1,-1,-1,-1,2
215
+ 0.5,-1,4.88,-1,-1,-1,-1,-1,-1,2
216
+ 0.3,-1,4.58,-1,-1,-1,-1,-1,-1,2
217
+ 0.2,-1,5.29,-1,-1,-1,-1,-1,-1,2
218
+ 0.4,-1,2.6,-1,-1,-1,-1,-1,-1,2
219
+ 0.5,-1,2.01,-1,-1,-1,-1,-1,-1,2
220
+ 0.5,-1,4.59,-1,-1,-1,-1,-1,-1,2
221
+ 0.25,-1,2.14,-1,-1,-1,-1,-1,-1,2
222
+ 0.25,-1,2.56,-1,-1,-1,-1,-1,-1,2
223
+ 0.2,-1,4.7,-1,-1,-1,-1,-1,-1,2
224
+ 0.6,-1,4.49,-1,-1,-1,-1,-1,-1,2
225
+ 0.3,-1,2.09,-1,-1,-1,-1,-1,-1,2
226
+ 0.25,-1,1.56,-1,-1,-1,-1,-1,-1,2
227
+ 0.4,-1,1.43,-1,-1,-1,-1,-1,-1,2
228
+ 0.3,-1,3.2,-1,-1,-1,-1,-1,-1,2
229
+ 0.1,-1,1.46,-1,-1,-1,-1,-1,-1,2
230
+ 0.125,-1,2,-1,-1,-1,-1,-1,-1,2
231
+ 0.25,-1,3.44,-1,-1,-1,-1,-1,-1,2
232
+ 0.35,-1,2.15,-1,-1,-1,-1,-1,-1,2
233
+ 0.25,-1,1.53,-1,-1,-1,-1,-1,-1,2
234
+ 0.3,-1,1.3,-1,-1,-1,-1,-1,-1,2
235
+ 0.166666667,-1,0.96,-1,-1,-1,-1,-1,-1,2
236
+ 0.25,-1,1.93,-1,-1,-1,-1,-1,-1,2
237
+ 0.5,-1,1.75,-1,-1,-1,-1,-1,-1,2
238
+ 0.2,-1,1.5,-1,-1,-1,-1,-1,-1,2
239
+ 0.25,-1,1.03,-1,-1,-1,-1,-1,-1,2
240
+ 0.2,-1,1.44,-1,-1,-1,-1,-1,-1,2
241
+ 0.25,-1,1.29,-1,-1,-1,-1,-1,-1,2
242
+ 0.3,-1,1.55,-1,-1,-1,-1,-1,-1,2
243
+ 0.2,-1,1.01,-1,-1,-1,-1,-1,-1,2
244
+ 0.3,-1,1.5,-1,-1,-1,-1,-1,-1,2
245
+ 0.1,-1,5.33,-1,-1,-1,-1,-1,-1,2
246
+ 0.3,-1,2.1,-1,-1,-1,-1,-1,-1,2
247
+ 0.35,-1,1.96,-1,-1,-1,-1,-1,-1,2
248
+ 0.35,-1,1.75,-1,-1,-1,-1,-1,-1,2
249
+ 0.3,-1,1.53,-1,-1,-1,-1,-1,-1,2
250
+ 0.3,-1,1.58,-1,-1,-1,-1,-1,-1,2
251
+ 0.4,-1,2.36,-1,-1,-1,-1,-1,-1,2
252
+ 0.3,-1,1.75,-1,-1,-1,-1,-1,-1,2
253
+ 0.4,-1,1.83,-1,-1,-1,-1,-1,-1,2
254
+ 0.3,-1,1.86,-1,-1,-1,-1,-1,-1,2
255
+ 0.3,-1,1.48,-1,-1,-1,-1,-1,-1,2
256
+ 0.4,-1,1.29,-1,-1,-1,-1,-1,-1,2
257
+ 0.35,-1,2.01,-1,-1,-1,-1,-1,-1,2
258
+ 0.4,-1,1.91,-1,-1,-1,-1,-1,-1,2
259
+ 0.3,-1,4.08,-1,-1,-1,-1,-1,-1,2
260
+ 0.4,-1,1.34,-1,-1,-1,-1,-1,-1,2
261
+ 0.4,-1,1.29,-1,-1,-1,-1,-1,-1,2
262
+ 0.4,-1,1.56,-1,-1,-1,-1,-1,-1,2
263
+ 0.6,-1,2.49,-1,-1,-1,-1,-1,-1,2
264
+ 0.5,-1,2.51,-1,-1,-1,-1,-1,-1,2
265
+ 0.3,-1,1.06,-1,-1,-1,-1,-1,-1,1
266
+ 0.3,-1,0.88,-1,-1,-1,-1,-1,-1,1
267
+ 0.3,-1,0.7,-1,-1,-1,-1,-1,-1,1
268
+ 0.25,-1,0.71,-1,-1,-1,-1,-1,-1,1
269
+ 0.25,-1,2.59,-1,-1,-1,-1,-1,-1,1
270
+ 0.3,-1,1.89,-1,-1,-1,-1,-1,-1,1
271
+ 0.6,-1,1.09,-1,-1,-1,-1,-1,-1,1
272
+ 0.3,-1,2.06,-1,-1,-1,-1,-1,-1,1
273
+ 0.6,-1,0.61,-1,-1,-1,-1,-1,-1,1
274
+ 0.25,-1,1.15,-1,-1,-1,-1,-1,-1,1
275
+ 0.4,-1,1.73,-1,-1,-1,-1,-1,-1,1
276
+ 0.25,-1,0.9,-1,-1,-1,-1,-1,-1,1
277
+ 0.166666667,-1,3.25,-1,-1,-1,-1,-1,-1,1
278
+ 0.3,-1,0.88,-1,-1,-1,-1,-1,-1,1
279
+ 0.25,-1,2.37,-1,-1,-1,-1,-1,-1,1
280
+ 0.3,-1,1.04,-1,-1,-1,-1,-1,-1,1
281
+ 0.3,-1,1.03,-1,-1,-1,-1,-1,-1,1
282
+ 0.25,-1,1.36,-1,-1,-1,-1,-1,-1,1
283
+ 0.3,-1,0.6,-1,-1,-1,-1,-1,-1,1
284
+ 0.6,-1,0.89,-1,-1,-1,-1,-1,-1,1
285
+ 0.3,-1,2.76,-1,-1,-1,-1,-1,-1,1
286
+ 0.5,-1,0.71,-1,-1,-1,-1,-1,-1,1
287
+ 0.4,-1,0.86,-1,-1,-1,-1,-1,-1,1
288
+ 0.3,-1,0.93,-1,-1,-1,-1,-1,-1,1
289
+ 0.3,-1,0.69,-1,-1,-1,-1,-1,-1,1
290
+ 0.3,-1,0.59,-1,-1,-1,-1,-1,-1,1
291
+ 0.3,-1,0.83,-1,-1,-1,-1,-1,-1,1
292
+ 0.25,-1,0.93,-1,-1,-1,-1,-1,-1,1
293
+ 0.25,-1,1.44,-1,-1,-1,-1,-1,-1,1
294
+ 0.3,-1,1.01,-1,-1,-1,-1,-1,-1,1
295
+ 0.5,-1,1.94,-1,-1,-1,-1,-1,-1,1
296
+ 0.6,-1,0.81,-1,-1,-1,-1,-1,-1,1
297
+ 0.4,-1,0.75,-1,-1,-1,-1,-1,-1,1
298
+ 0.5,-1,0.7,-1,-1,-1,-1,-1,-1,1
299
+ 0.25,-1,1.38,-1,-1,-1,-1,-1,-1,1
300
+ 0.6,-1,1.05,-1,-1,-1,-1,-1,-1,1
301
+ 0.25,-1,1.14,-1,-1,-1,-1,-1,-1,1
302
+ 0.25,-1,2.88,-1,-1,-1,-1,-1,-1,1
303
+ 0.3,-1,1.28,-1,-1,-1,-1,-1,-1,1
304
+ 0.133333333,-1,2.88,-1,-1,-1,-1,-1,-1,1
305
+ 0.5,-1,2.49,-1,-1,-1,-1,-1,-1,1
306
+ 0.5,-1,1.24,-1,-1,-1,-1,-1,-1,1
307
+ 0.2,-1,2.45,-1,-1,-1,-1,-1,-1,1
308
+ 0.25,-1,0.79,-1,-1,-1,-1,-1,-1,1
309
+ 0.3,-1,0.85,-1,-1,-1,-1,-1,-1,1
310
+ 0.25,-1,1.05,-1,-1,-1,-1,-1,-1,1
311
+ 0.3,-1,1.43,-1,-1,-1,-1,-1,-1,1
312
+ 0.3,-1,1.53,-1,-1,-1,-1,-1,-1,1
313
+ 0.5,-1,1.74,-1,-1,-1,-1,-1,-1,1
314
+ 0.4,-1,1.61,-1,-1,-1,-1,-1,-1,1
315
+ 0.4,-1,2.8,-1,-1,-1,-1,-1,-1,1
316
+ 0.3,-1,1.25,-1,-1,-1,-1,-1,-1,1
317
+ 0.133333333,-1,0.88,-1,-1,-1,-1,-1,-1,1
318
+ 0.5,-1,2.91,-1,-1,-1,-1,-1,-1,1
319
+ 0.6,-1,1.68,-1,-1,-1,-1,-1,-1,1
320
+ 0.3,-1,3.01,-1,-1,-1,-1,-1,-1,1
321
+ 0.3,-1,1.74,-1,-1,-1,-1,-1,-1,1
322
+ 0.25,-1,1.2,-1,-1,-1,-1,-1,-1,1
323
+ 0.346,-1,5.55,-1,-1,-1,-1,-1,-1,1
324
+ 0.374,-1,6.99,-1,-1,-1,-1,-1,-1,1
325
+ 0.258,-1,5.96,-1,-1,-1,-1,-1,-1,1
326
+ 0.277,-1,6.43,-1,-1,-1,-1,-1,-1,1
327
+ 0.21,-1,5.11,-1,-1,-1,-1,-1,-1,1
328
+ 0.243,-1,6.14,-1,-1,-1,-1,-1,-1,1
329
+ 0.244,-1,5.94,-1,-1,-1,-1,-1,-1,1
330
+ 0.364,-1,7.06,-1,-1,-1,-1,-1,-1,1
331
+ 0.278,-1,6.75,-1,-1,-1,-1,-1,-1,1
332
+ 0.237,-1,5.74,-1,-1,-1,-1,-1,-1,1
333
+ 0.413,-1,4.48,-1,-1,-1,-1,-1,-1,1
334
+ 0.432,-1,4.31,-1,-1,-1,-1,-1,-1,1
335
+ 0.262,-1,4.91,-1,-1,-1,-1,-1,-1,1
336
+ 0.319,-1,6,-1,-1,-1,-1,-1,-1,1
337
+ 0.239,-1,5.36,-1,-1,-1,-1,-1,-1,1
338
+ 0.334,-1,5.9,-1,-1,-1,-1,-1,-1,1
339
+ 0.318,-1,5.9,-1,-1,-1,-1,-1,-1,1
340
+ 0.351,-1,7.36,-1,-1,-1,-1,-1,-1,1
341
+ 0.426,-1,4.45,-1,-1,-1,-1,-1,-1,1
342
+ 0.244,-1,5.25,-1,-1,-1,-1,-1,-1,1
343
+ 0.303,-1,5.9,-1,-1,-1,-1,-1,-1,1
344
+ 0.238,-1,3.76,-1,-1,-1,-1,-1,-1,1
345
+ 0.274,-1,5.85,-1,-1,-1,-1,-1,-1,1
346
+ 0.293,-1,5.83,-1,-1,-1,-1,-1,-1,1
347
+ 0.305,-1,5.86,-1,-1,-1,-1,-1,-1,1
348
+ 0.263,-1,4.69,-1,-1,-1,-1,-1,-1,1
349
+ 0.287,-1,4.23,-1,-1,-1,-1,-1,-1,1
350
+ 0.27,-1,8.36,-1,-1,-1,-1,-1,-1,1
351
+ 0.304,-1,5.61,-1,-1,-1,-1,-1,-1,1
352
+ 0.234,-1,2.58,-1,-1,-1,-1,-1,-1,1
353
+ 0.294,-1,4.45,-1,-1,-1,-1,-1,-1,1
354
+ 0.287,-1,4.85,-1,-1,-1,-1,-1,-1,1
355
+ 0.25,-1,7.14,-1,-1,-1,-1,-1,-1,1
356
+ 0.244,-1,6.4,-1,-1,-1,-1,-1,-1,1
357
+ 0.21,-1,6.4,-1,-1,-1,-1,-1,-1,1
358
+ 0.256,-1,4.39,-1,-1,-1,-1,-1,-1,1
359
+ 0.339,-1,6.01,-1,-1,-1,-1,-1,-1,1
360
+ 0.266,-1,5.89,-1,-1,-1,-1,-1,-1,1
361
+ 0.507,-1,4.54,-1,-1,-1,-1,-1,-1,1
362
+ 0.25,-1,5.56,-1,-1,-1,-1,-1,-1,1
363
+ 0.309,-1,5.75,-1,-1,-1,-1,-1,-1,1
364
+ 0.262,-1,5.25,-1,-1,-1,-1,-1,-1,1
365
+ 0.458,-1,3.81,-1,-1,-1,-1,-1,-1,1
366
+ 0.276,-1,4.81,-1,-1,-1,-1,-1,-1,1
367
+ 0.225,-1,4.95,-1,-1,-1,-1,-1,-1,1
368
+ 0.326,-1,3.9,-1,-1,-1,-1,-1,-1,1
369
+ 0.335,-1,3.46,-1,-1,-1,-1,-1,-1,1
370
+ 0.319,-1,3.35,-1,-1,-1,-1,-1,-1,1
371
+ 0.279,-1,3.76,-1,-1,-1,-1,-1,-1,1
372
+ 0.261,-1,5.9,-1,-1,-1,-1,-1,-1,1
373
+ 0.225,-1,3.96,-1,-1,-1,-1,-1,-1,1
374
+ 0.273,-1,7,-1,-1,-1,-1,-1,-1,1
375
+ 0.352,-1,6.84,-1,-1,-1,-1,-1,-1,1
376
+ 0.311,-1,4.55,-1,-1,-1,-1,-1,-1,1
377
+ 0.272,-1,4.88,-1,-1,-1,-1,-1,-1,1
378
+ 0.225,-1,5.35,-1,-1,-1,-1,-1,-1,1
379
+ 0.196,-1,3.25,-1,-1,-1,-1,-1,-1,1
380
+ 0.294,-1,4.99,-1,-1,-1,-1,-1,-1,1
381
+ 0.378,-1,5.83,-1,-1,-1,-1,-1,-1,1
382
+ 0.316,-1,4.59,-1,-1,-1,-1,-1,-1,1
383
+ 0.278,-1,8.68,-1,-1,-1,-1,-1,-1,1
384
+ 0.309,-1,4.79,-1,-1,-1,-1,-1,-1,1
385
+ 0.311,-1,6.65,-1,-1,-1,-1,-1,-1,1
386
+ 0.413,-1,7.38,-1,-1,-1,-1,-1,-1,1
387
+ 0.259,-1,3.69,-1,-1,-1,-1,-1,-1,1
388
+ 0.157,-1,5.64,-1,-1,-1,-1,-1,-1,1
389
+ 0.296,-1,3.56,-1,-1,-1,-1,-1,-1,1
390
+ 0.263,-1,5.63,-1,-1,-1,-1,-1,-1,1
391
+ -1,-1,-1,-1,0.359,1.791,40.188,47.784,32.8,2
392
+ -1,-1,-1,-1,0.383,1.963,44.861,57.943,27,2
393
+ -1,-1,-1,-1,0.266,1.447,32.009,31.305,47.07,2
394
+ -1,-1,-1,-1,0.292,1.441,26.277,24.885,35.2,2
395
+ -1,-1,-1,-1,0.372,1.773,37.531,44.171,36.46,2
396
+ -1,-1,-1,-1,0.429,1.994,43.281,58.565,31.64,1
397
+ -1,-1,-1,-1,0.447,1.937,31.88,46.724,36.74,1
398
+ -1,-1,-1,-1,0.32,1.605,34.914,36.73,43.21,1
399
+ -1,-1,-1,-1,0.373,1.77,32.751,39.627,35.11,1
400
+ -1,-1,-1,-1,0.511,2.086,50.131,69.416,41.59,1
401
+ -1,-1,-1,-1,0.312,1.599,30.4,31.956,34.57,3
402
+ -1,-1,-1,-1,0.279,1.528,32.52,34.951,37.86,3
403
+ -1,-1,-1,-1,0.275,1.515,31.313,32.742,34.82,3
404
+ -1,-1,-1,-1,0.256,1.473,30.479,30.881,34.27,3
405
+ -1,-1,-1,-1,0.219,1.443,33.7,32.302,27.08,3
406
+ -1,-1,-1,-1,0.405,1.77,17.703,20.302,31.69,4
407
+ -1,-1,-1,-1,0.533,2.119,21.824,36.113,31.93,4
408
+ -1,-1,-1,-1,0.283,1.685,20.94,26.248,20.8,4
409
+ -1,-1,-1,-1,0.352,1.54,13.085,15.543,42.72,4
410
+ -1,-1,-1,-1,0.433,1.803,20.178,25.462,39.32,4
411
+ -1,-1,-1,-1,0.248,1.406,20.441,20.514,33.38,4
412
+ -1,-1,-1,-1,0.232,1.425,25.875,27.058,28.76,4
413
+ -1,-1,-1,-1,0.542,2.301,30.567,44.776,25.9,4
414
+ -1,-1,-1,-1,0.234,1.512,24.311,21.072,21.9,4
415
+ -1,-1,-1,-1,0.441,1.963,44.296,57.826,36.17,2
416
+ -1,-1,-1,-1,0.437,1.975,45.457,58.927,33.95,2
417
+ -1,-1,-1,-1,0.39,1.826,44.965,54.561,38.4,2
418
+ -1,-1,-1,-1,0.671,2.343,35.256,56.873,45.72,4
419
+ -1,-1,-1,-1,0.714,2.465,39.693,63.674,37.88,4
420
+ -1,-1,-1,-1,0.329,1.687,22.946,28.46,29.83,4
421
+ -1,-1,-1,-1,0.615,2.228,32.868,47.111,41.5,4
422
+ -1,-1,-1,-1,0.459,1.943,29.636,39.35,36.21,4
423
+ -1,-1,-1,-1,0.498,2.005,29.811,41.49,40.06,4
424
+ -1,-1,-1,-1,0.541,2.168,38.957,58.091,35.53,4
425
+ -1,-1,-1,-1,0.438,1.997,43.341,59.089,32.5,2
426
+ -1,-1,-1,-1,0.46,1.956,44.072,56.935,42.58,2
427
+ -1,-1,-1,-1,0.494,2.025,42.142,57.869,42.42,2
428
+ -1,-1,-1,-1,0.323,1.618,32.896,35.557,39.07,2
429
+ -1,-1,-1,-1,0.566,2.188,49.982,73.069,44.98,1
430
+ -1,-1,-1,-1,0.481,2.091,40.673,61.364,31.62,1
431
+ -1,-1,-1,-1,0.296,1.662,32.967,35.431,27.75,1
432
+ -1,-1,-1,-1,0.33,1.652,40.059,44.664,42.37,1
433
+ -1,-1,-1,-1,0.254,1.573,32.998,34.471,26.2,1
434
+ -1,-1,-1,-1,0.362,1.722,39.87,44.793,45.91,1
435
+ -1,-1,-1,-1,0.229,1.431,30.123,29.819,30.34,1
436
+ -1,-1,-1,-1,0.521,2.062,35.561,53.7,47.37,1
437
+ -1,-1,-1,-1,0.365,1.828,40.653,49.783,31.56,1
438
+ -1,-1,-1,-1,0.374,1.895,43.79,55.737,29.76,1
439
+ -1,-1,-1,-1,0.752,2.522,40.845,63.48,40.88,1
440
+ -1,-1,-1,-1,0.445,1.986,44.71,59.263,34.36,1
441
+ -1,-1,-1,-1,0.438,1.932,44.28,57.366,38.09,1
442
+ -1,-1,-1,-1,0.351,1.786,44.997,53.279,32.77,1
443
+ -1,-1,-1,-1,0.419,1.866,41.925,51.958,48.32,1
444
+ -1,-1,-1,-1,0.303,1.681,38.451,42.227,29.73,1
445
+ -1,-1,-1,-1,0.284,1.49,22.212,23.25,55.79,5
446
+ -1,-1,-1,-1,0.17,1.356,32.732,30.064,22.25,5
447
+ -1,-1,-1,-1,0.285,1.491,27.588,28.447,50.07,5
448
+ -1,-1,-1,-1,0.288,1.617,30.814,31.209,29.03,5
449
+ -1,-1,-1,-1,0.286,1.542,35.461,37.697,45.03,5
450
+ -1,-1,-1,-1,0.467,1.858,18.908,21.101,57.14,1
451
+ -1,-1,-1,-1,0.409,1.863,36.987,48.599,36.13,1
452
+ -1,-1,-1,-1,0.329,1.72,43.844,50.397,33.68,1
453
+ -1,-1,-1,-1,0.288,1.562,39.258,40.398,36.64,1
454
+ -1,-1,-1,-1,0.368,1.761,43.156,49.881,51.54,1
455
+ -1,-1,-1,-1,0.417,1.909,48.329,60.608,37.07,1
456
+ -1,-1,-1,-1,0.175,1.417,29.504,28.643,19.41,1
457
+ -1,-1,-1,-1,0.317,1.789,38.979,40.335,66.39,1
458
+ -1,-1,-1,-1,0.157,1.286,31.113,27.205,22.53,1
459
+ -1,-1,-1,-1,0.238,1.549,30.086,33.089,23.87,6
460
+ -1,-1,-1,-1,0.414,1.857,37.986,48.166,39.49,6
461
+ -1,-1,-1,-1,0.298,1.599,32.218,35.574,33.69,6
462
+ -1,-1,-1,-1,0.377,1.776,34.404,41.143,36.64,6
463
+ -1,-1,-1,-1,0.237,1.525,28.929,30.657,25.32,6
464
+ -1,-1,-1,-1,0.346,1.71,33.698,40.231,35.88,6
465
+ -1,-1,-1,-1,0.332,1.748,30.261,29.594,22.6,6
466
+ -1,-1,-1,-1,0.369,1.865,38.726,48.472,29.1,6
467
+ -1,-1,5.0432,-1,-1,-1,-1,-1,-1,6
468
+ -1,-1,7.0144,-1,-1,-1,-1,-1,-1,6
469
+ -1,-1,2.048,-1,-1,-1,-1,-1,-1,6
470
+ -1,-1,2.4512,-1,-1,-1,-1,-1,-1,6
471
+ -1,-1,4.4544,-1,-1,-1,-1,-1,-1,6
472
+ -1,-1,2.5152,-1,-1,-1,-1,-1,-1,6
473
+ -1,-1,5.7152,-1,-1,-1,-1,-1,-1,6
474
+ -1,-1,3.2192,-1,-1,-1,-1,-1,-1,6
475
+ -1,-1,3.8016,-1,-1,-1,-1,-1,-1,6
476
+ -1,-1,2.2592,-1,-1,-1,-1,-1,-1,6
477
+ -1,-1,13.8496,-1,-1,-1,-1,-1,-1,6
478
+ -1,-1,3.2512,-1,-1,-1,-1,-1,-1,6
479
+ -1,-1,3.1296,-1,-1,-1,-1,-1,-1,6
480
+ -1,-1,3.9936,-1,-1,-1,-1,-1,-1,6
481
+ -1,-1,3.1424,-1,-1,-1,-1,-1,-1,6
482
+ -1,-1,6.1504,-1,-1,-1,-1,-1,-1,6
483
+ -1,-1,4.6976,-1,-1,-1,-1,-1,-1,6
484
+ -1,-1,2.0544,-1,-1,-1,-1,-1,-1,6
485
+ -1,-1,5.7472,-1,-1,-1,-1,-1,-1,6
486
+ -1,-1,2.72,-1,-1,-1,-1,-1,-1,6
487
+ -1,-1,6.6112,-1,-1,-1,-1,-1,-1,6
488
+ -1,-1,9.5552,-1,-1,-1,-1,-1,-1,6
489
+ -1,-1,3.4496,-1,-1,-1,-1,-1,-1,6
490
+ -1,-1,2.7584,-1,-1,-1,-1,-1,-1,6
491
+ -1,-1,3.8144,-1,-1,-1,-1,-1,-1,6
492
+ -1,-1,1.6704,-1,-1,-1,-1,-1,-1,6
493
+ -1,-1,5.312,-1,-1,-1,-1,-1,-1,6
494
+ -1,-1,1.7664,-1,-1,-1,-1,-1,-1,6
495
+ -1,-1,3.7824,-1,-1,-1,-1,-1,-1,6
496
+ -1,-1,4.1344,-1,-1,-1,-1,-1,-1,6
497
+ -1,-1,2.048,-1,-1,-1,-1,-1,-1,6
498
+ -1,-1,2.0992,-1,-1,-1,-1,-1,-1,6
499
+ -1,-1,1.504,-1,-1,-1,-1,-1,-1,6
500
+ -1,-1,2.048,-1,-1,-1,-1,-1,-1,6
501
+ -1,-1,5.568,-1,-1,-1,-1,-1,-1,6
502
+ -1,-1,6.496,-1,-1,-1,-1,-1,-1,6
503
+ -1,-1,5.568,-1,-1,-1,-1,-1,-1,6
504
+ -1,-1,4.32,-1,-1,-1,-1,-1,-1,6
505
+ -1,-1,4.06272,-1,-1,-1,-1,-1,-1,6
506
+ -1,-1,1.8432,-1,-1,-1,-1,-1,-1,1
507
+ -1,-1,2.6624,-1,-1,-1,-1,-1,-1,1
508
+ -1,-1,6.24,-1,-1,-1,-1,-1,-1,1
509
+ -1,-1,6.2592,-1,-1,-1,-1,-1,-1,1
510
+ -1,-1,4.6336,-1,-1,-1,-1,-1,-1,1
511
+ -1,-1,2.8352,-1,-1,-1,-1,-1,-1,1
512
+ -1,-1,3.3472,-1,-1,-1,-1,-1,-1,1
513
+ -1,-1,2.048,-1,-1,-1,-1,-1,-1,1
514
+ -1,-1,2.048,-1,-1,-1,-1,-1,-1,1
515
+ -1,-1,8.256,-1,-1,-1,-1,-1,-1,1
516
+ -1,-1,3.6032,-1,-1,-1,-1,-1,-1,1
517
+ -1,-1,4.5952,-1,-1,-1,-1,-1,-1,1
518
+ -1,-1,2.9504,-1,-1,-1,-1,-1,-1,1
519
+ -1,-1,2.3296,-1,-1,-1,-1,-1,-1,1
520
+ -1,-1,5.9392,-1,-1,-1,-1,-1,-1,1
521
+ -1,-1,7.0976,-1,-1,-1,-1,-1,-1,1
522
+ -1,-1,2.1696,-1,-1,-1,-1,-1,-1,1
523
+ -1,-1,4.6912,-1,-1,-1,-1,-1,-1,1
524
+ -1,-1,2.048,-1,-1,-1,-1,-1,-1,1
525
+ -1,-1,5.5296,-1,-1,-1,-1,-1,-1,1
526
+ -1,-1,4.6784,-1,-1,-1,-1,-1,-1,1
527
+ -1,-1,6.7392,-1,-1,-1,-1,-1,-1,1
528
+ -1,-1,5.6,-1,-1,-1,-1,-1,-1,1
529
+ -1,-1,4.5056,-1,-1,-1,-1,-1,-1,1
530
+ -1,-1,4.2752,-1,-1,-1,-1,-1,-1,1
531
+ -1,-1,5.44,-1,-1,-1,-1,-1,-1,1
532
+ -1,-1,4.8512,-1,-1,-1,-1,-1,-1,1
533
+ -1,-1,5.6832,-1,-1,-1,-1,-1,-1,1
534
+ -1,-1,8.8,-1,-1,-1,-1,-1,-1,1
535
+ -1,-1,6.88,-1,-1,-1,-1,-1,-1,1
536
+ -1,-1,4.9216,-1,-1,-1,-1,-1,-1,1
537
+ -1,-1,4.8512,-1,-1,-1,-1,-1,-1,1
538
+ -1,-1,4.2432,-1,-1,-1,-1,-1,-1,1
539
+ -1,-1,3.1872,-1,-1,-1,-1,-1,-1,1
540
+ -1,-1,4.5952,-1,-1,-1,-1,-1,-1,1
541
+ -1,-1,3.8464,-1,-1,-1,-1,-1,-1,1
542
+ -1,-1,6.144,-1,-1,-1,-1,-1,-1,1
543
+ -1,-1,5.088,-1,-1,-1,-1,-1,-1,1
544
+ -1,-1,1.92,-1,-1,-1,-1,-1,-1,1
545
+ -1,-1,5.4464,-1,-1,-1,-1,-1,-1,1
546
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,1
547
+ -1,-1,4.3584,-1,-1,-1,-1,-1,-1,1
548
+ -1,-1,6.144,-1,-1,-1,-1,-1,-1,1
549
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,1
550
+ -1,-1,5.3824,-1,-1,-1,-1,-1,-1,1
551
+ -1,-1,6.3232,-1,-1,-1,-1,-1,-1,1
552
+ -1,-1,3.8592,-1,-1,-1,-1,-1,-1,1
553
+ -1,-1,3.2936,-1,-1,-1,-1,-1,-1,2
554
+ -1,-1,5.1152,-1,-1,-1,-1,-1,-1,2
555
+ -1,-1,14.6832,-1,-1,-1,-1,-1,-1,2
556
+ -1,-1,26.6432,-1,-1,-1,-1,-1,-1,2
557
+ -1,-1,6.532,-1,-1,-1,-1,-1,-1,2
558
+ -1,-1,2.2425,-1,-1,-1,-1,-1,-1,2
559
+ -1,-1,4.394,-1,-1,-1,-1,-1,-1,2
560
+ -1,-1,2.9445,-1,-1,-1,-1,-1,-1,2
561
+ -1,-1,2.5675,-1,-1,-1,-1,-1,-1,2
562
+ -1,-1,5.8825,-1,-1,-1,-1,-1,-1,2
563
+ -1,-1,5.447,-1,-1,-1,-1,-1,-1,2
564
+ -1,-1,2.444,-1,-1,-1,-1,-1,-1,2
565
+ -1,-1,4.5825,-1,-1,-1,-1,-1,-1,2
566
+ -1,-1,4.0625,-1,-1,-1,-1,-1,-1,2
567
+ -1,-1,4.6475,-1,-1,-1,-1,-1,-1,2
568
+ -1,-1,1.3715,-1,-1,-1,-1,-1,-1,2
569
+ -1,-1,4.6345,-1,-1,-1,-1,-1,-1,2
570
+ -1,-1,3.965,-1,-1,-1,-1,-1,-1,2
571
+ -1,-1,2.8925,-1,-1,-1,-1,-1,-1,2
572
+ -1,-1,3.1525,-1,-1,-1,-1,-1,-1,2
573
+ -1,-1,2.6845,-1,-1,-1,-1,-1,-1,2
574
+ -1,-1,4.615,-1,-1,-1,-1,-1,-1,2
575
+ -1,-1,6.1425,-1,-1,-1,-1,-1,-1,2
576
+ -1,-1,4.3615,-1,-1,-1,-1,-1,-1,2
577
+ -1,-1,5.6745,-1,-1,-1,-1,-1,-1,2
578
+ -1,-1,3.432,-1,-1,-1,-1,-1,-1,2
579
+ -1,-1,2.5935,-1,-1,-1,-1,-1,-1,2
580
+ -1,-1,4.862,-1,-1,-1,-1,-1,-1,2
581
+ -1,-1,5.9345,-1,-1,-1,-1,-1,-1,2
582
+ -1,-1,3.081,-1,-1,-1,-1,-1,-1,2
583
+ -1,-1,2.782,-1,-1,-1,-1,-1,-1,2
584
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,2
585
+ -1,-1,4.4525,-1,-1,-1,-1,-1,-1,2
586
+ -1,-1,4.5045,-1,-1,-1,-1,-1,-1,2
587
+ -1,-1,4.875,-1,-1,-1,-1,-1,-1,2
588
+ -1,-1,4.381,-1,-1,-1,-1,-1,-1,2
589
+ -1,-1,4.16,-1,-1,-1,-1,-1,-1,2
590
+ -1,-1,3.822,-1,-1,-1,-1,-1,-1,2
591
+ -1,-1,5.2065,-1,-1,-1,-1,-1,-1,2
592
+ -1,-1,5.161,-1,-1,-1,-1,-1,-1,2
593
+ -1,-1,3.3735,-1,-1,-1,-1,-1,-1,2
594
+ -1,-1,2.9965,-1,-1,-1,-1,-1,-1,2
595
+ -1,-1,1.4365,-1,-1,-1,-1,-1,-1,2
596
+ -1,-1,1.5795,-1,-1,-1,-1,-1,-1,2
597
+ -1,-1,2.6325,-1,-1,-1,-1,-1,-1,2
598
+ -1,-1,4.68,-1,-1,-1,-1,-1,-1,2
599
+ -1,-1,3.575,-1,-1,-1,-1,-1,-1,2
600
+ -1,-1,3.0225,-1,-1,-1,-1,-1,-1,2
601
+ -1,-1,1.7875,-1,-1,-1,-1,-1,-1,2
602
+ -1,-1,5.031,-1,-1,-1,-1,-1,-1,2
603
+ -1,-1,1.599,-1,-1,-1,-1,-1,-1,2
604
+ -1,-1,3.224,-1,-1,-1,-1,-1,-1,2
605
+ -1,-1,4.2185,-1,-1,-1,-1,-1,-1,2
606
+ -1,-1,3.2435,-1,-1,-1,-1,-1,-1,2
607
+ -1,-1,3.692,-1,-1,-1,-1,-1,-1,2
608
+ -1,-1,2.1,-1,-1,-1,-1,-1,-1,2
609
+ -1,-1,3.2,-1,-1,-1,-1,-1,-1,2
610
+ -1,-1,4.017,-1,-1,-1,-1,-1,-1,1
611
+ -1,-1,3.172,-1,-1,-1,-1,-1,-1,1
612
+ -1,-1,9.3535,-1,-1,-1,-1,-1,-1,1
613
+ -1,-1,9.6135,-1,-1,-1,-1,-1,-1,1
614
+ -1,-1,4.2445,-1,-1,-1,-1,-1,-1,1
615
+ -1,-1,6.9875,-1,-1,-1,-1,-1,-1,1
616
+ -1,-1,6.695,-1,-1,-1,-1,-1,-1,1
617
+ -1,-1,3.8415,-1,-1,-1,-1,-1,-1,1
618
+ -1,-1,7.449,-1,-1,-1,-1,-1,-1,1
619
+ -1,-1,6.799,-1,-1,-1,-1,-1,-1,1
620
+ -1,-1,7.202,-1,-1,-1,-1,-1,-1,1
621
+ -1,-1,6.5715,-1,-1,-1,-1,-1,-1,1
622
+ -1,-1,8.6645,-1,-1,-1,-1,-1,-1,1
623
+ -1,-1,5.1285,-1,-1,-1,-1,-1,-1,1
624
+ -1,-1,5.044,-1,-1,-1,-1,-1,-1,1
625
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,1
626
+ -1,-1,2.6065,-1,-1,-1,-1,-1,-1,1
627
+ -1,-1,7.735,-1,-1,-1,-1,-1,-1,1
628
+ -1,-1,5.4535,-1,-1,-1,-1,-1,-1,1
629
+ -1,-1,5.5445,-1,-1,-1,-1,-1,-1,1
630
+ -1,-1,8.32,-1,-1,-1,-1,-1,-1,1
631
+ -1,-1,2.47,-1,-1,-1,-1,-1,-1,1
632
+ -1,-1,7.904,-1,-1,-1,-1,-1,-1,1
633
+ -1,-1,4.316,-1,-1,-1,-1,-1,-1,1
634
+ -1,-1,7.956,-1,-1,-1,-1,-1,-1,1
635
+ -1,-1,7.6115,-1,-1,-1,-1,-1,-1,1
636
+ -1,-1,7.4685,-1,-1,-1,-1,-1,-1,1
637
+ -1,-1,6.2985,-1,-1,-1,-1,-1,-1,1
638
+ -1,-1,8.9635,-1,-1,-1,-1,-1,-1,1
639
+ -1,-1,6.617,-1,-1,-1,-1,-1,-1,1
640
+ -1,-1,6.5975,-1,-1,-1,-1,-1,-1,1
641
+ -1,-1,8.0665,-1,-1,-1,-1,-1,-1,1
642
+ -1,-1,5.265,-1,-1,-1,-1,-1,-1,1
643
+ -1,-1,6.24,-1,-1,-1,-1,-1,-1,1
644
+ -1,-1,3.887,-1,-1,-1,-1,-1,-1,1
645
+ -1,-1,4.576,-1,-1,-1,-1,-1,-1,1
646
+ -1,-1,6.24,-1,-1,-1,-1,-1,-1,1
647
+ -1,-1,9.23,-1,-1,-1,-1,-1,-1,1
648
+ -1,-1,2.9575,-1,-1,-1,-1,-1,-1,1
649
+ -1,-1,5.746,-1,-1,-1,-1,-1,-1,1
650
+ -1,-1,8.3915,-1,-1,-1,-1,-1,-1,1
651
+ -1,-1,6.3895,-1,-1,-1,-1,-1,-1,1
652
+ -1,-1,5.9735,-1,-1,-1,-1,-1,-1,1
653
+ -1,-1,7.7025,-1,-1,-1,-1,-1,-1,1
654
+ -1,-1,8.489,-1,-1,-1,-1,-1,-1,1
655
+ -1,-1,9.3275,-1,-1,-1,-1,-1,-1,1
656
+ -1,-1,4.2575,-1,-1,-1,-1,-1,-1,1
657
+ -1,-1,9.555,-1,-1,-1,-1,-1,-1,1
658
+ -1,-1,6.0385,-1,-1,-1,-1,-1,-1,1
659
+ -1,-1,1.456,-1,-1,-1,-1,-1,-1,1
660
+ -1,-1,8.0535,-1,-1,-1,-1,-1,-1,1
661
+ -1,-1,6.136,-1,-1,-1,-1,-1,-1,5
662
+ -1,-1,4.914,-1,-1,-1,-1,-1,-1,5
663
+ -1,-1,4.966,-1,-1,-1,-1,-1,-1,5
664
+ -1,-1,4.81,-1,-1,-1,-1,-1,-1,5
665
+ -1,-1,5.889,-1,-1,-1,-1,-1,-1,5
666
+ -1,-1,6.24,-1,-1,-1,-1,-1,-1,5
667
+ -1,-1,5.694,-1,-1,-1,-1,-1,-1,5
668
+ -1,-1,5.239,-1,-1,-1,-1,-1,-1,5
669
+ -1,-1,5.837,-1,-1,-1,-1,-1,-1,5
670
+ -1,-1,5.0375,-1,-1,-1,-1,-1,-1,5
671
+ -1,-1,4.8295,-1,-1,-1,-1,-1,-1,5
672
+ -1,-1,4.615,-1,-1,-1,-1,-1,-1,5
673
+ -1,-1,1.1375,-1,-1,-1,-1,-1,-1,5
674
+ -1,-1,5.122,-1,-1,-1,-1,-1,-1,5
675
+ -1,-1,5.226,-1,-1,-1,-1,-1,-1,5
676
+ -1,-1,4.5565,-1,-1,-1,-1,-1,-1,5
677
+ -1,-1,2.76,-1,-1,-1,-1,-1,-1,6
678
+ -1,-1,6.7,-1,-1,-1,-1,-1,-1,6
679
+ -1,-1,1.14,-1,-1,-1,-1,-1,-1,6
680
+ -1,-1,2.68,-1,-1,-1,-1,-1,-1,6
681
+ -1,-1,6.6,-1,-1,-1,-1,-1,-1,6
682
+ -1,-1,4.21,-1,-1,-1,-1,-1,-1,6
683
+ -1,-1,0.76,-1,-1,-1,-1,-1,-1,6
684
+ -1,-1,2.39,-1,-1,-1,-1,-1,-1,6
685
+ -1,-1,7.11,-1,-1,-1,-1,-1,-1,6
686
+ -1,-1,1.05,-1,-1,-1,-1,-1,-1,6
687
+ -1,-1,6.83,-1,-1,-1,-1,-1,-1,6
688
+ -1,-1,2.93,-1,-1,-1,-1,-1,-1,6
689
+ -1,-1,2.73,-1,-1,-1,-1,-1,-1,6
690
+ -1,-1,6.25,-1,-1,-1,-1,-1,-1,6
691
+ -1,-1,6.11,-1,-1,-1,-1,-1,-1,6
692
+ -1,-1,2.38,-1,-1,-1,-1,-1,-1,6
693
+ -1,-1,7.1,-1,-1,-1,-1,-1,-1,6
694
+ -1,-1,1.05,-1,-1,-1,-1,-1,-1,6
695
+ -1,-1,5.19,-1,-1,-1,-1,-1,-1,6
696
+ -1,-1,2.88,-1,-1,-1,-1,-1,-1,6
697
+ -1,-1,7.24,-1,-1,-1,-1,-1,-1,6
698
+ -1,-1,2.73,-1,-1,-1,-1,-1,-1,6
699
+ -1,-1,3.98,-1,-1,-1,-1,-1,-1,6
700
+ -1,-1,2.65,-1,-1,-1,-1,-1,-1,6
701
+ -1,-1,5.86,-1,-1,-1,-1,-1,-1,6
702
+ -1,-1,1.2,-1,-1,-1,-1,-1,-1,6
703
+ -1,-1,7.24,-1,-1,-1,-1,-1,-1,6
704
+ -1,-1,6.25,-1,-1,-1,-1,-1,-1,6
705
+ -1,-1,7.66,-1,-1,-1,-1,-1,-1,6
706
+ -1,-1,5.48,-1,-1,-1,-1,-1,-1,6
707
+ -1,-1,6.7,-1,-1,-1,-1,-1,-1,6
708
+ -1,-1,1.93,-1,-1,-1,-1,-1,-1,6
709
+ -1,-1,8.55,-1,-1,-1,-1,-1,-1,6
710
+ -1,-1,2.54,-1,-1,-1,-1,-1,-1,6
711
+ -1,-1,2.51,-1,-1,-1,-1,-1,-1,2
712
+ -1,-1,1.4,-1,-1,-1,-1,-1,-1,2
713
+ -1,-1,4.8,-1,-1,-1,-1,-1,-1,2
714
+ -1,-1,2.06,-1,-1,-1,-1,-1,-1,2
715
+ -1,-1,5.06,-1,-1,-1,-1,-1,-1,2
716
+ -1,-1,3.71,-1,-1,-1,-1,-1,-1,2
717
+ -1,-1,5.34,-1,-1,-1,-1,-1,-1,2
718
+ -1,-1,3.01,-1,-1,-1,-1,-1,-1,2
719
+ -1,-1,2.88,-1,-1,-1,-1,-1,-1,2
720
+ -1,-1,6.14,-1,-1,-1,-1,-1,-1,2
721
+ -1,-1,2.88,-1,-1,-1,-1,-1,-1,2
722
+ -1,-1,4.2,-1,-1,-1,-1,-1,-1,2
723
+ -1,-1,8.69,-1,-1,-1,-1,-1,-1,2
724
+ -1,-1,3.01,-1,-1,-1,-1,-1,-1,2
725
+ -1,-1,7.3,-1,-1,-1,-1,-1,-1,2
726
+ -1,-1,4.3,-1,-1,-1,-1,-1,-1,2
727
+ -1,-1,2.78,-1,-1,-1,-1,-1,-1,2
728
+ -1,-1,5.23,-1,-1,-1,-1,-1,-1,2
729
+ -1,-1,5.23,-1,-1,-1,-1,-1,-1,2
730
+ -1,-1,3.79,-1,-1,-1,-1,-1,-1,2
731
+ -1,-1,8.44,-1,-1,-1,-1,-1,-1,2
732
+ -1,-1,2.71,-1,-1,-1,-1,-1,-1,2
733
+ -1,-1,2.99,-1,-1,-1,-1,-1,-1,2
734
+ -1,-1,3.23,-1,-1,-1,-1,-1,-1,2
735
+ -1,-1,2.6,-1,-1,-1,-1,-1,-1,2
736
+ -1,-1,7.6,-1,-1,-1,-1,-1,-1,2
737
+ -1,-1,1.79,-1,-1,-1,-1,-1,-1,2
738
+ -1,-1,1.05,-1,-1,-1,-1,-1,-1,2
739
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,2
740
+ -1,-1,6.98,-1,-1,-1,-1,-1,-1,2
741
+ -1,-1,3.78,-1,-1,-1,-1,-1,-1,2
742
+ -1,-1,2.84,-1,-1,-1,-1,-1,-1,2
743
+ -1,-1,3.49,-1,-1,-1,-1,-1,-1,2
744
+ -1,-1,5.03,-1,-1,-1,-1,-1,-1,2
745
+ -1,-1,0.68,-1,-1,-1,-1,-1,-1,2
746
+ -1,-1,3.21,-1,-1,-1,-1,-1,-1,2
747
+ -1,-1,2.35,-1,-1,-1,-1,-1,-1,2
748
+ -1,-1,3.69,-1,-1,-1,-1,-1,-1,2
749
+ -1,-1,3.35,-1,-1,-1,-1,-1,-1,2
750
+ -1,-1,3.23,-1,-1,-1,-1,-1,-1,2
751
+ -1,-1,0.94,-1,-1,-1,-1,-1,-1,2
752
+ -1,-1,0.63,-1,-1,-1,-1,-1,-1,2
753
+ -1,-1,0.39,-1,-1,-1,-1,-1,-1,2
754
+ -1,-1,0.6,-1,-1,-1,-1,-1,-1,2
755
+ -1,-1,5.26,-1,-1,-1,-1,-1,-1,2
756
+ -1,-1,1.43,-1,-1,-1,-1,-1,-1,2
757
+ -1,-1,3.54,-1,-1,-1,-1,-1,-1,2
758
+ -1,-1,2.03,-1,-1,-1,-1,-1,-1,2
759
+ -1,-1,2.8,-1,-1,-1,-1,-1,-1,2
760
+ -1,-1,3.29,-1,-1,-1,-1,-1,-1,2
761
+ -1,-1,0.76,-1,-1,-1,-1,-1,-1,2
762
+ -1,-1,2.76,-1,-1,-1,-1,-1,-1,2
763
+ -1,-1,2.79,-1,-1,-1,-1,-1,-1,2
764
+ -1,-1,0.63,-1,-1,-1,-1,-1,-1,2
765
+ -1,-1,4.04,-1,-1,-1,-1,-1,-1,2
766
+ -1,-1,3.24,-1,-1,-1,-1,-1,-1,2
767
+ -1,-1,4.04,-1,-1,-1,-1,-1,-1,2
768
+ -1,-1,0.59,-1,-1,-1,-1,-1,-1,2
769
+ -1,-1,3.83,-1,-1,-1,-1,-1,-1,2
770
+ -1,-1,6.66,-1,-1,-1,-1,-1,-1,2
771
+ -1,-1,3.3,-1,-1,-1,-1,-1,-1,2
772
+ -1,-1,1.05,-1,-1,-1,-1,-1,-1,2
773
+ -1,-1,3.31,-1,-1,-1,-1,-1,-1,2
774
+ -1,-1,2.8,-1,-1,-1,-1,-1,-1,2
775
+ -1,-1,0.86,-1,-1,-1,-1,-1,-1,2
776
+ -1,-1,3.26,-1,-1,-1,-1,-1,-1,2
777
+ -1,-1,8.13,-1,-1,-1,-1,-1,-1,2
778
+ -1,-1,3.49,-1,-1,-1,-1,-1,-1,2
779
+ -1,-1,1.1,-1,-1,-1,-1,-1,-1,2
780
+ -1,-1,1.93,-1,-1,-1,-1,-1,-1,2
781
+ -1,-1,3.58,-1,-1,-1,-1,-1,-1,2
782
+ -1,-1,0.81,-1,-1,-1,-1,-1,-1,2
783
+ -1,-1,3.8,-1,-1,-1,-1,-1,-1,2
784
+ -1,-1,0.93,-1,-1,-1,-1,-1,-1,2
785
+ -1,-1,2.13,-1,-1,-1,-1,-1,-1,2
786
+ -1,-1,1.86,-1,-1,-1,-1,-1,-1,2
787
+ -1,-1,2.78,-1,-1,-1,-1,-1,-1,3
788
+ -1,-1,3.91,-1,-1,-1,-1,-1,-1,3
789
+ -1,-1,5.29,-1,-1,-1,-1,-1,-1,3
790
+ -1,-1,3.95,-1,-1,-1,-1,-1,-1,3
791
+ -1,-1,2.49,-1,-1,-1,-1,-1,-1,3
792
+ -1,-1,4.79,-1,-1,-1,-1,-1,-1,3
793
+ -1,-1,3.71,-1,-1,-1,-1,-1,-1,3
794
+ -1,-1,0.59,-1,-1,-1,-1,-1,-1,3
795
+ -1,-1,2.39,-1,-1,-1,-1,-1,-1,3
796
+ -1,-1,4.88,-1,-1,-1,-1,-1,-1,3
797
+ -1,-1,6.54,-1,-1,-1,-1,-1,-1,3
798
+ -1,-1,4.35,-1,-1,-1,-1,-1,-1,3
799
+ -1,-1,0.83,-1,-1,-1,-1,-1,-1,3
800
+ -1,-1,0.85,-1,-1,-1,-1,-1,-1,3
801
+ -1,-1,3.41,-1,-1,-1,-1,-1,-1,3
802
+ -1,-1,5.66,-1,-1,-1,-1,-1,-1,3
803
+ -1,-1,4.64,-1,-1,-1,-1,-1,-1,3
804
+ -1,-1,2.93,-1,-1,-1,-1,-1,-1,3
805
+ -1,-1,2.76,-1,-1,-1,-1,-1,-1,3
806
+ -1,-1,2.41,-1,-1,-1,-1,-1,-1,3
807
+ -1,-1,5.5,-1,-1,-1,-1,-1,-1,3
808
+ -1,-1,2.6,-1,-1,-1,-1,-1,-1,3
809
+ -1,-1,4.78,-1,-1,-1,-1,-1,-1,3
810
+ -1,-1,4.48,-1,-1,-1,-1,-1,-1,3
811
+ -1,-1,2.73,-1,-1,-1,-1,-1,-1,3
812
+ -1,-1,2.95,-1,-1,-1,-1,-1,-1,3
813
+ -1,-1,0.65,-1,-1,-1,-1,-1,-1,3
814
+ -1,-1,0.36,-1,-1,-1,-1,-1,-1,3
815
+ -1,-1,0.68,-1,-1,-1,-1,-1,-1,3
816
+ -1,-1,5.35,-1,-1,-1,-1,-1,-1,3
817
+ -1,-1,0.71,-1,-1,-1,-1,-1,-1,3
818
+ -1,-1,2.5,-1,-1,-1,-1,-1,-1,3
819
+ -1,-1,2.68,-1,-1,-1,-1,-1,-1,3
820
+ -1,-1,3,-1,-1,-1,-1,-1,-1,3
821
+ -1,-1,0.44,-1,-1,-1,-1,-1,-1,3
822
+ -1,-1,0.76,-1,-1,-1,-1,-1,-1,3
823
+ -1,-1,0.71,-1,-1,-1,-1,-1,-1,3
824
+ -1,-1,0.83,-1,-1,-1,-1,-1,-1,3
825
+ -1,-1,0.83,-1,-1,-1,-1,-1,-1,3
826
+ -1,-1,0.64,-1,-1,-1,-1,-1,-1,3
827
+ -1,-1,2.75,-1,-1,-1,-1,-1,-1,3
828
+ -1,-1,6.4,-1,-1,-1,-1,-1,-1,3
829
+ -1,-1,2.96,-1,-1,-1,-1,-1,-1,1
830
+ -1,-1,2.51,-1,-1,-1,-1,-1,-1,1
831
+ -1,-1,1.63,-1,-1,-1,-1,-1,-1,1
832
+ -1,-1,2.79,-1,-1,-1,-1,-1,-1,1
833
+ -1,-1,2.84,-1,-1,-1,-1,-1,-1,1
834
+ -1,-1,8.31,-1,-1,-1,-1,-1,-1,1
835
+ -1,-1,2.01,-1,-1,-1,-1,-1,-1,1
836
+ -1,-1,2.49,-1,-1,-1,-1,-1,-1,1
837
+ -1,-1,8.04,-1,-1,-1,-1,-1,-1,1
838
+ -1,-1,2.45,-1,-1,-1,-1,-1,-1,1
839
+ -1,-1,2.79,-1,-1,-1,-1,-1,-1,1
840
+ -1,-1,5.76,-1,-1,-1,-1,-1,-1,1
841
+ -1,-1,7.38,-1,-1,-1,-1,-1,-1,1
842
+ -1,-1,2.24,-1,-1,-1,-1,-1,-1,1
843
+ -1,-1,4.15,-1,-1,-1,-1,-1,-1,1
844
+ -1,-1,7.43,-1,-1,-1,-1,-1,-1,1
845
+ -1,-1,6.25,-1,-1,-1,-1,-1,-1,1
846
+ -1,-1,2.66,-1,-1,-1,-1,-1,-1,1
847
+ -1,-1,5.41,-1,-1,-1,-1,-1,-1,1
848
+ -1,-1,2.69,-1,-1,-1,-1,-1,-1,1
849
+ -1,-1,6.59,-1,-1,-1,-1,-1,-1,1
850
+ -1,-1,3.86,-1,-1,-1,-1,-1,-1,1
851
+ -1,-1,5.98,-1,-1,-1,-1,-1,-1,1
852
+ -1,-1,6.4,-1,-1,-1,-1,-1,-1,1
853
+ -1,-1,7.4,-1,-1,-1,-1,-1,-1,1
854
+ -1,-1,3.04,-1,-1,-1,-1,-1,-1,1
855
+ -1,-1,7.19,-1,-1,-1,-1,-1,-1,1
856
+ -1,-1,4.95,-1,-1,-1,-1,-1,-1,1
857
+ -1,-1,2.84,-1,-1,-1,-1,-1,-1,1
858
+ -1,-1,2.63,-1,-1,-1,-1,-1,-1,1
859
+ -1,-1,2.34,-1,-1,-1,-1,-1,-1,1
860
+ -1,-1,1.03,-1,-1,-1,-1,-1,-1,1
861
+ -1,-1,2.55,-1,-1,-1,-1,-1,-1,1
862
+ -1,-1,7.28,-1,-1,-1,-1,-1,-1,1
863
+ -1,-1,8.59,-1,-1,-1,-1,-1,-1,1
864
+ -1,-1,7.58,-1,-1,-1,-1,-1,-1,1
865
+ -1,-1,2.15,-1,-1,-1,-1,-1,-1,1
866
+ -1,-1,5.69,-1,-1,-1,-1,-1,-1,1
867
+ -1,-1,7.03,-1,-1,-1,-1,-1,-1,1
868
+ -1,-1,2.23,-1,-1,-1,-1,-1,-1,1
869
+ -1,-1,0.9,-1,-1,-1,-1,-1,-1,1
870
+ -1,-1,3.2,-1,-1,-1,-1,-1,-1,1
871
+ -1,-1,5.79,-1,-1,-1,-1,-1,-1,1
872
+ -1,-1,6.61,-1,-1,-1,-1,-1,-1,1
873
+ -1,-1,2.74,-1,-1,-1,-1,-1,-1,1
874
+ -1,-1,3.2,-1,-1,-1,-1,-1,-1,1
875
+ -1,-1,7.86,-1,-1,-1,-1,-1,-1,1
876
+ -1,-1,3.45,-1,-1,-1,-1,-1,-1,1
877
+ -1,-1,7.08,-1,-1,-1,-1,-1,-1,1
878
+ -1,-1,6.5,-1,-1,-1,-1,-1,-1,1
879
+ -1,-1,2.43,-1,-1,-1,-1,-1,-1,1
880
+ -1,-1,2.68,-1,-1,-1,-1,-1,-1,1
881
+ -1,-1,3.29,-1,-1,-1,-1,-1,-1,1
882
+ -1,-1,2.65,-1,-1,-1,-1,-1,-1,1
883
+ -1,-1,2.79,-1,-1,-1,-1,-1,-1,1
884
+ -1,-1,2.59,-1,-1,-1,-1,-1,-1,1
885
+ -1,-1,5.65,-1,-1,-1,-1,-1,-1,1
886
+ -1,-1,5.06,-1,-1,-1,-1,-1,-1,1
887
+ -1,-1,6.9,-1,-1,-1,-1,-1,-1,1
888
+ -1,-1,2.63,-1,-1,-1,-1,-1,-1,1
889
+ -1,-1,7.34,-1,-1,-1,-1,-1,-1,1
890
+ -1,-1,2.36,-1,-1,-1,-1,-1,-1,1
891
+ -1,-1,7.23,-1,-1,-1,-1,-1,-1,1
892
+ -1,-1,2.59,-1,-1,-1,-1,-1,-1,1
893
+ -1,-1,0.68,-1,-1,-1,-1,-1,-1,1
894
+ -1,-1,2.65,-1,-1,-1,-1,-1,-1,1
895
+ -1,-1,2.84,-1,-1,-1,-1,-1,-1,1
896
+ -1,-1,2.7,-1,-1,-1,-1,-1,-1,1
897
+ -1,-1,3,-1,-1,-1,-1,-1,-1,1
898
+ -1,-1,2.86,-1,-1,-1,-1,-1,-1,1
899
+ -1,-1,5.48,-1,-1,-1,-1,-1,-1,1
900
+ -1,-1,8.45,-1,-1,-1,-1,-1,-1,1
901
+ -1,-1,3.01,-1,-1,-1,-1,-1,-1,1
902
+ -1,-1,0.99,-1,-1,-1,-1,-1,-1,1
903
+ -1,-1,8.31,-1,-1,-1,-1,-1,-1,1
904
+ -1,-1,2.33,-1,-1,-1,-1,-1,-1,1
905
+ -1,-1,9.01,-1,-1,-1,-1,-1,-1,1
906
+ -1,-1,2.39,-1,-1,-1,-1,-1,-1,1
907
+ -1,-1,9.23,-1,-1,-1,-1,-1,-1,1
908
+ -1,-1,8.48,-1,-1,-1,-1,-1,-1,1
909
+ -1,-1,7.85,-1,-1,-1,-1,-1,-1,1
910
+ -1,-1,3.05,-1,-1,-1,-1,-1,-1,1
911
+ -1,-1,1.85,-1,-1,-1,-1,-1,-1,1
912
+ -1,-1,2.49,-1,-1,-1,-1,-1,-1,1
913
+ -1,-1,2.2,-1,-1,-1,-1,-1,-1,1
914
+ -1,-1,8.24,-1,-1,-1,-1,-1,-1,1
915
+ -1,-1,2.84,-1,-1,-1,-1,-1,-1,1
916
+ -1,-1,6.71,-1,-1,-1,-1,-1,-1,1
917
+ -1,-1,2.54,-1,-1,-1,-1,-1,-1,1
918
+ -1,-1,6.91,-1,-1,-1,-1,-1,-1,1
919
+ -1,-1,3.01,-1,-1,-1,-1,-1,-1,1
920
+ -1,-1,5.65,-1,-1,-1,-1,-1,-1,1
921
+ -1,-1,1.15,-1,-1,-1,-1,-1,-1,1
922
+ -1,-1,2.46,-1,-1,-1,-1,-1,-1,1
923
+ -1,-1,7.04,-1,-1,-1,-1,-1,-1,1
924
+ -1,-1,0.53,-1,-1,-1,-1,-1,-1,1
925
+ -1,-1,4.64,-1,-1,-1,-1,-1,-1,1
926
+ -1,-1,2.48,-1,-1,-1,-1,-1,-1,1
927
+ -1,-1,2.83,-1,-1,-1,-1,-1,-1,1
928
+ -1,-1,2.55,-1,-1,-1,-1,-1,-1,1
929
+ -1,-1,2.66,-1,-1,-1,-1,-1,-1,1
930
+ -1,-1,1.53,-1,-1,-1,-1,-1,-1,1
931
+ -1,-1,7.25,-1,-1,-1,-1,-1,-1,1
932
+ -1,-1,2.6,-1,-1,-1,-1,-1,-1,1
933
+ -1,-1,2.84,-1,-1,-1,-1,-1,-1,1
934
+ -1,-1,2.08,-1,-1,-1,-1,-1,-1,1
935
+ -1,-1,0.61,-1,-1,-1,-1,-1,-1,1
936
+ -1,-1,9.99,-1,-1,-1,-1,-1,-1,1
937
+ -1,-1,0.79,-1,-1,-1,-1,-1,-1,1
938
+ -1,-1,0.45,-1,-1,-1,-1,-1,-1,1
939
+ -1,-1,2.91,-1,-1,-1,-1,-1,-1,1
940
+ -1,-1,8.11,-1,-1,-1,-1,-1,-1,1
941
+ -1,-1,0.78,-1,-1,-1,-1,-1,-1,1
942
+ -1,-1,2.09,-1,-1,-1,-1,-1,-1,1
943
+ -1,-1,2.79,-1,-1,-1,-1,-1,-1,1
944
+ -1,-1,2.19,-1,-1,-1,-1,-1,-1,1
945
+ -1,-1,2.66,-1,-1,-1,-1,-1,-1,1
946
+ -1,-1,0.88,-1,-1,-1,-1,-1,-1,1
947
+ -1,-1,2.9,-1,-1,-1,-1,-1,-1,1
948
+ -1,-1,2.31,-1,-1,-1,-1,-1,-1,1
949
+ -1,-1,2.68,-1,-1,-1,-1,-1,-1,1
950
+ -1,-1,2.4,-1,-1,-1,-1,-1,-1,1
951
+ -1,-1,2.73,-1,-1,-1,-1,-1,-1,1
952
+ -1,-1,8.5,-1,-1,-1,-1,-1,-1,1
953
+ -1,-1,1.51,-1,-1,-1,-1,-1,-1,1
954
+ -1,-1,7.79,-1,-1,-1,-1,-1,-1,1
955
+ -1,-1,0,-1,-1,-1,-1,-1,-1,1
956
+ -1,-1,2.19,-1,-1,-1,-1,-1,-1,1
957
+ -1,-1,2.01,-1,-1,-1,-1,-1,-1,1
958
+ -1,-1,2.96,-1,-1,-1,-1,-1,-1,1
959
+ -1,-1,0.86,-1,-1,-1,-1,-1,-1,1
960
+ -1,-1,1.95,-1,-1,-1,-1,-1,-1,1
961
+ -1,-1,2.63,-1,-1,-1,-1,-1,-1,1
962
+ -1,-1,2.91,-1,-1,-1,-1,-1,-1,1
963
+ -1,-1,1.14,-1,-1,-1,-1,-1,-1,1
964
+ -1,-1,3.2,-1,-1,-1,-1,-1,-1,1
965
+ -1,-1,6.18,-1,-1,-1,-1,-1,-1,1
966
+ -1,-1,0.73,-1,-1,-1,-1,-1,-1,1
967
+ -1,-1,2.76,-1,-1,-1,-1,-1,-1,1
968
+ -1,-1,0,-1,-1,-1,-1,-1,-1,1
969
+ -1,-1,3.84,-1,-1,-1,-1,-1,-1,1
970
+ -1,-1,0.61,-1,-1,-1,-1,-1,-1,1
971
+ -1,-1,2.83,-1,-1,-1,-1,-1,-1,1
972
+ -1,-1,2.79,-1,-1,-1,-1,-1,-1,1
973
+ -1,-1,2.44,-1,-1,-1,-1,-1,-1,1
974
+ -1,-1,0.58,-1,-1,-1,-1,-1,-1,1
975
+ -1,-1,2.93,-1,-1,-1,-1,-1,-1,1
976
+ -1,-1,0,-1,-1,-1,-1,-1,-1,1
977
+ -1,-1,2.48,-1,-1,-1,-1,-1,-1,1
978
+ -1,-1,0.89,-1,-1,-1,-1,-1,-1,1
979
+ -1,-1,2.76,-1,-1,-1,-1,-1,-1,1
980
+ -1,-1,0.49,-1,-1,-1,-1,-1,-1,1
981
+ -1,-1,0.5,-1,-1,-1,-1,-1,-1,1
982
+ -1,-1,0.4,-1,-1,-1,-1,-1,-1,1
983
+ -1,-1,5.05,-1,-1,-1,-1,-1,-1,1
984
+ -1,-1,2.24,-1,-1,-1,-1,-1,-1,1
985
+ -1,-1,2.49,-1,-1,-1,-1,-1,-1,1
986
+ -1,-1,1.91,-1,-1,-1,-1,-1,-1,1
987
+ -1,-1,1.35,-1,-1,-1,-1,-1,-1,1
988
+ -1,-1,0.79,-1,-1,-1,-1,-1,-1,1
989
+ -1,-1,1.54,-1,-1,-1,-1,-1,-1,1
990
+ -1,-1,2.68,-1,-1,-1,-1,-1,-1,1
991
+ -1,-1,0.56,-1,-1,-1,-1,-1,-1,1
992
+ -1,-1,0.7,-1,-1,-1,-1,-1,-1,1
993
+ -1,-1,2.88,-1,-1,-1,-1,-1,-1,1
994
+ -1,-1,1.29,-1,-1,-1,-1,-1,-1,1
995
+ -1,-1,0.8,-1,-1,-1,-1,-1,-1,1
996
+ -1,-1,3.2,-1,-1,-1,-1,-1,-1,1
997
+ -1,-1,1.66,-1,-1,-1,-1,-1,-1,1
998
+ -1,-1,2.63,-1,-1,-1,-1,-1,-1,1
999
+ -1,-1,0.93,-1,-1,-1,-1,-1,-1,1
1000
+ -1,-1,6.4,-1,-1,-1,-1,-1,-1,1
1001
+ -1,-1,2.73,-1,-1,-1,-1,-1,-1,1
1002
+ -1,-1,2.34,-1,-1,-1,-1,-1,-1,1
1003
+ -1,-1,0,-1,-1,-1,-1,-1,-1,1
1004
+ -1,-1,1.75,-1,-1,-1,-1,-1,-1,1
1005
+ -1,-1,0.75,-1,-1,-1,-1,-1,-1,1
1006
+ -1,-1,2.81,-1,-1,-1,-1,-1,-1,1
1007
+ -1,-1,0.53,-1,-1,-1,-1,-1,-1,1
1008
+ -1,-1,0,-1,-1,-1,-1,-1,-1,1
1009
+ -1,-1,0.63,-1,-1,-1,-1,-1,-1,1
1010
+ -1,-1,2.09,-1,-1,-1,-1,-1,-1,1
1011
+ -1,-1,1.01,-1,-1,-1,-1,-1,-1,1
1012
+ -1,-1,0.59,-1,-1,-1,-1,-1,-1,1
1013
+ -1,-1,0.78,-1,-1,-1,-1,-1,-1,1
1014
+ -1,-1,0.65,-1,-1,-1,-1,-1,-1,1
1015
+ -1,-1,1.29,-1,-1,-1,-1,-1,-1,1
1016
+ -1,-1,1.03,-1,-1,-1,-1,-1,-1,1
1017
+ -1,-1,0.74,-1,-1,-1,-1,-1,-1,1
1018
+ -1,-1,0.91,-1,-1,-1,-1,-1,-1,1
1019
+ -1,-1,0,-1,-1,-1,-1,-1,-1,1
1020
+ -1,-1,0,-1,-1,-1,-1,-1,-1,1
1021
+ -1,-1,0.54,-1,-1,-1,-1,-1,-1,1
1022
+ -1,-1,0,-1,-1,-1,-1,-1,-1,1
1023
+ -1,-1,1.37,-1,-1,-1,-1,-1,-1,1
1024
+ -1,-1,2.96,-1,-1,-1,-1,-1,-1,1
1025
+ -1,-1,3.2,-1,-1,-1,-1,-1,-1,1
1026
+ -1,-1,1,-1,-1,-1,-1,-1,-1,1
1027
+ -1,-1,1.35,-1,-1,-1,-1,-1,-1,1
1028
+ -1,-1,1.35,-1,-1,-1,-1,-1,-1,1
1029
+ -1,-1,1.16,-1,-1,-1,-1,-1,-1,1
1030
+ -1,-1,0.91,-1,-1,-1,-1,-1,-1,1
1031
+ -1,-1,0.59,-1,-1,-1,-1,-1,-1,1
1032
+ -1,-1,1.24,-1,-1,-1,-1,-1,-1,1
1033
+ -1,-1,0,-1,-1,-1,-1,-1,-1,1
1034
+ -1,-1,0.75,-1,-1,-1,-1,-1,-1,1
1035
+ -1,-1,1.05,-1,-1,-1,-1,-1,-1,1
1036
+ -1,-1,1.51,-1,-1,-1,-1,-1,-1,1
1037
+ -1,-1,1.3,-1,-1,-1,-1,-1,-1,1
1038
+ -1,-1,0.64,-1,-1,-1,-1,-1,-1,1
1039
+ -1,-1,1.04,-1,-1,-1,-1,-1,-1,1
1040
+ -1,-1,0,-1,-1,-1,-1,-1,-1,1
1041
+ -1,-1,1.19,-1,-1,-1,-1,-1,-1,1
1042
+ -1,-1,1.96,-1,-1,-1,-1,-1,-1,1
1043
+ -1,-1,0.76,-1,-1,-1,-1,-1,-1,1
1044
+ -1,-1,0.56,-1,-1,-1,-1,-1,-1,1
1045
+ -1,-1,0.5,-1,-1,-1,-1,-1,-1,1
1046
+ -1,-1,1.64,-1,-1,-1,-1,-1,-1,1
1047
+ -1,-1,0.64,-1,-1,-1,-1,-1,-1,1
1048
+ -1,-1,0.49,-1,-1,-1,-1,-1,-1,1
1049
+ -1,-1,0.54,-1,-1,-1,-1,-1,-1,1
1050
+ -1,-1,11.3712,-1,0.197,1.389,26.319,25.52,-1,2
1051
+ -1,-1,11.776,-1,0.21,1.45,27.978,28.187,-1,2
1052
+ -1,-1,6.4952,-1,0.212,1.425,27.824,28.169,-1,2
1053
+ -1,-1,8.74,-1,0.255,1.43,28.411,28.425,-1,2
1054
+ -1,-1,8.28,-1,0.313,1.677,38.095,36.852,-1,2
1055
+ -1,-1,3.128,-1,0.185,1.372,29.947,28.425,-1,2
1056
+ -1,-1,4.1952,-1,0.202,1.306,22.52,21.889,-1,2
1057
+ -1,-1,12.3832,-1,0.253,1.63,35.096,38.132,-1,2
1058
+ -1,-1,7.2864,-1,0.209,1.371,29.797,27.143,-1,2
1059
+ -1,-1,12.1256,-1,0.296,1.563,31.834,33.356,-1,2
1060
+ -1,-1,6.4584,-1,0.188,1.324,30.48,27.2,-1,2
1061
+ -1,-1,10.488,-1,0.291,1.722,35.215,39.059,-1,2
1062
+ -1,-1,8.4456,-1,0.316,1.639,34.43,38.651,-1,2
1063
+ -1,-1,6.8632,-1,0.273,1.649,36.987,39.167,-1,2
1064
+ -1,-1,4.3424,-1,0.212,1.365,24.368,23.171,-1,2
1065
+ -1,-1,6.808,-1,0.33,1.687,33.955,41.57,-1,2
1066
+ -1,-1,6.256,-1,0.213,1.502,32.743,33.576,-1,2
1067
+ -1,-1,9.66,-1,0.269,1.511,29.743,31.104,-1,2
1068
+ -1,-1,9.108,-1,0.279,1.57,30.253,33.062,-1,2
1069
+ -1,-1,6.716,-1,0.365,1.804,34.518,43.112,-1,2
1070
+ -1,-1,12.5856,-1,0.29,1.577,28.552,31.709,-1,2
1071
+ -1,-1,8.0776,-1,0.219,1.318,22.494,21.543,-1,2
1072
+ -1,-1,9.4576,-1,0.208,1.372,22.586,22.16,-1,2
1073
+ -1,-1,12.1256,-1,0.265,1.519,32.158,32.925,-1,2
1074
+ -1,-1,8.3352,-1,0.237,1.534,30.934,32.416,-1,2
1075
+ -1,-1,11.776,-1,0.329,1.658,27.876,32.921,-1,2
1076
+ -1,-1,10.3776,-1,0.202,1.441,27.719,27.5,-1,2
1077
+ -1,-1,14.2416,-1,0.211,1.428,30.451,29.65,-1,2
1078
+ -1,-1,10.7456,-1,0.246,1.435,26.93,25.275,-1,2
1079
+ -1,-1,8.5376,-1,0.274,1.556,34.399,36.496,-1,2
1080
+ -1,-1,6.624,-1,0.211,1.3118,26.556,24.093,-1,2
1081
+ -1,-1,4.232,-1,0.24,1.44,29.17,27.934,-1,2
1082
+ -1,-1,8.0224,-1,0.224,1.414,29.215,27.799,-1,2
1083
+ -1,-1,11.3344,-1,0.274,1.56,32.468,32.969,-1,2
1084
+ -1,-1,8.2432,-1,0.306,1.544,29.94,29.479,-1,2
1085
+ -1,-1,5.0232,-1,0.224,1.317,26.083,23.804,-1,2
1086
+ -1,-1,6.8632,-1,0.302,1.533,28.166,26.61,-1,2
1087
+ -1,-1,12.696,-1,0.313,1.647,31.797,34.866,-1,2
1088
+ -1,-1,8.556,-1,0.22,1.539,32.438,34.444,-1,2
1089
+ -1,-1,11.3712,-1,0.281,1.616,30.309,32.641,-1,2
1090
+ -1,-1,7.1576,-1,0.225,1.524,30.135,31.276,-1,2
1091
+ -1,-1,8.556,-1,0.267,1.527,31.552,30.627,-1,2
1092
+ -1,-1,12.4016,-1,0.219,1.549,32.279,33.401,-1,2
1093
+ -1,-1,8.188,-1,0.243,1.43,26.114,24.595,-1,2
1094
+ -1,-1,11.8864,-1,0.293,1.593,33.881,35.959,-1,2
1095
+ -1,-1,12.8432,-1,0.273,1.652,35.679,40.646,-1,2
1096
+ -1,-1,11.4632,-1,0.301,1.641,34.544,37.046,-1,2
1097
+ -1,-1,7.1576,-1,0.288,1.605,32.886,35.23,-1,2
1098
+ -1,-1,13.3584,-1,0.309,1.653,32.655,35.383,-1,2
1099
+ -1,-1,7.3232,-1,0.303,1.63,35.589,38.197,-1,2
1100
+ -1,-1,8.7216,-1,0.337,1.688,31.423,36.149,-1,2
1101
+ -1,-1,5.5384,-1,0.213,1.45,24.333,28.58,-1,2
1102
+ -1,-1,7.3784,-1,0.232,1.384,25.443,24.519,-1,2
1103
+ -1,-1,13.8184,-1,0.245,1.47,30.253,28.488,-1,2
1104
+ -1,-1,11.776,-1,0.264,1.555,30.551,32.102,-1,2
1105
+ -1,-1,12.236,-1,0.327,1.678,33.224,36.897,-1,2
1106
+ -1,-1,13.064,-1,0.27,1.541,30.759,32.6,-1,2
1107
+ -1,-1,10.1936,-1,0.318,1.723,36.446,41.394,-1,2
1108
+ -1,-1,7.6176,-1,0.253,1.45,30.156,30.031,-1,2
1109
+ -1,-1,5.9616,-1,0.238,1.409,26.227,25.58,-1,2
1110
+ -1,-1,4.2136,-1,-1,-1,-1,-1,-1,2
1111
+ -1,-1,8.9424,-1,-1,-1,-1,-1,-1,2
1112
+ -1,-1,10.2672,-1,0.23,1.349,24.185,22.232,-1,2
1113
+ -1,-1,6.8264,-1,0.415,1.884,34.147,40.606,-1,2
1114
+ -1,-1,9.0712,-1,0.177,1.139,16.079,14.211,-1,2
1115
+ -1,-1,8.2984,-1,0.179,1.136,17.787,15.562,-1,2
1116
+ -1,-1,9.1632,-1,0.19,2,16.614,17.34,-1,2
1117
+ -1,-1,12.6,-1,0.385,1.778,36.021,43.343,-1,2
1118
+ -1,-1,11.93,-1,0.245,1.396,29.436,27.616,-1,2
1119
+ -1,-1,10.95,-1,0.208,1.297,27.239,23.086,-1,2
1120
+ -1,-1,11.43,-1,0.28,1.584,32.863,32.032,-1,2
1121
+ -1,-1,11.26,-1,0.308,1.674,34.947,38.979,-1,2
1122
+ -1,-1,8.71,-1,0.271,1.547,31.266,34.801,-1,2
1123
+ -1,-1,13.19,-1,0.244,1.211,29.866,28.798,-1,2
1124
+ -1,-1,10.66,-1,2.327,1.536,33.696,94.167,-1,2
1125
+ -1,-1,13.34,-1,0.243,1.459,28.899,29.153,-1,2
1126
+ -1,-1,14.5,-1,0.322,1.531,34.226,37.717,-1,2
1127
+ -1,-1,12.8,-1,0.359,1.776,36.872,43.731,-1,2
1128
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,2
1129
+ -1,-1,10.01,-1,0.329,1.668,35.012,39.576,-1,2
1130
+ 0.620347395,177.48,19.36,10,-1,-1,-1,86.30695986,-1,2
1131
+ 0.925925926,150.228,9.68,8.2,-1,-1,-1,60.40576831,-1,2
1132
+ 0.836120401,270.579,13.5,9.4,-1,-1,-1,82.42398768,-1,2
1133
+ 0.862068966,182.198,4.48,7,-1,-1,-1,69.03811848,-1,2
1134
+ 0.690607735,212.796,17.48,10.6,-1,-1,-1,75.66582325,-1,2
1135
+ 0.642673522,-1,13.69,9.4,-1,-1,-1,-1,-1,2
1136
+ 0.606796117,129.389,11.71,9.9,-1,-1,-1,74.0346451,-1,2
1137
+ 1.358695652,176.788,16,8.6,-1,-1,-1,66.95400307,-1,2
1138
+ 0.753012048,193.296,10.79,11,-1,-1,-1,85.20511685,-1,2
1139
+ 0.706214689,423,12.45,16.7,-1,-1,-1,53.14248768,-1,2
1140
+ 0.874125874,147.927,12.29,10.6,-1,-1,-1,57.38507116,-1,2
1141
+ 1.096491228,162.281,12.26,11.8,-1,-1,-1,61.28196811,-1,2
1142
+ 0.670241287,143.911,18.43,7,-1,-1,-1,68.57362408,-1,2
1143
+ 0.9765625,171.192,4.69,8.6,-1,-1,-1,52.85156385,-1,2
1144
+ 0.668449198,220.344,4.38,9.1,-1,-1,-1,31.04124588,-1,2
1145
+ 0.996015936,142.99,9.11,9.9,-1,-1,-1,91.57943432,-1,2
1146
+ 0.980392157,189.691,12.2,8,-1,-1,-1,67.71102878,-1,2
1147
+ 0.915750916,164.359,5.13,7,-1,-1,-1,40.91686316,-1,2
1148
+ 0.902527076,203.209,3.95,6.7,-1,-1,-1,56.83485267,-1,2
1149
+ 0.936329588,182.245,15.25,9.8,-1,-1,-1,-1,-1,2
1150
+ 0.710227273,425.672,10.78,9.9,-1,-1,-1,81.00282697,-1,2
1151
+ 1.533742331,134.751,3.79,10.2,-1,-1,-1,39.12834416,-1,2
1152
+ 0.712250712,281.18,14.16,7.6,-1,-1,-1,59.06044037,-1,2
1153
+ 0.764525994,105.908,3.8,7.5,-1,-1,-1,44.81588552,-1,2
1154
+ 1.308900524,115.916,8.24,7,-1,-1,-1,93.32533977,-1,2
1155
+ 1.141552511,270.657,20.96,12,-1,-1,-1,69.09902939,-1,2
1156
+ 0.69637883,396.851,3.48,6.7,-1,-1,-1,101.8633568,-1,2
1157
+ 1.020408163,222.294,16.85,12.6,-1,-1,-1,50.46749469,-1,2
1158
+ 0.950570342,429.256,13.18,6.5,-1,-1,-1,-1,-1,2
1159
+ 0.41322314,170.34,3.51,10,-1,-1,-1,46.13328098,-1,2
1160
+ 0.92936803,305.182,4.31,10.6,-1,-1,-1,47.60788369,-1,2
1161
+ 0.859106529,740.91,17.09,12,-1,-1,-1,87.41222249,-1,2
1162
+ 0.905797101,263.559,12.84,16.9,-1,-1,-1,91.95784365,-1,2
1163
+ 0.796178344,179.489,4.28,10.6,-1,-1,-1,24.20024222,-1,2
1164
+ 0.965250965,192.291,6.23,11,-1,-1,-1,58.65287053,-1,2
1165
+ 1.412429379,361.409,7.1,8.7,-1,-1,-1,72.33422724,-1,2
1166
+ 0.582750583,281.296,6,9,-1,-1,-1,48.23886055,-1,2
1167
+ 0.919117647,228.606,14.24,12.4,-1,-1,-1,54.40209406,-1,2
1168
+ 0.750750751,148.632,2.85,6.6,-1,-1,-1,47.00982693,-1,2
1169
+ 1.121076233,127.99,7.73,11.7,-1,-1,-1,66.48696337,-1,2
1170
+ 0.844594595,193.134,14.14,12.8,-1,-1,-1,62.84128773,-1,2
1171
+ 0.608272506,119.11,7.24,10.5,-1,-1,-1,30.41718275,-1,2
1172
+ 0.836120401,190.906,12.53,11.4,-1,-1,-1,43.20579795,-1,2
1173
+ 0.700280112,308.305,13.54,14,-1,-1,-1,64.07686346,-1,2
1174
+ 1.262626263,144.775,11.46,10.5,-1,-1,-1,32.39411439,-1,2
1175
+ 0.560538117,235.287,4.46,8.3,-1,-1,-1,56.5462811,-1,2
1176
+ 1.096491228,153.394,16.26,11.3,-1,-1,-1,64.83973897,-1,2
1177
+ 0.853242321,166.357,13.4,12.4,-1,-1,-1,105.8670564,-1,2
1178
+ 0.592417062,114.46,4.36,9,-1,-1,-1,73.6327524,-1,2
1179
+ 0.631313131,0,15.55,14,-1,-1,-1,58.65854631,-1,2
1180
+ 1.121076233,115.412,1.98,6.8,-1,-1,-1,54.27902985,-1,2
1181
+ 0.672043011,231.95,4.26,14,-1,-1,-1,45.99382586,-1,2
1182
+ 0.675675676,187.503,8.29,11.3,-1,-1,-1,54.93347576,-1,2
1183
+ 1.602564103,203.917,16.31,13,-1,-1,-1,55.35305084,-1,2
1184
+ 0.757575758,223.84,17.21,13.3,-1,-1,-1,53.17721746,-1,2
1185
+ 0.88028169,0,2.98,8.3,-1,-1,-1,77.72790733,-1,2
1186
+ 0.841750842,205.3,12.28,14.7,-1,-1,-1,56.12486005,-1,2
1187
+ 0.796178344,114.179,5.93,10,-1,-1,-1,42.65983369,-1,2
1188
+ 0.862068966,148.858,0.81,9.2,-1,-1,-1,38.91126499,-1,2
1189
+ 0.654450262,0,14.25,24.9,-1,-1,-1,60.17508312,-1,2
1190
+ 0.755287009,135.922,10,6.5,-1,-1,-1,51.6727063,-1,2
1191
+ 0.542299349,234.154,14.48,16.9,-1,-1,-1,39.77687061,-1,2
1192
+ 0.566893424,119.164,16.26,14.3,-1,-1,-1,58.82055841,-1,2
1193
+ 0.611246944,258.721,3.88,11.2,-1,-1,-1,57.88204589,-1,2
1194
+ 0.690607735,130.404,5.89,17.3,-1,-1,-1,65.63791993,-1,2
1195
+ 0.683060109,162.898,8.28,13.2,-1,-1,-1,98.25486374,-1,2
1196
+ 0.822368421,154.09,12.54,12.3,-1,-1,-1,59.6360843,-1,2
1197
+ 0.405186386,213.827,3.03,5.5,-1,-1,-1,48.27548647,-1,2
1198
+ 0.647668394,199.906,3.03,8.9,-1,-1,-1,56.76849051,-1,2
1199
+ 0.865051903,302.933,4.4,12.7,-1,-1,-1,51.24321867,-1,2
1200
+ -1,292.86,3.33,7.6,-1,-1,-1,24.62716254,-1,2
1201
+ 0.602409639,176.714,11.04,13.9,-1,-1,-1,69.49101972,-1,2
1202
+ 0.608272506,316.368,14.36,11.2,-1,-1,-1,-1,-1,2
1203
+ 0.581395349,217.922,4.95,10.6,-1,-1,-1,46.02247525,-1,2
1204
+ 0.814332248,283.189,2.98,12.1,-1,-1,-1,71.25219839,-1,2
1205
+ 0.335120643,391.13,2.7,16.1,-1,-1,-1,50.5554387,-1,2
1206
+ 0.418060201,219.164,3.43,11.7,-1,-1,-1,33.93034914,-1,2
1207
+ 0.58411215,162.897,6.26,10.5,-1,-1,-1,55.98047493,-1,2
1208
+ 1.041666667,124.594,13.55,19.2,-1,-1,-1,52.50521858,-1,2
1209
+ 0.791139241,91.957,2.41,6,-1,-1,-1,48.80214278,-1,2
1210
+ 0.724637681,196.167,2.46,7.9,-1,-1,-1,46.91359473,-1,2
1211
+ 0.631313131,173.393,4.7,12.7,-1,-1,-1,39.41484691,-1,2
1212
+ 0.603864734,139.594,2.54,9.9,-1,-1,-1,50.33316971,-1,2
1213
+ 0.577367206,110.88,3.71,10,-1,-1,-1,48.20139338,-1,2
1214
+ 0.514403292,107.694,4.61,10.6,-1,-1,-1,32.36079265,-1,2
1215
+ 0.868055556,264.833,12.39,24.4,-1,-1,-1,45.50429318,-1,2
1216
+ 0.698324022,222.679,17.44,29.4,-1,-1,-1,69.09396637,-1,2
1217
+ 0.468164794,144.992,8.25,9.8,-1,-1,-1,41.77287162,-1,2
1218
+ 1.196172249,196.367,7.3,10.6,-1,-1,-1,91.38079997,-1,2
1219
+ 0.788643533,195.65,10.64,12.4,-1,-1,-1,49.08822068,-1,2
1220
+ 0.611246944,206.457,3.51,16.2,-1,-1,-1,59.20702564,-1,2
1221
+ 0.634517766,217.333,4.14,15.9,-1,-1,-1,46.27671057,-1,2
1222
+ 0.700280112,322.608,19.83,16.6,-1,-1,-1,55.36795701,-1,2
1223
+ 0.796178344,183.39,12.48,15.8,-1,-1,-1,40.36631034,-1,2
1224
+ 0.516528926,232.448,4.49,6.5,-1,-1,-1,65.97444736,-1,2
1225
+ 0.968992248,279.952,14.51,8,-1,-1,-1,62.2964776,-1,2
1226
+ 1.016260163,213.745,14.8,18.9,-1,-1,-1,66.19179742,-1,2
1227
+ 0.476190476,167.86,3.44,10.7,-1,-1,-1,46.80053123,-1,2
1228
+ 0.889679715,88.807,2.8,8,-1,-1,-1,45.31546627,-1,2
1229
+ 0.559284116,108.237,3.73,7.2,-1,-1,-1,48.94392241,-1,2
1230
+ 0.649350649,136.849,3.33,11.8,-1,-1,-1,60.96853765,-1,2
1231
+ 0.518672199,209.38,3.34,15.2,-1,-1,-1,54.17453821,-1,2
1232
+ 1.046025105,266.794,3.2,14.5,-1,-1,-1,46.87436092,-1,2
1233
+ 0.946969697,139.375,4.18,9.5,-1,-1,-1,39.70385199,-1,2
1234
+ -1,213.961,2.69,8.7,-1,-1,-1,38.98303622,-1,2
1235
+ 0.578703704,154.406,2.18,15.1,-1,-1,-1,63.26407673,-1,2
1236
+ 0.559284116,145.532,3.25,7,-1,-1,-1,60.3689268,-1,2
1237
+ 0.836120401,152.353,3.2,13.2,-1,-1,-1,44.25219854,-1,2
1238
+ 0.694444444,142.995,2.64,13.4,-1,-1,-1,72.50213289,-1,2
1239
+ 0.656167979,155.24,2.76,7.3,-1,-1,-1,50.05353964,-1,2
1240
+ 1.428571429,176.09,2.65,11,-1,-1,-1,58.36052208,-1,2
1241
+ 0.600961538,136.625,2.38,9.4,-1,-1,-1,44.99324897,-1,2
1242
+ 0.612745098,188.373,2.76,10,-1,-1,-1,37.9551051,-1,2
1243
+ 0.690607735,301.709,3.96,8.1,-1,-1,-1,46.41731637,-1,2
1244
+ 1.5625,259.594,2.31,6.9,-1,-1,-1,43.49500821,-1,2
1245
+ 1.012145749,587.949,3.53,13,-1,-1,-1,49.6566257,-1,2
1246
+ 0.542299349,216.877,3.85,8.8,-1,-1,-1,59.96563059,-1,2
1247
+ 0.504032258,154.816,2.66,12,-1,-1,-1,25.55480289,-1,2
1248
+ 0.577367206,162.411,2.39,14,-1,-1,-1,53.79889191,-1,2
1249
+ 0.88028169,162.3,2.94,9.7,-1,-1,-1,75.45825612,-1,2
1250
+ 0.939849624,169.928,4.36,9.3,-1,-1,-1,64.85684641,-1,2
1251
+ 0.694444444,152.281,3.43,13.6,-1,-1,-1,43.93356168,-1,2
1252
+ 0.865051903,145.149,3.33,9,-1,-1,-1,49.26079824,-1,2
1253
+ 0.468164794,217.851,3.26,8.4,-1,-1,-1,44.57093748,-1,2
1254
+ 0.716332378,143.579,3.25,10,-1,-1,-1,86.00303791,-1,2
1255
+ -1,-1,14.79,18.5,-1,-1,-1,-1,-1,-1
1256
+ -1,-1,12.98,28.25,-1,-1,-1,-1,-1,-1
1257
+ -1,-1,7.78,21,-1,-1,-1,-1,-1,-1
1258
+ -1,-1,15.08,28.25,-1,-1,-1,-1,-1,-1
1259
+ -1,-1,15.61,30.5,-1,-1,-1,-1,-1,-1
1260
+ -1,-1,13.49,24,-1,-1,-1,-1,-1,-1
1261
+ -1,-1,10.24,18.25,-1,-1,-1,-1,-1,-1
1262
+ -1,-1,14.76,28.25,-1,-1,-1,-1,-1,-1
1263
+ -1,-1,12.14,27.25,-1,-1,-1,-1,-1,-1
1264
+ -1,-1,6.9,23.5,-1,-1,-1,-1,-1,-1
1265
+ 1.443,-1,-1,-1,-1,-1,-1,-1,-1,1
1266
+ 1.91,-1,-1,-1,-1,-1,-1,-1,-1,1
1267
+ 1.634,-1,-1,-1,-1,-1,-1,-1,-1,1
1268
+ 2.414,-1,-1,-1,-1,-1,-1,-1,-1,1
1269
+ 1.287,-1,-1,-1,-1,-1,-1,-1,-1,1
1270
+ 2.138,-1,-1,-1,-1,-1,-1,-1,-1,1
1271
+ 2.179,-1,-1,-1,-1,-1,-1,-1,-1,1
1272
+ 2.108,-1,-1,-1,-1,-1,-1,-1,-1,1
1273
+ 1.608,-1,-1,-1,-1,-1,-1,-1,-1,1
1274
+ 1.96,-1,-1,-1,-1,-1,-1,-1,-1,1
1275
+ 2.503,-1,-1,-1,-1,-1,-1,-1,-1,1
1276
+ 1.784,-1,-1,-1,-1,-1,-1,-1,-1,1
1277
+ 2.45,-1,-1,-1,-1,-1,-1,-1,-1,1
1278
+ 1.572,-1,-1,-1,-1,-1,-1,-1,-1,1
1279
+ 1.589,-1,-1,-1,-1,-1,-1,-1,-1,1
1280
+ 2.154,-1,-1,-1,-1,-1,-1,-1,-1,1
1281
+ 2.358,-1,-1,-1,-1,-1,-1,-1,-1,1
1282
+ 2.009,-1,-1,-1,-1,-1,-1,-1,-1,1
1283
+ 1.888,-1,-1,-1,-1,-1,-1,-1,-1,1
1284
+ 2.798,-1,-1,-1,-1,-1,-1,-1,-1,1
1285
+ 1.866,-1,-1,-1,-1,-1,-1,-1,-1,1
1286
+ 2.485,-1,-1,-1,-1,-1,-1,-1,-1,1
1287
+ 1.559,-1,-1,-1,-1,-1,-1,-1,-1,1
1288
+ 2.431,-1,-1,-1,-1,-1,-1,-1,-1,1
1289
+ 1.43,-1,-1,-1,-1,-1,-1,-1,-1,1
1290
+ 2.238,-1,-1,-1,-1,-1,-1,-1,-1,1
1291
+ 0.975,-1,-1,-1,-1,-1,-1,-1,-1,1
1292
+ 1.616,-1,-1,-1,-1,-1,-1,-1,-1,1
1293
+ 2.104,-1,-1,-1,-1,-1,-1,-1,-1,1
1294
+ 2.268,-1,-1,-1,-1,-1,-1,-1,-1,1
1295
+ 1.769,-1,-1,-1,-1,-1,-1,-1,-1,1
1296
+ 1.76,-1,-1,-1,-1,-1,-1,-1,-1,1
1297
+ 1.461,-1,-1,-1,-1,-1,-1,-1,-1,1
1298
+ 2.52,-1,-1,-1,-1,-1,-1,-1,-1,1
1299
+ 2.435,-1,-1,-1,-1,-1,-1,-1,-1,1
1300
+ 2.151,-1,-1,-1,-1,-1,-1,-1,-1,1
1301
+ 2.152,-1,-1,-1,-1,-1,-1,-1,-1,1
1302
+ 2.259,-1,-1,-1,-1,-1,-1,-1,-1,1
1303
+ 2.058,-1,-1,-1,-1,-1,-1,-1,-1,1
1304
+ 1.983,-1,-1,-1,-1,-1,-1,-1,-1,1
1305
+ 2.05,-1,-1,-1,-1,-1,-1,-1,-1,1
1306
+ 2.434,-1,-1,-1,-1,-1,-1,-1,-1,1
1307
+ 1.868,-1,-1,-1,-1,-1,-1,-1,-1,1
1308
+ 1.877,-1,-1,-1,-1,-1,-1,-1,-1,1
1309
+ 1.525,-1,-1,-1,-1,-1,-1,-1,-1,1
1310
+ 1.974,-1,-1,-1,-1,-1,-1,-1,-1,1
1311
+ 2.015,-1,-1,-1,-1,-1,-1,-1,-1,1
1312
+ 2.346,-1,-1,-1,-1,-1,-1,-1,-1,1
1313
+ 1.738,-1,-1,-1,-1,-1,-1,-1,-1,1
1314
+ 1.375,-1,-1,-1,-1,-1,-1,-1,-1,1
1315
+ 1.079,-1,-1,-1,-1,-1,-1,-1,-1,1
1316
+ 1.33,-1,-1,-1,-1,-1,-1,-1,-1,1
1317
+ 0.876,-1,-1,-1,-1,-1,-1,-1,-1,1
1318
+ 1.316,-1,-1,-1,-1,-1,-1,-1,-1,1
1319
+ 1.117,-1,-1,-1,-1,-1,-1,-1,-1,1
1320
+ 1.129,-1,-1,-1,-1,-1,-1,-1,-1,1
1321
+ 1.559,-1,-1,-1,-1,-1,-1,-1,-1,1
1322
+ 1.685,-1,-1,-1,-1,-1,-1,-1,-1,1
1323
+ 1.512,-1,-1,-1,-1,-1,-1,-1,-1,1
1324
+ 0.887,-1,-1,-1,-1,-1,-1,-1,-1,1
1325
+ 1.179,-1,-1,-1,-1,-1,-1,-1,-1,1
1326
+ 1.87,-1,-1,-1,-1,-1,-1,-1,-1,1
1327
+ 1.653,-1,-1,-1,-1,-1,-1,-1,-1,1
1328
+ 1.416,-1,-1,-1,-1,-1,-1,-1,-1,1
1329
+ 1.924,-1,-1,-1,-1,-1,-1,-1,-1,1
1330
+ 1.634,-1,-1,-1,-1,-1,-1,-1,-1,1
1331
+ 1.492,-1,-1,-1,-1,-1,-1,-1,-1,1
1332
+ 0.879,-1,-1,-1,-1,-1,-1,-1,-1,1
1333
+ 2.003,-1,-1,-1,-1,-1,-1,-1,-1,1
1334
+ 0.807,-1,-1,-1,-1,-1,-1,-1,-1,1
1335
+ 1.301,-1,-1,-1,-1,-1,-1,-1,-1,1
1336
+ 1.223,-1,-1,-1,-1,-1,-1,-1,-1,1
1337
+ 1.288,-1,-1,-1,-1,-1,-1,-1,-1,1
1338
+ 1.49,-1,-1,-1,-1,-1,-1,-1,-1,1
1339
+ 1.751,-1,-1,-1,-1,-1,-1,-1,-1,1
1340
+ 2.034,-1,-1,-1,-1,-1,-1,-1,-1,1
1341
+ 1.025,-1,-1,-1,-1,-1,-1,-1,-1,1
1342
+ 1.798,-1,-1,-1,-1,-1,-1,-1,-1,1
1343
+ 2.437,-1,-1,-1,-1,-1,-1,-1,-1,1
1344
+ 1.746,-1,-1,-1,-1,-1,-1,-1,-1,1
1345
+ 1.545,-1,-1,-1,-1,-1,-1,-1,-1,1
1346
+ 1.212,-1,-1,-1,-1,-1,-1,-1,-1,1
1347
+ 1.215,-1,-1,-1,-1,-1,-1,-1,-1,1
1348
+ 1.373,-1,-1,-1,-1,-1,-1,-1,-1,1
1349
+ 2.16,-1,-1,-1,-1,-1,-1,-1,-1,1
1350
+ 1.097,-1,-1,-1,-1,-1,-1,-1,-1,1
1351
+ 1.31,-1,-1,-1,-1,-1,-1,-1,-1,1
1352
+ 1.619,-1,-1,-1,-1,-1,-1,-1,-1,1
1353
+ 1.248,-1,-1,-1,-1,-1,-1,-1,-1,1
1354
+ 1.846,-1,-1,-1,-1,-1,-1,-1,-1,1
1355
+ 1.758,-1,-1,-1,-1,-1,-1,-1,-1,1
1356
+ 1.034,-1,-1,-1,-1,-1,-1,-1,-1,1
1357
+ 1.583,-1,-1,-1,-1,-1,-1,-1,-1,1
1358
+ 1.768,-1,-1,-1,-1,-1,-1,-1,-1,1
1359
+ 1.262,-1,-1,-1,-1,-1,-1,-1,-1,1
1360
+ 1.613,-1,-1,-1,-1,-1,-1,-1,-1,1
1361
+ 1.414,-1,-1,-1,-1,-1,-1,-1,-1,1
1362
+ 1.197,-1,-1,-1,-1,-1,-1,-1,-1,1
1363
+ 1.53,-1,-1,-1,-1,-1,-1,-1,-1,1
1364
+ 1.043,-1,-1,-1,-1,-1,-1,-1,-1,1
1365
+ 1.74,-1,-1,-1,-1,-1,-1,-1,-1,1
1366
+ 1.921,-1,-1,-1,-1,-1,-1,-1,-1,1
1367
+ 1.033,-1,-1,-1,-1,-1,-1,-1,-1,1
1368
+ 1.605,-1,-1,-1,-1,-1,-1,-1,-1,1
1369
+ 1.648,-1,-1,-1,-1,-1,-1,-1,-1,1
1370
+ 1.541,-1,-1,-1,-1,-1,-1,-1,-1,1
1371
+ 1.559,-1,-1,-1,-1,-1,-1,-1,-1,1
1372
+ 1.167,-1,-1,-1,-1,-1,-1,-1,-1,1
1373
+ 1.54,-1,-1,-1,-1,-1,-1,-1,-1,1
1374
+ 1.217,-1,-1,-1,-1,-1,-1,-1,-1,1
1375
+ 1.366,-1,-1,-1,-1,-1,-1,-1,-1,1
1376
+ 1.324,-1,-1,-1,-1,-1,-1,-1,-1,1
1377
+ 1.157,-1,-1,-1,-1,-1,-1,-1,-1,1
1378
+ 1.568,-1,-1,-1,-1,-1,-1,-1,-1,1
1379
+ 1.895,-1,-1,-1,-1,-1,-1,-1,-1,1
1380
+ 1.333,-1,-1,-1,-1,-1,-1,-1,-1,1
1381
+ 0.986,-1,-1,-1,-1,-1,-1,-1,-1,1
1382
+ 1.32,-1,-1,-1,-1,-1,-1,-1,-1,1
1383
+ 1.731,-1,-1,-1,-1,-1,-1,-1,-1,1
1384
+ 1.774,-1,-1,-1,-1,-1,-1,-1,-1,1
1385
+ 1.354,-1,-1,-1,-1,-1,-1,-1,-1,1
1386
+ 1.645,-1,-1,-1,-1,-1,-1,-1,-1,1
1387
+ 0.927,-1,-1,-1,-1,-1,-1,-1,-1,1
1388
+ 1.65,-1,-1,-1,-1,-1,-1,-1,-1,1
1389
+ 1.539,-1,-1,-1,-1,-1,-1,-1,-1,1
1390
+ 1.346,-1,-1,-1,-1,-1,-1,-1,-1,1
1391
+ 1.67,-1,15.73,-1,-1,-1,-1,-1,-1,-1
1392
+ 1.92,-1,9.76488,-1,-1,-1,-1,-1,-1,-1
1393
+ 3.12,-1,19.2763,-1,-1,-1,-1,-1,-1,-1
1394
+ 2.78,-1,17.703,-1,-1,-1,-1,-1,-1,-1
1395
+ 1.67,-1,15.6745,-1,-1,-1,-1,-1,-1,-1
1396
+ 2.5,-1,21.344,-1,-1,-1,-1,-1,-1,-1
1397
+ 2.5,-1,16.7417,-1,-1,-1,-1,-1,-1,-1
1398
+ 1.56,-1,21.7442,-1,-1,-1,-1,-1,-1,-1
1399
+ 3.12,-1,26.68,-1,-1,-1,-1,-1,-1,-1
1400
+ 1.92,-1,20.9438,10.166,-1,-1,-1,-1,-1,-1
1401
+ 1.67,-1,20.0767,14.166,-1,-1,-1,-1,-1,-1
1402
+ 1.79,-1,17.8756,10.166,-1,-1,-1,-1,-1,-1
1403
+ 2.08,-1,17.0085,10.664,-1,-1,-1,-1,-1,-1
1404
+ 2.08,-1,12.47957,-1,-1,-1,-1,-1,-1,-1
1405
+ 3.13,-1,6.07637,-1,-1,-1,-1,-1,-1,-1
1406
+ 3.13,-1,9.45,26.2,-1,-1,-1,-1,-1,-1
1407
+ 1.04,-1,14.007,-1,-1,-1,-1,-1,-1,-1
1408
+ 2.27,-1,17.0752,-1,-1,-1,-1,-1,-1,-1
1409
+ 1.56,-1,15.0075,-1,-1,-1,-1,-1,-1,-1
1410
+ 2.27,-1,28.681,-1,-1,-1,-1,-1,-1,-1
1411
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1412
+ 1.92,-1,37.548,-1,-1,-1,-1,-1,-1,-1
1413
+ 1.92,-1,22.678,-1,-1,-1,-1,-1,-1,-1
1414
+ 3.12,-1,24.192,22.6,-1,-1,-1,-1,-1,-1
1415
+ 3.12499847,-1,13.47,-1,-1,-1,-1,-1,-1,-1
1416
+ 0.78124962,-1,4.29,-1,-1,-1,-1,-1,-1,-1
1417
+ 1.78571442,-1,13.67,-1,-1,-1,-1,-1,-1,-1
1418
+ 2.27272705,-1,13.13,-1,-1,-1,-1,-1,-1,-1
1419
+ 1.04166664,-1,17.0085,16.4,-1,-1,-1,-1,-1,-1
1420
+ 1.56249924,-1,14.67,-1,-1,-1,-1,-1,-1,-1
1421
+ 2.08333267,-1,18.76,-1,-1,-1,-1,-1,-1,-1
1422
+ 2.08333328,-1,17.7422,20,-1,-1,-1,-1,-1,-1
1423
+ 2.77777679,-1,24.679,15,-1,-1,-1,-1,-1,-1
1424
+ 2.27272827,-1,17.2753,11.6,-1,-1,-1,-1,-1,-1
1425
+ 1.47058762,-1,16.0747,15.6,-1,-1,-1,-1,-1,-1
1426
+ 2.27272705,-1,17.5421,22.8,-1,-1,-1,-1,-1,-1
1427
+ 1.66666824,-1,16.82,-1,-1,-1,-1,-1,-1,-1
1428
+ 1.78571442,-1,21.84,-1,-1,-1,-1,-1,-1,-1
1429
+ 2.27272705,-1,17.7422,20.4,-1,-1,-1,-1,-1,-1
1430
+ -1,-1,21.9443,-1,-1,-1,-1,-1,-1,-1
1431
+ 1.04166664,-1,20.4102,10.4,-1,-1,-1,-1,-1,-1
1432
+ 1.66666687,-1,23.05,-1,-1,-1,-1,-1,-1,-1
1433
+ 2.08333328,-1,16.48,-1,-1,-1,-1,-1,-1,-1
1434
+ 1.92307693,-1,22.9448,14.8,-1,-1,-1,-1,-1,-1
1435
+ 2.27272705,-1,15.5411,18.8,-1,-1,-1,-1,-1,-1
1436
+ -1,-1,14.2738,-1,-1,-1,-1,-1,-1,-1
1437
+ 0.71428589,-1,14.2071,16.4,-1,-1,-1,-1,-1,-1
1438
+ 2.27272705,-1,20.677,19.2,-1,-1,-1,-1,-1,-1
1439
+ 2.49999939,-1,26.013,14,-1,-1,-1,-1,-1,-1
1440
+ 1.66666565,-1,30.8821,14.2,-1,-1,-1,-1,-1,-1
1441
+ 1,-1,35.5511,17.6,-1,-1,-1,-1,-1,-1
1442
+ 1.66666687,-1,25.0792,24,-1,-1,-1,-1,-1,-1
1443
+ 1.78571411,-1,32.016,12.8,-1,-1,-1,-1,-1,-1
1444
+ 1.92308228,-1,17.2753,11.8,-1,-1,-1,-1,-1,-1
1445
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1446
+ 2.08333328,-1,32.16,-1,-1,-1,-1,-1,-1,-1
1447
+ 1.78571442,-1,30.4152,15,-1,-1,-1,-1,-1,-1
1448
+ 1.66666687,-1,42.55,-1,-1,-1,-1,-1,-1,-1
1449
+ 0.83333328,-1,-1,-1,-1,-1,-1,-1,-1,-1
1450
+ 1.25000008,-1,34.91,-1,-1,-1,-1,-1,-1,-1
1451
+ 1.92307693,-1,24.4122,13.2,-1,-1,-1,-1,-1,-1
1452
+ 2.50000092,-1,37.72,-1,-1,-1,-1,-1,-1,-1
1453
+ 2.77778046,-1,41.0205,15.4,-1,-1,-1,-1,-1,-1
1454
+ 2.77778046,-1,35.0842,15.2,-1,-1,-1,-1,-1,-1
1455
+ 1.38889023,-1,30.3485,9.7,-1,-1,-1,-1,-1,-1
1456
+ 1.04166664,-1,33.7502,35.2,-1,-1,-1,-1,-1,-1
1457
+ 2.50000244,-1,34.8841,16.8,-1,-1,-1,-1,-1,-1
1458
+ 2.77777679,-1,14.21377,25.2,-1,-1,-1,-1,-1,-1
1459
+ 1.92307693,-1,11.70585,-1,-1,-1,-1,-1,-1,-1
1460
+ 2.27272446,-1,14.007,24.5,-1,-1,-1,-1,-1,-1
1461
+ 2.50000092,-1,14.6073,42.5,-1,-1,-1,-1,-1,-1
1462
+ 2.77777771,-1,16.675,24,-1,-1,-1,-1,-1,-1
1463
+ 1.92307693,-1,17.5421,21.75,-1,-1,-1,-1,-1,-1
1464
+ 2.08333328,-1,15.2076,25,-1,-1,-1,-1,-1,-1
1465
+ 2.08333267,-1,14.6073,28.75,-1,-1,-1,-1,-1,-1
1466
+ 1.92307693,-1,16.675,55,-1,-1,-1,-1,-1,-1
1467
+ 1.66666687,-1,16.2081,44.5,-1,-1,-1,-1,-1,-1
1468
+ 1.66666672,-1,16.2748,28.5,-1,-1,-1,-1,-1,-1
1469
+ 0.6410257,-1,0.17342,-1,-1,-1,-1,-1,-1,-1
1470
+ 1.13636353,-1,0.84042,-1,-1,-1,-1,-1,-1,-1
1471
+ 1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1472
+ 1.24999969,-1,6.85676,-1,-1,-1,-1,-1,-1,-1
1473
+ 1.56249924,-1,11.83258,-1,-1,-1,-1,-1,-1,-1
1474
+ -1,-1,0.32683,-1,-1,-1,-1,-1,-1,-1
1475
+ 0.43103451,-1,1.0672,-1,-1,-1,-1,-1,-1,-1
1476
+ 1.38888885,-1,7.46373,-1,-1,-1,-1,-1,-1,-1
1477
+ 1.56250031,-1,14.9408,-1,-1,-1,-1,-1,-1,-1
1478
+ 1.31578903,-1,17.7422,-1,-1,-1,-1,-1,-1,-1
1479
+ 1.78571442,-1,18.3425,-1,-1,-1,-1,-1,-1,-1
1480
+ 1.24999969,-1,21.6775,-1,-1,-1,-1,-1,-1,-1
1481
+ 0.78125015,-1,4.2021,-1,-1,-1,-1,-1,-1,-1
1482
+ 1.47058762,-1,3.335,-1,-1,-1,-1,-1,-1,-1
1483
+ 1.3888884,-1,2.2011,-1,-1,-1,-1,-1,-1,-1
1484
+ 0.75757568,-1,5.336,-1,-1,-1,-1,-1,-1,-1
1485
+ 1.24999969,-1,4.4022,-1,-1,-1,-1,-1,-1,-1
1486
+ 1.190476,-1,2.5346,-1,-1,-1,-1,-1,-1,-1
1487
+ 0.65789467,-1,3.7352,-1,-1,-1,-1,-1,-1,-1
1488
+ 0.86206909,-1,4.2021,-1,-1,-1,-1,-1,-1,-1
1489
+ 1.78571442,-1,0.19343,-1,-1,-1,-1,-1,-1,-1
1490
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1491
+ 2.08333328,-1,0.66033,-1,-1,-1,-1,-1,-1,-1
1492
+ 1.66666687,-1,0.96715,-1,-1,-1,-1,-1,-1,-1
1493
+ 1.66666626,-1,7.67717,-1,-1,-1,-1,-1,-1,-1
1494
+ 1.78571442,-1,8.2708,-1,-1,-1,-1,-1,-1,-1
1495
+ 1.56250031,-1,9.2713,-1,-1,-1,-1,-1,-1,-1
1496
+ 2.77777679,-1,8.79106,-1,-1,-1,-1,-1,-1,-1
1497
+ 1.92307693,-1,7.0035,-1,-1,-1,-1,-1,-1,-1
1498
+ 1.78571442,-1,8.79106,-1,-1,-1,-1,-1,-1,-1
1499
+ 2.77777679,-1,9.4714,-1,-1,-1,-1,-1,-1,-1
1500
+ 1.08695641,-1,6.2698,-1,-1,-1,-1,-1,-1,-1
1501
+ 1.92307693,-1,11.5391,-1,-1,-1,-1,-1,-1,-1
1502
+ 1.78571365,-1,6.6033,-1,-1,-1,-1,-1,-1,-1
1503
+ -1,-1,9.8049,15.6,-1,-1,-1,-1,-1,-1
1504
+ 4.16666656,-1,5.87627,16.332,-1,-1,-1,-1,-1,-1
1505
+ 2.77777679,-1,5.36268,-1,-1,-1,-1,-1,-1,-1
1506
+ 2.77777679,-1,7.47707,14.332,-1,-1,-1,-1,-1,-1
1507
+ 4.16666687,-1,7.50375,29.328,-1,-1,-1,-1,-1,-1
1508
+ 2.5,-1,8.86443,24.83,-1,-1,-1,-1,-1,-1
1509
+ 2.50000015,-1,9.62481,30.664,-1,-1,-1,-1,-1,-1
1510
+ 2.50000015,-1,8.84442,21.66,-1,-1,-1,-1,-1,-1
1511
+ 3.12500305,-1,6.96348,14.996,-1,-1,-1,-1,-1,-1
1512
+ 2.49999939,-1,8.71102,19.328,-1,-1,-1,-1,-1,-1
1513
+ 3.57142731,-1,7.46373,16,-1,-1,-1,-1,-1,-1
1514
+ 2.77777863,-1,7.02351,13.162,-1,-1,-1,-1,-1,-1
1515
+ 2.77777679,-1,7.21027,16.664,-1,-1,-1,-1,-1,-1
1516
+ 3.125,-1,9.81157,24.83,-1,-1,-1,-1,-1,-1
1517
+ 2.27272827,-1,6.96348,15.494,-1,-1,-1,-1,-1,-1
1518
+ 2.49999939,-1,6.67667,21.328,-1,-1,-1,-1,-1,-1
1519
+ 2.77777863,-1,8.97782,23.328,-1,-1,-1,-1,-1,-1
1520
+ -1,-1,1.54077,-1,-1,-1,-1,-1,-1,-1
1521
+ -1,-1,1.8676,-1,-1,-1,-1,-1,-1,-1
1522
+ -1,-1,3.9353,-1,-1,-1,-1,-1,-1,-1
1523
+ -1,-1,4.96915,-1,-1,-1,-1,-1,-1,-1
1524
+ -1,-1,4.57562,-1,-1,-1,-1,-1,-1,-1
1525
+ -1,-1,3.8686,-1,-1,-1,-1,-1,-1,-1
1526
+ -1,-1,2.77472,-1,-1,-1,-1,-1,-1,-1
1527
+ -1,-1,3.6685,-1,-1,-1,-1,-1,-1,-1
1528
+ 2.5,-1,6.6339,-1,-1,-1,-1,-1,-1,-1
1529
+ 2.27,-1,7.3017,-1,-1,-1,-1,-1,-1,-1
1530
+ 2.27,-1,8.8074,25.8,-1,-1,-1,-1,-1,-1
1531
+ 2.5,-1,6.6339,19.4,-1,-1,-1,-1,-1,-1
1532
+ 2.27,-1,6.9048,20.6,-1,-1,-1,-1,-1,-1
1533
+ 2.5,-1,8.4924,20.2,-1,-1,-1,-1,-1,-1
1534
+ 2.5,-1,6.7032,-1,-1,-1,-1,-1,-1,-1
1535
+ 3.12,-1,8.7885,20,-1,-1,-1,-1,-1,-1
1536
+ 2.5,-1,7.3647,32,-1,-1,-1,-1,-1,-1
1537
+ 2.08,-1,10.2123,-1,-1,-1,-1,-1,-1,-1
1538
+ 2.27,-1,8.7759,-1,-1,-1,-1,-1,-1,-1
1539
+ 2.50000015,-1,-1,-1,-1,-1,-1,-1,-1,-1
1540
+ 2.50000092,-1,-1,-1,-1,-1,-1,-1,-1,-1
1541
+ 2.50000092,-1,4.4689,-1,-1,-1,-1,-1,-1,-1
1542
+ 3.57142883,-1,-1,-1,-1,-1,-1,-1,-1,-1
1543
+ 3.12500061,-1,-1,-1,-1,-1,-1,-1,-1,-1
1544
+ 2.27272766,-1,6.92346,-1,-1,-1,-1,-1,-1,-1
1545
+ 2.08333527,-1,-1,-1,-1,-1,-1,-1,-1,-1
1546
+ 2.27272705,-1,7.0702,-1,-1,-1,-1,-1,-1,-1
1547
+ 2.08333527,-1,-1,-1,-1,-1,-1,-1,-1,-1
1548
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1549
+ 1.78571442,-1,6.20977,-1,-1,-1,-1,-1,-1,-1
1550
+ 2.77777679,-1,-1,-1,-1,-1,-1,-1,-1,-1
1551
+ 2.77777863,-1,-1,-1,-1,-1,-1,-1,-1,-1
1552
+ 2.49999939,-1,7.2703,-1,-1,-1,-1,-1,-1,-1
1553
+ 2.08332703,-1,-1,-1,-1,-1,-1,-1,-1,-1
1554
+ 2.77778778,-1,6.42988,-1,-1,-1,-1,-1,-1,-1
1555
+ 2.50000244,-1,-1,-1,-1,-1,-1,-1,-1,-1
1556
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1557
+ 2.50000015,-1,6.4032,-1,-1,-1,-1,-1,-1,-1
1558
+ 2.77778046,-1,5.7362,-1,-1,-1,-1,-1,-1,-1
1559
+ 3.57142883,-1,7.67717,-1,-1,-1,-1,-1,-1,-1
1560
+ 3.12500061,-1,8.77105,-1,-1,-1,-1,-1,-1,-1
1561
+ 2.50000092,-1,8.5376,-1,-1,-1,-1,-1,-1,-1
1562
+ 3.57143036,-1,8.77105,-1,-1,-1,-1,-1,-1,-1
1563
+ 2.50000015,-1,8.14407,-1,-1,-1,-1,-1,-1,-1
1564
+ 3.12499847,-1,9.03118,-1,-1,-1,-1,-1,-1,-1
1565
+ 4.99999878,-1,8.97782,-1,-1,-1,-1,-1,-1,-1
1566
+ 2.77778778,-1,8.30415,-1,-1,-1,-1,-1,-1,-1
1567
+ 1.92307526,-1,6.40987,-1,-1,-1,-1,-1,-1,-1
1568
+ 3.12500305,-1,8.29748,-1,-1,-1,-1,-1,-1,-1
1569
+ 2.27272705,-1,6.16308,-1,-1,-1,-1,-1,-1,-1
1570
+ 2.77777679,-1,5.82291,-1,-1,-1,-1,-1,-1,-1
1571
+ 2.50001434,-1,9.06453,-1,-1,-1,-1,-1,-1,-1
1572
+ 3.12499359,-1,7.01017,-1,-1,-1,-1,-1,-1,-1
1573
+ 3.12499847,-1,9.7382,-1,-1,-1,-1,-1,-1,-1
1574
+ 1.92307785,-1,6.67667,-1,-1,-1,-1,-1,-1,-1
1575
+ 3.12500061,-1,10.33183,-1,-1,-1,-1,-1,-1,-1
1576
+ -1,-1,2.62131,-1,-1,-1,-1,-1,-1,-1
1577
+ -1,-1,0.2668,-1,-1,-1,-1,-1,-1,-1
1578
+ -1,-1,0.34017,-1,-1,-1,-1,-1,-1,-1
1579
+ -1,-1,0.30682,-1,-1,-1,-1,-1,-1,-1
1580
+ -1,-1,0.36685,-1,-1,-1,-1,-1,-1,-1
1581
+ 2.08333328,-1,4.2903,42.8,-1,-1,-1,-1,-1,-1
1582
+ 3.12499939,-1,5.5944,28.4,-1,-1,-1,-1,-1,-1
1583
+ 1.92307617,-1,7.4403,51,-1,-1,-1,-1,-1,-1
1584
+ 1.92307693,-1,4.9077,26.4,-1,-1,-1,-1,-1,-1
1585
+ 1.92307693,-1,5.5377,21.2,-1,-1,-1,-1,-1,-1
1586
+ 2.08333527,-1,6.0984,24.2,-1,-1,-1,-1,-1,-1
1587
+ 1.47058762,-1,6.5142,69,-1,-1,-1,-1,-1,-1
1588
+ 1.56249969,-1,6.048,40,-1,-1,-1,-1,-1,-1
1589
+ 2.77777679,-1,7.4403,28.6,-1,-1,-1,-1,-1,-1
1590
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1591
+ 1.25000122,-1,7.1568,28.4,-1,-1,-1,-1,-1,-1
1592
+ -1,-1,5.8842,-1,-1,-1,-1,-1,-1,-1
1593
+ 1.92307526,-1,7.4718,25.4,-1,-1,-1,-1,-1,-1
1594
+ 3.12500061,-1,5.7708,20.2,-1,-1,-1,-1,-1,-1
1595
+ 2.27272705,-1,6.5079,28.6,-1,-1,-1,-1,-1,-1
1596
+ 3.12500061,-1,7.8372,23.2,-1,-1,-1,-1,-1,-1
1597
+ 2.49999939,-1,5.5818,27.8,-1,-1,-1,-1,-1,-1
1598
+ 2.27272705,-1,6.5583,16.6,-1,-1,-1,-1,-1,-1
1599
+ 2.08333328,-1,6.1614,13.4,-1,-1,-1,-1,-1,-1
1600
+ 2.50000092,-1,6.3378,28.8,-1,-1,-1,-1,-1,-1
1601
+ 2.50000244,-1,6.7788,32.6,-1,-1,-1,-1,-1,-1
1602
+ 1.78571442,-1,6.3063,16.6,-1,-1,-1,-1,-1,-1
1603
+ 1.92307693,-1,6.615,38.6,-1,-1,-1,-1,-1,-1
1604
+ 2.77777863,-1,11.2833,12,-1,-1,-1,-1,-1,-1
1605
+ 3.12500305,-1,9.87,-1,-1,-1,-1,-1,-1,-1
1606
+ 2.77777863,-1,11.42,-1,-1,-1,-1,-1,-1,-1
1607
+ 3.12500061,-1,12.7,-1,-1,-1,-1,-1,-1,-1
1608
+ 2.77777863,-1,12.6,-1,-1,-1,-1,-1,-1,-1
1609
+ 2.49999939,-1,12.86,-1,-1,-1,-1,-1,-1,-1
1610
+ 2.27272705,-1,12.92,-1,-1,-1,-1,-1,-1,-1
1611
+ 2.27272827,-1,11.85,-1,-1,-1,-1,-1,-1,-1
1612
+ 1.78571442,-1,12.56,-1,-1,-1,-1,-1,-1,-1
1613
+ 2.77777863,-1,11.29,-1,-1,-1,-1,-1,-1,-1
1614
+ 2.08333221,-1,10.51,-1,-1,-1,-1,-1,-1,-1
1615
+ 2.77777863,-1,22.38,-1,-1,-1,-1,-1,-1,-1
1616
+ 2.50000092,-1,23.85,-1,-1,-1,-1,-1,-1,-1
1617
+ 2.27272705,-1,10.3509,21.4,-1,-1,-1,-1,-1,-1
1618
+ 1.92307693,-1,3.1563,11,-1,-1,-1,-1,-1,-1
1619
+ 2.08333527,-1,4.4037,9.6,-1,-1,-1,-1,-1,-1
1620
+ 1.56249924,-1,4.6242,-1,-1,-1,-1,-1,-1,-1
1621
+ 2.08333328,-1,3.5847,-1,-1,-1,-1,-1,-1,-1
1622
+ 2.77778778,-1,4.7313,-1,-1,-1,-1,-1,-1,-1
1623
+ 3.57142731,-1,6.7284,21.8,-1,-1,-1,-1,-1,-1
1624
+ 2.77777771,-1,7.2954,11,-1,-1,-1,-1,-1,-1
1625
+ 2.49999939,-1,7.7427,10.4,-1,-1,-1,-1,-1,-1
1626
+ 2.77778046,-1,11.6424,18.8,-1,-1,-1,-1,-1,-1
1627
+ 2.50000092,-1,9.4437,11.2,-1,-1,-1,-1,-1,-1
1628
+ 3.12499847,-1,7.56,5.4,-1,-1,-1,-1,-1,-1
1629
+ 2.77778046,-1,15.246,16.8,-1,-1,-1,-1,-1,-1
1630
+ 3.12500305,-1,13.0095,17.2,-1,-1,-1,-1,-1,-1
1631
+ 2.77777313,-1,2.5452,-1,-1,-1,-1,-1,-1,-1
1632
+ 2.08333328,-1,8.5428,18.75,-1,-1,-1,-1,-1,-1
1633
+ 1.92307693,-1,8.5554,7.5,-1,-1,-1,-1,-1,-1
1634
+ 2.49999939,-1,-1,9.75,-1,-1,-1,-1,-1,-1
1635
+ 1.78571442,-1,7.1379,7,-1,-1,-1,-1,-1,-1
1636
+ 2.08333328,-1,8.3979,21.25,-1,-1,-1,-1,-1,-1
1637
+ 2.27272766,-1,4.59563,-1,-1,-1,-1,-1,-1,-1
1638
+ 3.57142883,-1,5.15591,-1,-1,-1,-1,-1,-1,-1
1639
+ 2.08333328,-1,8.8263,9.25,-1,-1,-1,-1,-1,-1
1640
+ 2.50000015,-1,9.0279,22.25,-1,-1,-1,-1,-1,-1
1641
+ 2.50000092,-1,3.5784,-1,-1,-1,-1,-1,-1,-1
1642
+ 2.27272766,-1,5.5314,-1,-1,-1,-1,-1,-1,-1
1643
+ 2.50000244,-1,8.694,6,-1,-1,-1,-1,-1,-1
1644
+ 1.92307693,-1,9.5067,8.25,-1,-1,-1,-1,-1,-1
1645
+ 2.50000015,-1,5.733,-1,-1,-1,-1,-1,-1,-1
1646
+ 2.49999939,-1,3.9249,-1,-1,-1,-1,-1,-1,-1
1647
+ 2.27272766,-1,10.72,-1,-1,-1,-1,-1,-1,-1
1648
+ 2.50000244,-1,7.9254,-1,-1,-1,-1,-1,-1,-1
1649
+ 2.27272705,-1,5.62948,-1,-1,-1,-1,-1,-1,-1
1650
+ 2.77778046,-1,9.5823,-1,-1,-1,-1,-1,-1,-1
1651
+ 1.56249969,-1,11.59,-1,-1,-1,-1,-1,-1,-1
1652
+ 2.50000092,-1,10.6029,-1,-1,-1,-1,-1,-1,-1
1653
+ 2.50000092,-1,5.6889,-1,-1,-1,-1,-1,-1,-1
1654
+ 2.27272766,-1,7.0434,-1,-1,-1,-1,-1,-1,-1
1655
+ 2.77777771,-1,8.5932,-1,-1,-1,-1,-1,-1,-1
1656
+ 2.08333328,-1,9.5949,10.5,-1,-1,-1,-1,-1,-1
1657
+ 2.49999939,-1,11.8726,16.2,-1,-1,-1,-1,-1,-1
1658
+ 1.78571594,-1,13.12656,21.2,-1,-1,-1,-1,-1,-1
1659
+ 2.08333328,-1,13.30665,12.4,-1,-1,-1,-1,-1,-1
1660
+ 2.08333374,-1,7.41,-1,-1,-1,-1,-1,-1,-1
1661
+ -1,-1,10.29181,-1,-1,-1,-1,-1,-1,-1
1662
+ 2.27272949,-1,13.17992,13,-1,-1,-1,-1,-1,-1
1663
+ 1.92307693,-1,12.16608,24,-1,-1,-1,-1,-1,-1
1664
+ 2.27272705,-1,11.44,-1,-1,-1,-1,-1,-1,-1
1665
+ 1.78571442,-1,9.21,-1,-1,-1,-1,-1,-1,-1
1666
+ 4.16666656,-1,9.25,-1,-1,-1,-1,-1,-1,-1
1667
+ 2.27272705,-1,11.26,-1,-1,-1,-1,-1,-1,-1
1668
+ 2.5,-1,7.98,-1,-1,-1,-1,-1,-1,-1
1669
+ 1.92307877,-1,11.57245,24,-1,-1,-1,-1,-1,-1
1670
+ 1.92307526,-1,12.32616,12.6,-1,-1,-1,-1,-1,-1
1671
+ 2.50000015,-1,8.23,-1,-1,-1,-1,-1,-1,-1
1672
+ 4.16666656,-1,8.43,-1,-1,-1,-1,-1,-1,-1
1673
+ 0.83333282,-1,11.49241,-1,-1,-1,-1,-1,-1,-1
1674
+ 2.50000092,-1,8.95,-1,-1,-1,-1,-1,-1,-1
1675
+ 2.77777679,-1,10.72,-1,-1,-1,-1,-1,-1,-1
1676
+ 2.50000092,-1,11.99266,29.4,-1,-1,-1,-1,-1,-1
1677
+ 3.57142853,-1,6.2748,-1,-1,-1,-1,-1,-1,-1
1678
+ 1.92307693,-1,8.757,-1,-1,-1,-1,-1,-1,-1
1679
+ 2.27272827,-1,8.8893,-1,-1,-1,-1,-1,-1,-1
1680
+ 2.08333328,-1,9.387,-1,-1,-1,-1,-1,-1,-1
1681
+ 2.77777679,-1,8.127,20.8,-1,-1,-1,-1,-1,-1
1682
+ 2.08333328,-1,9.7398,-1,-1,-1,-1,-1,-1,-1
1683
+ 2.27273438,-1,8.3412,-1,-1,-1,-1,-1,-1,-1
1684
+ 2.77778046,-1,10.1619,-1,-1,-1,-1,-1,-1,-1
1685
+ 1.08695641,-1,7.8057,14.2,-1,-1,-1,-1,-1,-1
1686
+ 1.92307526,-1,10.5714,-1,-1,-1,-1,-1,-1,-1
1687
+ 3.12499847,-1,9.9288,16.4,-1,-1,-1,-1,-1,-1
1688
+ 1.47058762,-1,12.411,-1,-1,-1,-1,-1,-1,-1
1689
+ 2.50000015,-1,13.356,-1,-1,-1,-1,-1,-1,-1
1690
+ 2.27273438,-1,11.0313,19.8,-1,-1,-1,-1,-1,-1
1691
+ 2.49999939,-1,10.6974,12.8,-1,-1,-1,-1,-1,-1
1692
+ 2.77778046,-1,12.726,-1,-1,-1,-1,-1,-1,-1
1693
+ 1.92307693,-1,10.6344,27.8,-1,-1,-1,-1,-1,-1
1694
+ 3.12499847,-1,9.0972,23.6,-1,-1,-1,-1,-1,-1
1695
+ 1.92307693,-1,12.1212,-1,-1,-1,-1,-1,-1,-1
1696
+ -1,-1,0.9338,-1,-1,-1,-1,-1,-1,-1
1697
+ 1.852,-1,1.0672,-1,-1,-1,-1,-1,-1,-1
1698
+ -1,-1,3.6685,-1,-1,-1,-1,-1,-1,-1
1699
+ -1,-1,0.12006,-1,-1,-1,-1,-1,-1,-1
1700
+ -1,-1,0.62031,-1,-1,-1,-1,-1,-1,-1
1701
+ -1,-1,0.69368,-1,-1,-1,-1,-1,-1,-1
1702
+ 1.25000122,-1,3.22828,4.6,-1,-1,-1,-1,-1,-1
1703
+ -1,-1,4.47557,-1,-1,-1,-1,-1,-1,-1
1704
+ 1.66666824,-1,4.032,8.8,-1,-1,-1,-1,-1,-1
1705
+ 1.66666687,-1,4.1328,-1,-1,-1,-1,-1,-1,-1
1706
+ 2.50000015,-1,3.22,-1,-1,-1,-1,-1,-1,-1
1707
+ 1.78571594,-1,9.12456,13,-1,-1,-1,-1,-1,-1
1708
+ 2.49999939,-1,2.61,-1,-1,-1,-1,-1,-1,-1
1709
+ 1.92307693,-1,7.91062,16.4,-1,-1,-1,-1,-1,-1
1710
+ 2.77777771,-1,5.7,-1,-1,-1,-1,-1,-1,-1
1711
+ 3.12499847,-1,4.69,-1,-1,-1,-1,-1,-1,-1
1712
+ 1.92307693,-1,5.03,-1,-1,-1,-1,-1,-1,-1
1713
+ 2.27272827,-1,4.22,-1,-1,-1,-1,-1,-1,-1
1714
+ 2.08333328,-1,7.97,-1,-1,-1,-1,-1,-1,-1
1715
+ 2.77777679,-1,10.05,-1,-1,-1,-1,-1,-1,-1
1716
+ 2.27272705,-1,7.24,-1,-1,-1,-1,-1,-1,-1
1717
+ 2.50000092,-1,11.39,-1,-1,-1,-1,-1,-1,-1
1718
+ 2.77777863,-1,11.06,-1,-1,-1,-1,-1,-1,-1
1719
+ 1.56250153,-1,11.46,10,-1,-1,-1,-1,-1,-1
1720
+ 1.92307693,-1,6.363,-1,-1,-1,-1,-1,-1,-1
1721
+ -1,-1,4.1769,18,-1,-1,-1,-1,-1,-1
1722
+ 2.08333328,-1,6.5205,17.4,-1,-1,-1,-1,-1,-1
1723
+ 2.50000244,-1,6.1488,-1,-1,-1,-1,-1,-1,-1
1724
+ 2.27272705,-1,6.5142,30.6,-1,-1,-1,-1,-1,-1
1725
+ 1.66667084,-1,8.2719,-1,-1,-1,-1,-1,-1,-1
1726
+ 1.92307526,-1,5.2794,-1,-1,-1,-1,-1,-1,-1
1727
+ -1,-1,7.5159,10.6,-1,-1,-1,-1,-1,-1
1728
+ 2.27272705,-1,5.2164,-1,-1,-1,-1,-1,-1,-1
1729
+ -1,-1,7.1064,29,-1,-1,-1,-1,-1,-1
1730
+ 2.08333435,-1,5.6637,27.2,-1,-1,-1,-1,-1,-1
1731
+ 2.49999939,-1,6.4008,22.6,-1,-1,-1,-1,-1,-1
1732
+ 1.66667084,-1,8.2215,22.6,-1,-1,-1,-1,-1,-1
1733
+ 2.27272949,-1,7.8624,26.6,-1,-1,-1,-1,-1,-1
1734
+ 2.27272766,-1,5.9535,24.8,-1,-1,-1,-1,-1,-1
1735
+ 2.08333328,-1,9.1728,23.4,-1,-1,-1,-1,-1,-1
1736
+ 2.27272705,-1,6.048,22.6,-1,-1,-1,-1,-1,-1
1737
+ 3.12500305,-1,8.1585,22.4,-1,-1,-1,-1,-1,-1
1738
+ 2.08333328,-1,6.7914,19.4,-1,-1,-1,-1,-1,-1
1739
+ 2.27272705,-1,7.7175,17.6,-1,-1,-1,-1,-1,-1
1740
+ 2.08333527,-1,8.883,22,-1,-1,-1,-1,-1,-1
1741
+ 1.78571594,-1,8.064,-1,-1,-1,-1,-1,-1,-1
1742
+ 2.08333328,-1,7.4277,-1,-1,-1,-1,-1,-1,-1
1743
+ 2.27272705,-1,4.76,-1,-1,-1,-1,-1,-1,-1
1744
+ 2.50000015,-1,4.36,-1,-1,-1,-1,-1,-1,-1
1745
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1746
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1747
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1748
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1749
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1750
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1751
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1752
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1753
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1754
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1755
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1756
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1757
+ -1,-1,-1,15.6,-1,-1,-1,-1,-1,-1
1758
+ 2.08333328,-1,15.341,-1,-1,-1,-1,-1,-1,-1
1759
+ 2.77777863,-1,9.11,-1,-1,-1,-1,-1,-1,-1
1760
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1761
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1762
+ 1.92307693,-1,13.74,-1,-1,-1,-1,-1,-1,-1
1763
+ 1.92307877,-1,13.27,-1,-1,-1,-1,-1,-1,-1
1764
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1765
+ 2.08333527,-1,14,-1,-1,-1,-1,-1,-1,-1
1766
+ 2.27272827,-1,15.61,-1,-1,-1,-1,-1,-1,-1
1767
+ 2.77778046,-1,10.12,-1,-1,-1,-1,-1,-1,-1
1768
+ 2.27272446,-1,12.33,-1,-1,-1,-1,-1,-1,-1
1769
+ 4.16666656,-1,16.82,-1,-1,-1,-1,-1,-1,-1
1770
+ 2.50000244,-1,20.64,-1,-1,-1,-1,-1,-1,-1
1771
+ 2.08333328,-1,16.68,20.2,-1,-1,-1,-1,-1,-1
1772
+ 1.38888931,-1,5.79623,5,-1,-1,-1,-1,-1,-1
1773
+ 1.92307693,-1,7.4,30.75,-1,-1,-1,-1,-1,-1
1774
+ 2.08333527,-1,7.12,14.75,-1,-1,-1,-1,-1,-1
1775
+ 2.50000092,-1,8.68,17.5,-1,-1,-1,-1,-1,-1
1776
+ -1,-1,6.57,20.75,-1,-1,-1,-1,-1,-1
1777
+ 1.78571442,-1,8.73,-1,-1,-1,-1,-1,-1,-1
1778
+ 1.92307648,-1,4.30882,-1,-1,-1,-1,-1,-1,-1
1779
+ 1.78571442,-1,4.75571,12.2,-1,-1,-1,-1,-1,-1
1780
+ 2.27272827,-1,7.88,-1,-1,-1,-1,-1,-1,-1
1781
+ 2.27272705,-1,8.17,6,-1,-1,-1,-1,-1,-1
1782
+ 1.47058838,-1,7.73,15.5,-1,-1,-1,-1,-1,-1
1783
+ 1.66666687,-1,9.63,-1,-1,-1,-1,-1,-1,-1
1784
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1785
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1786
+ 3.12500305,-1,5.83,-1,-1,-1,-1,-1,-1,-1
1787
+ 0.02107926,-1,16.11472,-1,-1,-1,-1,-1,-1,-1
1788
+ 3.12499847,-1,5.11,19.6,-1,-1,-1,-1,-1,-1
1789
+ 2.49999939,-1,8.87777,-1,-1,-1,-1,-1,-1,-1
1790
+ 2.50000092,-1,5.49,-1,-1,-1,-1,-1,-1,-1
1791
+ 2.77777679,-1,3.31,-1,-1,-1,-1,-1,-1,-1
1792
+ 2.08333374,-1,7.73,-1,-1,-1,-1,-1,-1,-1
1793
+ 2.77777679,-1,-1,-1,-1,-1,-1,-1,-1,-1
1794
+ 2.27272705,-1,5.92,-1,-1,-1,-1,-1,-1,-1
1795
+ -1,-1,-1,3,-1,-1,-1,-1,-1,-1
1796
+ 2.27272705,-1,7.98,-1,-1,-1,-1,-1,-1,-1
1797
+ 2.27272766,-1,-1,-1,-1,-1,-1,-1,-1,-1
1798
+ 2.77777863,-1,-1,-1,-1,-1,-1,-1,-1,-1
1799
+ 2.49999939,-1,-1,-1,-1,-1,-1,-1,-1,-1
1800
+ -1,-1,-1,27.2,-1,-1,-1,-1,-1,-1
1801
+ 2.50000244,-1,10.81,6.25,-1,-1,-1,-1,-1,-1
1802
+ 2.08333328,-1,10.17,-1,-1,-1,-1,-1,-1,-1
1803
+ 2.08333344,-1,-1,-1,-1,-1,-1,-1,-1,-1
1804
+ 1.78571442,-1,4.81,-1,-1,-1,-1,-1,-1,-1
1805
+ 3.57142883,-1,11.18,18.2,-1,-1,-1,-1,-1,-1
1806
+ 2.08333328,-1,13.0732,-1,-1,-1,-1,-1,-1,-1
1807
+ 2.77777863,-1,-1,-1,-1,-1,-1,-1,-1,-1
1808
+ 1.47058853,-1,10.49,-1,-1,-1,-1,-1,-1,-1
1809
+ 3.57142883,-1,-1,-1,-1,-1,-1,-1,-1,-1
1810
+ 4.1666687,-1,-1,-1,-1,-1,-1,-1,-1,-1
1811
+ 2.77777863,-1,5.25,-1,-1,-1,-1,-1,-1,-1
1812
+ 2.08333328,-1,8.98,-1,-1,-1,-1,-1,-1,-1
1813
+ 1.78571426,-1,5.36,-1,-1,-1,-1,-1,-1,-1
1814
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1815
+ 3.12500305,-1,12.06,-1,-1,-1,-1,-1,-1,-1
1816
+ 2.49999939,-1,8.69768,-1,-1,-1,-1,-1,-1,-1
1817
+ 2.49999939,-1,9.31,21.2,-1,-1,-1,-1,-1,-1
1818
+ 1.92307693,-1,11.64582,-1,-1,-1,-1,-1,-1,-1
1819
+ 2.27272705,-1,5.84,-1,-1,-1,-1,-1,-1,-1
1820
+ 2.77777863,-1,-1,-1,-1,-1,-1,-1,-1,-1
1821
+ 2.77777863,-1,-1,-1,-1,-1,-1,-1,-1,-1
1822
+ 3.57142883,-1,5.96,-1,-1,-1,-1,-1,-1,-1
1823
+ 2.50000015,-1,6.97,-1,-1,-1,-1,-1,-1,-1
1824
+ 3.12499939,-1,-1,-1,-1,-1,-1,-1,-1,-1
1825
+ 2.27272705,-1,5.63,-1,-1,-1,-1,-1,-1,-1
1826
+ 1.38888885,-1,5.03,-1,-1,-1,-1,-1,-1,-1
1827
+ 2.27272705,-1,5.96,-1,-1,-1,-1,-1,-1,-1
1828
+ 2.77777679,-1,6.7,-1,-1,-1,-1,-1,-1,-1
1829
+ 2.27272705,-1,7.44,-1,-1,-1,-1,-1,-1,-1
1830
+ 2.49999939,-1,6.57,-1,-1,-1,-1,-1,-1,-1
1831
+ 2.27272827,-1,7.6038,-1,-1,-1,-1,-1,-1,-1
1832
+ 2.5,-1,7.37,-1,-1,-1,-1,-1,-1,-1
1833
+ 3.12500061,-1,10.79,-1,-1,-1,-1,-1,-1,-1
1834
+ 2.77777771,-1,9.09121,-1,-1,-1,-1,-1,-1,-1
1835
+ 3.57142883,-1,9.89161,-1,-1,-1,-1,-1,-1,-1
1836
+ 2.50000015,-1,10.92,-1,-1,-1,-1,-1,-1,-1
1837
+ 2.08333328,-1,9.2713,-1,-1,-1,-1,-1,-1,-1
1838
+ 2.77778046,-1,5.96,-1,-1,-1,-1,-1,-1,-1
1839
+ 2.50000092,-1,6.3,-1,-1,-1,-1,-1,-1,-1
1840
+ 3.12500061,-1,8.78,-1,-1,-1,-1,-1,-1,-1
1841
+ 2.77777679,-1,7.97,-1,-1,-1,-1,-1,-1,-1
1842
+ 1.78571442,-1,6.43,-1,-1,-1,-1,-1,-1,-1
1843
+ 3.57142883,-1,13.0065,-1,-1,-1,-1,-1,-1,-1
1844
+ 2.27272705,-1,9.6048,-1,-1,-1,-1,-1,-1,-1
1845
+ 3.12500061,-1,7.1,-1,-1,-1,-1,-1,-1,-1
1846
+ -1,-1,13.29998,-1,-1,-1,-1,-1,-1,-1
1847
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1848
+ 2.08333435,-1,8.61097,-1,-1,-1,-1,-1,-1,-1
1849
+ 2.08333374,-1,7.24,-1,-1,-1,-1,-1,-1,-1
1850
+ 2.27272705,-1,5.0025,-1,-1,-1,-1,-1,-1,-1
1851
+ 2.08333328,-1,4.2688,-1,-1,-1,-1,-1,-1,-1
1852
+ 2.27272827,-1,3.8686,-1,-1,-1,-1,-1,-1,-1
1853
+ 1.92307693,-1,2.7347,-1,-1,-1,-1,-1,-1,-1
1854
+ 2.27272705,-1,5.5361,-1,-1,-1,-1,-1,-1,-1
1855
+ 1.78571442,-1,5.336,-1,-1,-1,-1,-1,-1,-1
1856
+ 2.49999939,-1,3.96865,-1,-1,-1,-1,-1,-1,-1
1857
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1858
+ 2.49999939,-1,4.2688,-1,-1,-1,-1,-1,-1,-1
1859
+ 4.16666687,-1,-1,-1,-1,-1,-1,-1,-1,-1
1860
+ 2.77777771,-1,-1,-1,-1,-1,-1,-1,-1,-1
1861
+ 2.08333328,-1,-1,-1,-1,-1,-1,-1,-1,-1
1862
+ 4.16666656,-1,-1,-1,-1,-1,-1,-1,-1,-1
1863
+ 3.12500061,-1,3.26163,-1,-1,-1,-1,-1,-1,-1
1864
+ 0.07552871,-1,-1,-1,-1,-1,-1,-1,-1,-1
1865
+ 2.08333328,-1,2.2678,-1,-1,-1,-1,-1,-1,-1
1866
+ 1.92307648,-1,6.2698,-1,-1,-1,-1,-1,-1,-1
1867
+ 1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1868
+ 2.77777679,-1,-1,-1,-1,-1,-1,-1,-1,-1
1869
+ 1.78571442,-1,6.6033,-1,-1,-1,-1,-1,-1,-1
1870
+ 1.92307693,-1,-1,-1,-1,-1,-1,-1,-1,-1
1871
+ 2.27272705,-1,-1,-1,-1,-1,-1,-1,-1,-1
1872
+ 2.77777863,-1,-1,-1,-1,-1,-1,-1,-1,-1
1873
+ 1.78571365,-1,5.336,-1,-1,-1,-1,-1,-1,-1
1874
+ 1.66666656,-1,3.335,-1,-1,-1,-1,-1,-1,-1
1875
+ 2.08333435,-1,-1,-1,-1,-1,-1,-1,-1,-1
1876
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1877
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1878
+ 1.56250031,-1,0.65366,-1,-1,-1,-1,-1,-1,-1
1879
+ 1.66666687,-1,2.27447,-1,-1,-1,-1,-1,-1,-1
1880
+ 2.08333328,-1,9.6048,-1,-1,-1,-1,-1,-1,-1
1881
+ -1,-1,14.94,-1,-1,-1,-1,-1,-1,-1
1882
+ 1.56250031,-1,16.68,-1,-1,-1,-1,-1,-1,-1
1883
+ -1,-1,9.55811,-1,-1,-1,-1,-1,-1,-1
1884
+ 1.78571594,-1,10.37852,-1,-1,-1,-1,-1,-1,-1
1885
+ 0.96153847,-1,-1,-1,-1,-1,-1,-1,-1,-1
1886
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
1887
+ 2.27272705,-1,24.012,-1,-1,-1,-1,-1,-1,-1
1888
+ 1.92307785,-1,55.361,-1,-1,-1,-1,-1,-1,-1
1889
+ 1.78571442,-1,3.5351,-1,-1,-1,-1,-1,-1,-1
1890
+ 1.92307693,-1,10.0717,-1,-1,-1,-1,-1,-1,-1
1891
+ 2.77777863,-1,6.2698,-1,-1,-1,-1,-1,-1,-1
1892
+ 3.12500305,-1,7.7372,-1,-1,-1,-1,-1,-1,-1
1893
+ 2.27272766,-1,6.2031,-1,-1,-1,-1,-1,-1,-1
1894
+ 0,-1,0.76038,-1,-1,-1,-1,-1,-1,-1
1895
+ 0,-1,-1,-1,-1,-1,-1,-1,-1,-1
1896
+ 2.77777863,-1,6.35651,-1,-1,-1,-1,-1,-1,-1
1897
+ 0,-1,11.70585,-1,-1,-1,-1,-1,-1,-1
1898
+ 1.66667084,-1,1.52076,-1,-1,-1,-1,-1,-1,-1
1899
+ 0,-1,-1,-1,-1,-1,-1,-1,-1,-1
1900
+ 0.13157894,-1,1.0005,-1,-1,-1,-1,-1,-1,-1
1901
+ 0,-1,-1,-1,-1,-1,-1,-1,-1,-1
1902
+ 0.5434782,-1,1.59,-1,-1,-1,-1,-1,-1,-1
1903
+ 1.47058807,-1,10.2051,10.4,-1,-1,-1,-1,-1,-1
1904
+ 1.1904763,-1,10.39186,12.6,-1,-1,-1,-1,-1,-1
1905
+ 2.27272705,-1,10.37185,16.2,-1,-1,-1,-1,-1,-1
1906
+ 1.92307693,-1,12.03935,15.6,-1,-1,-1,-1,-1,-1
1907
+ 2.50000092,-1,11.29231,22.6,-1,-1,-1,-1,-1,-1
1908
+ 2.77777679,-1,10.17175,15.6,-1,-1,-1,-1,-1,-1
1909
+ -1,-1,10.42521,-1,-1,-1,-1,-1,-1,-1
1910
+ 1.78571442,-1,11.77255,20.2,-1,-1,-1,-1,-1,-1
1911
+ 1.56250031,-1,13.68017,13.2,-1,-1,-1,-1,-1,-1
1912
+ 2.08333328,-1,10.1384,15.4,-1,-1,-1,-1,-1,-1
1913
+ 1.66666687,-1,10.84542,12.2,-1,-1,-1,-1,-1,-1
1914
+ 2.27272827,-1,13.97365,19.6,-1,-1,-1,-1,-1,-1
1915
+ 1.31578949,-1,12.2061,19.4,-1,-1,-1,-1,-1,-1
1916
+ 2.27272705,-1,12.17275,9.4,-1,-1,-1,-1,-1,-1
1917
+ 2.50000092,-1,21.8776,11,-1,-1,-1,-1,-1,-1
1918
+ 1.92307693,-1,15.6078,12.2,-1,-1,-1,-1,-1,-1
1919
+ 1.31578995,-1,9.76488,14,-1,-1,-1,-1,-1,-1
1920
+ 1.38889023,-1,12.37952,11.4,-1,-1,-1,-1,-1,-1
1921
+ 2.27272949,-1,24.12,-1,-1,-1,-1,-1,-1,-1
1922
+ 2.77783203,-1,25.39,-1,-1,-1,-1,-1,-1,-1
1923
+ 2.77777679,-1,36.78,-1,-1,-1,-1,-1,-1,-1
1924
+ 0.874125874,98,5.4,12.5,-1,-1,-1,-1,-1,2
1925
+ 1.461988304,113,5.51,7.6,-1,-1,-1,-1,-1,2
1926
+ 0.769230769,102,5.76,11.2,-1,-1,-1,-1,-1,2
1927
+ -1,-1,-1,5.7,-1,-1,-1,-1,-1,2
1928
+ 1.179245283,170,5.2,10.6,-1,-1,-1,-1,-1,2
1929
+ 1.012145749,169,5.81,9.8,-1,-1,-1,-1,-1,2
1930
+ 0.764525994,69,5.49,10.4,-1,-1,-1,-1,-1,2
1931
+ 5.555555556,103,3.04,9.8,-1,-1,-1,-1,-1,2
1932
+ 0.448028674,66,-1,5.2,-1,-1,-1,-1,-1,2
1933
+ 0.69637883,75,-1,2.8,-1,-1,-1,-1,-1,2
1934
+ 1.207729469,86,-1,5.7,-1,-1,-1,-1,-1,2
1935
+ 1,156,-1,7.9,-1,-1,-1,-1,-1,2
1936
+ 1.059322034,112,5.13,8.9,-1,-1,-1,-1,-1,2
1937
+ 0.58411215,127,4.73,4.2,-1,-1,-1,-1,-1,2
1938
+ 0.549450549,110,4.49,5.8,-1,-1,-1,-1,-1,2
1939
+ 0.896057348,113,2.74,5,-1,-1,-1,-1,-1,2
1940
+ 0.883392226,101,-1,3.7,-1,-1,-1,-1,-1,2
1941
+ 2.252252252,123,4.5,7.7,-1,-1,-1,-1,-1,2
1942
+ 0.939849624,99,5.28,4.6,-1,-1,-1,-1,-1,2
1943
+ 0.814332248,92,-1,4,-1,-1,-1,-1,-1,2
1944
+ -1,-1,-1,10,-1,-1,-1,-1,-1,2
1945
+ -1,-1,-1,8.9,-1,-1,-1,-1,-1,2
1946
+ 0.623441397,171,5.64,4.2,-1,-1,-1,-1,-1,2
1947
+ 1.308900524,233,5.73,10.2,-1,-1,-1,-1,-1,2
1948
+ -1,-1,-1,9.9,-1,-1,-1,-1,-1,2
1949
+ 0.529661017,91,4.4,9.2,-1,-1,-1,-1,-1,2
1950
+ 0.865051903,163,5.46,8.1,-1,-1,-1,-1,-1,2
1951
+ 1.146788991,107,4.86,6.9,-1,-1,-1,-1,-1,2
1952
+ 1.436781609,171,-1,5.5,-1,-1,-1,-1,-1,2
1953
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,2
1954
+ 0.9765625,103,4.6,3,-1,-1,-1,-1,-1,2
1955
+ 0.865051903,69,5.54,9.5,-1,-1,-1,-1,-1,2
1956
+ 1.237623762,119,5.18,7.5,-1,-1,-1,-1,-1,2
1957
+ 0.830564784,119,4.8,4.2,-1,-1,-1,-1,-1,2
1958
+ 0.922509225,125,4.15,4.3,-1,-1,-1,-1,-1,2
1959
+ 1.366120219,136,5.43,1.9,-1,-1,-1,-1,-1,2
1960
+ 1.086956522,179,6.7,9.2,-1,-1,-1,-1,-1,2
1961
+ 0.883392226,77,-1,16.7,-1,-1,-1,-1,-1,2
1962
+ 1.19047619,98,-1,7.4,-1,-1,-1,-1,-1,2
1963
+ 1.515151515,59,-1,8.2,-1,-1,-1,-1,-1,2
1964
+ 0.762195122,70,-1,5.4,-1,-1,-1,-1,-1,2
1965
+ 2.100840336,192,-1,3,-1,-1,-1,-1,-1,2
1966
+ 1.046025105,162,-1,6.2,-1,-1,-1,-1,-1,2
1967
+ 0.902527076,103,-1,6.8,-1,-1,-1,-1,-1,2
1968
+ 0.411184211,167,-1,7.5,-1,-1,-1,-1,-1,2
1969
+ 0.478011472,92,-1,6.5,-1,-1,-1,-1,-1,2
1970
+ -1,-1,-1,4.2,-1,-1,-1,-1,-1,2
1971
+ -1,-1,-1,8.1,-1,-1,-1,-1,-1,2
1972
+ 1.602564103,102,-1,5,-1,-1,-1,-1,-1,2
1973
+ 1.068376068,128,-1,6.6,-1,-1,-1,-1,-1,2
1974
+ 0.710227273,87,-1,6.9,-1,-1,-1,-1,-1,2
1975
+ 0.151607035,95,-1,6.6,-1,-1,-1,-1,-1,2
1976
+ 0.692520776,139,-1,8.9,-1,-1,-1,-1,-1,2
1977
+ 0.704225352,192,-1,3.1,-1,-1,-1,-1,-1,2
1978
+ 0.224618149,107,-1,4.1,-1,-1,-1,-1,-1,2
1979
+ 0.954198473,92,11.68,10.1,-1,-1,-1,-1,-1,2
1980
+ 0.160565189,71,1.48,2.2,-1,-1,-1,-1,-1,2
1981
+ 0.862068966,32,2.24,4.1,-1,-1,-1,-1,-1,2
1982
+ 0.637755102,117,3.41,6.1,-1,-1,-1,-1,-1,2
1983
+ 1.396648045,117,9.64,10.7,-1,-1,-1,-1,-1,2
1984
+ 1.012145749,43,11.01,11.9,-1,-1,-1,-1,-1,2
1985
+ 0.675675676,111,4.7,6.6,-1,-1,-1,-1,-1,2
1986
+ 0.741839763,123,10.08,9.6,-1,-1,-1,-1,-1,2
1987
+ 1.282051282,98,9.21,13.3,-1,-1,-1,-1,-1,2
1988
+ 0.896057348,36,9,10.8,-1,-1,-1,-1,-1,2
1989
+ -1,-1,-1,9.3,-1,-1,-1,-1,-1,2
1990
+ 1.033057851,88,11.46,9,-1,-1,-1,-1,-1,2
1991
+ 0.737463127,89,9.6,4.3,-1,-1,-1,-1,-1,2
1992
+ 0.708215297,75,1.55,2.8,-1,-1,-1,-1,-1,2
1993
+ 0.909090909,79,8.6,19.7,-1,-1,-1,-1,-1,2
1994
+ 2.577319588,66,8.84,8,-1,-1,-1,-1,-1,2
1995
+ 1.644736842,64,2.4,8.6,-1,-1,-1,-1,-1,2
1996
+ 0.704225352,188,1.76,9.1,-1,-1,-1,-1,-1,2
1997
+ 1.082251082,52,9.6,8.9,-1,-1,-1,-1,-1,2
1998
+ 0.965250965,110,9.91,7.4,-1,-1,-1,-1,-1,2
1999
+ 1.037344398,54,8.74,7.5,-1,-1,-1,-1,-1,2
2000
+ 0.909090909,77,6.66,5.9,-1,-1,-1,-1,-1,2
2001
+ 3.472222222,75,10.69,8,-1,-1,-1,-1,-1,2
2002
+ 1.773049645,73,3.5,4.1,-1,-1,-1,-1,-1,2
2003
+ 0.853242321,92,8.09,7.1,-1,-1,-1,-1,-1,2
2004
+ 0.943396226,64,3.75,13.5,-1,-1,-1,-1,-1,2
2005
+ 0.744047619,137,5.65,8.5,-1,-1,-1,-1,-1,2
2006
+ 0.637755102,65,8.03,4.1,-1,-1,-1,-1,-1,2
2007
+ 0.582750583,83,10.95,12.5,-1,-1,-1,-1,-1,2
2008
+ 0.672043011,58,8.2,9.3,-1,-1,-1,-1,-1,2
2009
+ 1.131221719,71,1.91,6.1,-1,-1,-1,-1,-1,2
2010
+ 0.477099237,63,3.06,9.1,-1,-1,-1,-1,-1,2
2011
+ 0.755287009,41,5.08,8.7,-1,-1,-1,-1,-1,2
2012
+ -1,-1,-1,10.1,-1,-1,-1,-1,-1,2
2013
+ 1.201923077,73,3.46,10.8,-1,-1,-1,-1,-1,2
2014
+ 0.529661017,77,1.51,5,-1,-1,-1,-1,-1,2
2015
+ 0.744047619,104,2.6,5.5,-1,-1,-1,-1,-1,2
2016
+ 0.512295082,39,1.81,4.6,-1,-1,-1,-1,-1,2
2017
+ 0.511247444,45,3.41,5.9,-1,-1,-1,-1,-1,2
2018
+ 1.037344398,74,3.03,7,-1,-1,-1,-1,-1,2
2019
+ 0.569476082,-1,2.29,8.3,-1,-1,-1,-1,-1,2
2020
+ 0.626566416,96,2.1,2.6,-1,-1,-1,-1,-1,2
2021
+ 2.604166667,58,3.2,6.3,-1,-1,-1,-1,-1,2
2022
+ 0.440917108,65,0.91,3.3,-1,-1,-1,-1,-1,2
2023
+ 6.41025641,52,3.29,5.7,-1,-1,-1,-1,-1,2
2024
+ 0.5,79,1.85,6.3,-1,-1,-1,-1,-1,2
2025
+ 0.946969697,172,2.86,6.7,-1,-1,-1,-1,-1,2
2026
+ 0.889679715,91,2.53,9.1,-1,-1,-1,-1,-1,2
2027
+ 1.016260163,81,2.25,5.7,-1,-1,-1,-1,-1,2
2028
+ 1.322751323,38,2.18,6.6,-1,-1,-1,-1,-1,2
2029
+ 0.302297461,90,12.53,12.7,-1,-1,-1,-1,-1,2
2030
+ 0.37593985,170,3.5,10.3,-1,-1,-1,-1,-1,2
2031
+ 1.38121547,106,7.19,6.6,-1,-1,-1,-1,-1,2
2032
+ 0.698324022,147,4.71,3.2,-1,-1,-1,-1,-1,2
2033
+ 1.712328767,159,2.83,2,-1,-1,-1,-1,-1,2
2034
+ 0.373134328,93,4.41,10.1,-1,-1,-1,-1,-1,2
2035
+ 0.312109863,53,3.2,3.1,-1,-1,-1,-1,-1,2
2036
+ 1.19047619,124,3.45,4.1,-1,-1,-1,-1,-1,2
2037
+ 0.481695568,147,2.61,2,-1,-1,-1,-1,-1,2
2038
+ 0.850340136,144,9.9,7.3,-1,-1,-1,-1,-1,2
2039
+ 0.814332248,59,6.5,6.2,-1,-1,-1,-1,-1,2
2040
+ 0.889679715,115,3.39,9.7,-1,-1,-1,-1,-1,2
2041
+ 0.943396226,121,4.76,5.8,-1,-1,-1,-1,-1,2
2042
+ 0.704225352,126,8.21,6.1,-1,-1,-1,-1,-1,2
2043
+ 0.227066303,81,1.05,5.1,-1,-1,-1,-1,-1,2
2044
+ -1,-1,-1,4,-1,-1,-1,-1,-1,2
2045
+ -1,-1,-1,3.6,-1,-1,-1,-1,-1,2
2046
+ 1.937984496,94,6.16,10,-1,-1,-1,-1,-1,2
2047
+ 0.737463127,112,2.84,6.7,-1,-1,-1,-1,-1,2
2048
+ -1,-1,-1,8.1,-1,-1,-1,-1,-1,2
2049
+ 0.769230769,123,2.63,2.9,-1,-1,-1,-1,-1,2
2050
+ 0.591016548,161,3.4,3.5,-1,-1,-1,-1,-1,2
2051
+ 0.984251969,159,2.54,6,-1,-1,-1,-1,-1,2
2052
+ 0.722543353,119,3.9,8.6,-1,-1,-1,-1,-1,2
2053
+ -1,-1,-1,2.6,-1,-1,-1,-1,-1,2
2054
+ 1.322751323,119,9.74,10.1,-1,-1,-1,-1,-1,2
2055
+ 0.73964497,137,7.74,7.1,-1,-1,-1,-1,-1,2
2056
+ 0.629722922,118,3.2,3.6,-1,-1,-1,-1,-1,2
2057
+ 0.444839858,144,3.28,5.6,-1,-1,-1,-1,-1,2
2058
+ 0.645994832,123,3,3.5,-1,-1,-1,-1,-1,2
2059
+ 0.625,115,3.39,5,-1,-1,-1,-1,-1,2
2060
+ 0.771604938,73,4.23,5.1,-1,-1,-1,-1,-1,2
2061
+ 0.801282051,135,9.63,7.8,-1,-1,-1,-1,-1,2
2062
+ 0.596658711,125,3.2,3.6,-1,-1,-1,-1,-1,2
2063
+ -1,-1,-1,6.6,-1,-1,-1,-1,-1,2
2064
+ 0.434782609,99,0.56,2,-1,-1,-1,-1,-1,2
2065
+ 0.556792873,101,3.38,4.5,-1,-1,-1,-1,-1,2
2066
+ 2.450980392,134,3.2,2.5,-1,-1,-1,-1,-1,2
2067
+ 3.676470588,145,7.4,5.1,-1,-1,-1,-1,-1,2
2068
+ 0.570776256,100,7.18,12.6,-1,-1,-1,-1,-1,2
2069
+ 0.666666667,132,8.69,8.4,-1,-1,-1,-1,-1,2
2070
+ 0.720461095,84,8.5,6,-1,-1,-1,-1,-1,2
2071
+ 0.683060109,116,2.9,2,-1,-1,-1,-1,-1,2
2072
+ 1.308900524,107,8.78,7.5,-1,-1,-1,-1,-1,2
2073
+ 0.954198473,101,10.41,8.7,-1,-1,-1,-1,-1,2
2074
+ 0.482625483,72,7.21,4.2,-1,-1,-1,-1,-1,2
2075
+ 0.350140056,131,2.15,7.5,-1,-1,-1,-1,-1,2
2076
+ 0.886524823,117,3.64,5.2,-1,-1,-1,-1,-1,2
2077
+ 0.431034483,102,3,6.3,-1,-1,-1,-1,-1,2
2078
+ 0.614250614,36,1.2,1.4,-1,-1,-1,-1,-1,2
2079
+ -1,-1,-1,-1,-1,-1,-1,-1,-1,2
2080
+ 0.499001996,75,2.86,4.1,-1,-1,-1,-1,-1,2
2081
+ 0.499001996,121,6.1,8,-1,-1,-1,-1,-1,2
2082
+ 0.452898551,125,4.45,7.8,-1,-1,-1,-1,-1,2
2083
+ 0.608272506,147,5.41,7.2,-1,-1,-1,-1,-1,2
2084
+ 0.672043011,132,3.4,7,-1,-1,-1,-1,-1,2
2085
+ -1,-1,5.43,7.6,-1,-1,-1,-1,-1,2
2086
+ 0.856164384,124,5.54,14,-1,-1,-1,-1,-1,2
2087
+ 0.748502994,207,6.4,15.1,-1,-1,-1,-1,-1,2
2088
+ 0.588235294,293,10.94,11.1,-1,-1,-1,-1,-1,2
2089
+ 0.516528926,214,6.19,26.8,-1,-1,-1,-1,-1,2
2090
+ -1,83,1.91,5.7,-1,-1,-1,-1,-1,2
2091
+ 0.672043011,254,2.14,20.9,-1,-1,-1,-1,-1,2
2092
+ 0.757575758,133,6.58,22.8,-1,-1,-1,-1,-1,2
2093
+ 0.419463087,172,6.4,10,-1,-1,-1,-1,-1,2
2094
+ 0.563063063,242,3.34,11.9,-1,-1,-1,-1,-1,2
2095
+ 0.503018109,167,4.94,25.3,-1,-1,-1,-1,-1,2
2096
+ 0.720461095,169,5.58,15.9,-1,-1,-1,-1,-1,2
2097
+ 0.672043011,224,7.69,24.1,-1,-1,-1,-1,-1,2
2098
+ -1,-1,-1,9.9,-1,-1,-1,-1,-1,2
2099
+ 0.441696113,163,1.79,5.7,-1,-1,-1,-1,-1,2
2100
+ 0.535331906,262,6.13,25.7,-1,-1,-1,-1,-1,2
2101
+ 0.778816199,194,3.54,11.9,-1,-1,-1,-1,-1,2
2102
+ 0.568181818,200,1.59,12.1,-1,-1,-1,-1,-1,2
2103
+ 0.657894737,262,1.59,8.2,-1,-1,-1,-1,-1,2
2104
+ 0.980392157,201,7.48,20,-1,-1,-1,-1,-1,2
2105
+ 0.441696113,163,2.13,10.4,-1,-1,-1,-1,-1,2
2106
+ 0.18089725,158,1.93,6.7,-1,-1,-1,-1,-1,2
2107
+ 0.883392226,139,6.6,19.6,-1,-1,-1,-1,-1,2
2108
+ 0.528541226,199,3.4,18.2,-1,-1,-1,-1,-1,2
2109
+ 0.497017893,170,2.31,9.2,-1,-1,-1,-1,-1,2
2110
+ 0.440917108,187,8.14,13.7,-1,-1,-1,-1,-1,2
2111
+ 0.950570342,196,5.11,20.8,-1,-1,-1,-1,-1,2
2112
+ 0.440140845,193,8.29,11.1,-1,-1,-1,-1,-1,2
2113
+ 0.459558824,206,6.58,19,-1,-1,-1,-1,-1,2
2114
+ 2.577319588,89,1.88,12.3,-1,-1,-1,-1,-1,2
2115
+ 0.644329897,148,7.76,20,-1,-1,-1,-1,-1,2
2116
+ 0.282167043,178,1.89,6.8,-1,-1,-1,-1,-1,2
2117
+ 0.796178344,168,5.84,19.6,-1,-1,-1,-1,-1,2
2118
+ 0.537634409,173,3.49,15.3,-1,-1,-1,-1,-1,2
2119
+ 0.766871166,193,5.33,14.7,-1,-1,-1,-1,-1,2
2120
+ 0.511247444,217,1.69,10.9,-1,-1,-1,-1,-1,2
2121
+ -1,-1,3.36,9,-1,-1,-1,-1,-1,2
2122
+ 0.335120643,133,1.71,4.8,-1,-1,-1,-1,-1,2
2123
+ 0.413907285,113,0.76,10.3,-1,-1,-1,-1,-1,2
2124
+ 0.672043011,162,3.26,13,-1,-1,-1,-1,-1,2
2125
+ 0.620347395,168,2.26,7.1,-1,-1,-1,-1,-1,2
2126
+ 0.547045952,180,2.78,11.2,-1,-1,-1,-1,-1,2
2127
+ 0.410509031,196,1.65,8.5,-1,-1,-1,-1,-1,2
2128
+ 0.373134328,100,1.58,8.2,-1,-1,-1,-1,-1,2
2129
+ 0.491159136,125,5.94,6.2,-1,-1,-1,-1,-1,2
2130
+ -1,-1,5.54,19.9,-1,-1,-1,-1,-1,2
2131
+ 0.535331906,196,5.43,11,-1,-1,-1,-1,-1,2
2132
+ 0.560538117,209,3.23,17,-1,-1,-1,-1,-1,-1
2133
+ 1.700680272,-1,-1,-1,-1,-1,-1,-1,-1,-1
2134
+ 0.609756098,-1,-1,-1,-1,-1,-1,-1,-1,-1
2135
+ 1.136363636,-1,-1,-1,-1,-1,-1,-1,-1,-1
2136
+ 0.408496732,-1,-1,-1,-1,-1,-1,-1,-1,-1
2137
+ 0.56561086,-1,-1,-1,-1,-1,-1,-1,-1,-1
2138
+ 0.451263538,-1,-1,-1,-1,-1,-1,-1,-1,-1
2139
+ 1.396648045,-1,-1,-1,-1,-1,-1,-1,-1,-1
2140
+ 3.012048193,-1,-1,-1,-1,-1,-1,-1,-1,-1
2141
+ 0.9765625,-1,-1,-1,-1,-1,-1,-1,-1,-1
2142
+ 1.552795031,-1,-1,-1,-1,-1,-1,-1,-1,-1
2143
+ 3.424657534,-1,-1,-1,-1,-1,-1,-1,-1,-1
2144
+ 1.953125,-1,-1,-1,-1,-1,-1,-1,-1,-1
2145
+ 1.344086022,-1,-1,-1,-1,-1,-1,-1,-1,-1
2146
+ 1.428571429,-1,-1,-1,-1,-1,-1,-1,-1,-1
2147
+ 3.378378378,-1,-1,-1,-1,-1,-1,-1,-1,-1
2148
+ 0.748502994,-1,-1,-1,-1,-1,-1,-1,-1,-1
2149
+ 0.980392157,-1,-1,-1,-1,-1,-1,-1,-1,-1
2150
+ 0.877192982,-1,-1,-1,-1,-1,-1,-1,-1,-1
2151
+ 1.445086705,-1,-1,-1,-1,-1,-1,-1,-1,-1
2152
+ 1.131221719,-1,-1,-1,-1,-1,-1,-1,-1,-1
2153
+ 1.644736842,-1,-1,-1,-1,-1,-1,-1,-1,-1
2154
+ 0.850340136,-1,-1,-1,-1,-1,-1,-1,-1,-1
2155
+ 2.192982456,-1,-1,-1,-1,-1,-1,-1,-1,-1
2156
+ 1.231527094,-1,-1,-1,-1,-1,-1,-1,-1,-1
2157
+ 2.450980392,-1,-1,-1,-1,-1,-1,-1,-1,-1
2158
+ 1.655629139,-1,-1,-1,-1,-1,-1,-1,-1,-1
2159
+ 2.066115702,-1,-1,-1,-1,-1,-1,-1,-1,-1
2160
+ 0.602409639,-1,-1,-1,-1,-1,-1,-1,-1,-1
2161
+ 1.436781609,-1,-1,-1,-1,-1,-1,-1,-1,-1
2162
+ 1.315789474,-1,-1,-1,-1,-1,-1,-1,-1,-1
2163
+ 1.068376068,-1,-1,-1,-1,-1,-1,-1,-1,-1
2164
+ 0.896057348,-1,-1,-1,-1,-1,-1,-1,-1,-1
2165
+ 4.032258065,-1,-1,-1,-1,-1,-1,-1,-1,-1
2166
+ 0.677506775,-1,-1,-1,-1,-1,-1,-1,-1,-1
2167
+ 1.404494382,-1,-1,-1,-1,-1,-1,-1,-1,-1
2168
+ 1.479289941,-1,-1,-1,-1,-1,-1,-1,-1,-1
2169
+ 1.712328767,-1,-1,-1,-1,-1,-1,-1,-1,-1
2170
+ 1.533742331,-1,-1,-1,-1,-1,-1,-1,-1,-1
2171
+ 0.291036088,-1,-1,-1,-1,-1,-1,-1,-1,-1
2172
+ 0.741839763,-1,-1,-1,-1,-1,-1,-1,-1,-1
Dockerfile ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM python:3.11-slim
2
+
3
+ WORKDIR /app
4
+
5
+ ENV PYTHONDONTWRITEBYTECODE=1
6
+ ENV PYTHONUNBUFFERED=1
7
+ ENV UV_PROJECT_ENVIRONMENT=/app/.venv
8
+ ENV PATH="/app/.venv/bin:/root/.local/bin:$PATH"
9
+
10
+ RUN apt-get update && apt-get install -y --no-install-recommends \
11
+ curl ca-certificates \
12
+ && rm -rf /var/lib/apt/lists/*
13
+
14
+ RUN curl -LsSf https://astral.sh/uv/install.sh | sh
15
+
16
+ COPY pyproject.toml uv.lock ./
17
+ RUN uv sync --frozen --no-dev
18
+
19
+ COPY . .
20
+
21
+ EXPOSE 8501
22
+
23
+ CMD ["uv", "run", "streamlit", "run", "scripts/app.py", "--server.address=0.0.0.0", "--server.port=8501"]
README.md ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: MVPpred Lizard Performance Predictor
3
+ emoji: 🦎
4
+ colorFrom: green
5
+ colorTo: blue
6
+ sdk: docker
7
+ app_port: 8501
8
+ ---
9
+
10
+ # MVPpred
11
+
12
+ ## Local setup
13
+
14
+ ```bash
15
+ curl -LsSf https://astral.sh/uv/install.sh | sh
16
+
17
+ source .venv/bin/activate
18
+ uv run python scripts/train_eval.py
19
+
20
+ uv run python scripts/train_final.py
21
+
22
+ uv run streamlit run scripts/app.py
23
+
24
+ uv add numpy pandas scikit-learn scipy xgboost joblib mlflow streamlit
25
+
26
+
27
+
28
+ uv run hf upload-large-folder wasicse/mvppred-artifacts ./artifacts_inference --repo-type model
29
+
30
+
31
+ # 1) Initialize a new git repo
32
+ git init
33
+ git branch -M main
34
+
35
+
36
+ # 3) Add only the code/config files
37
+ git add .
38
+
39
+ # 4) Verify no huge joblib files are staged
40
+ git status
41
+ git ls-files | grep joblib
42
+
43
+ # 5) Commit
44
+ git commit -m "Initial commit"
45
+
46
+ # 6) Add the Hugging Face Space remote
47
+ git remote add hf https://huggingface.co/spaces/wasicse/mvppred
48
+
49
+ # 7) Push
50
+
51
+ export HF_TOKEN=''
52
+ git remote set-url hf https://wasicse:${HF_TOKEN}@huggingface.co/spaces/wasicse/mvppred
53
+ git push -u hf main --force
54
+ git remote set-url hf https://huggingface.co/spaces/wasicse/mvppred
artifacts_inference/calibration_conformal.json ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "sprint": {
3
+ "n": 135,
4
+ "q90": 0.8774047696217057,
5
+ "q95": 1.213653001435542
6
+ },
7
+ "endurance": {
8
+ "n": 31,
9
+ "q90": 120.5180334848763,
10
+ "q95": 175.63520989781043
11
+ },
12
+ "bite": {
13
+ "n": 180,
14
+ "q90": 2.84168517448461,
15
+ "q95": 3.8459191878956966
16
+ },
17
+ "distance_capacity": {
18
+ "n": 54,
19
+ "q90": 6.94923589121681,
20
+ "q95": 10.550517756551393
21
+ },
22
+ "jump_distance": {
23
+ "n": 13,
24
+ "q90": 0.03936990855142531,
25
+ "q95": 0.041360802361016226
26
+ },
27
+ "jump_vel": {
28
+ "n": 13,
29
+ "q90": 0.07586575647689049,
30
+ "q95": 0.0800644317260458
31
+ },
32
+ "jump_accel": {
33
+ "n": 13,
34
+ "q90": 4.334752564040341,
35
+ "q95": 6.061086872019658
36
+ },
37
+ "jump_power": {
38
+ "n": 22,
39
+ "q90": 6.649229532076156,
40
+ "q95": 8.358764372458074
41
+ },
42
+ "angle": {
43
+ "n": 7,
44
+ "q90": 12.796379747461275,
45
+ "q95": 13.738659813937012
46
+ }
47
+ }
artifacts_inference/manifest.csv ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ target,knn_k,path
2
+ sprint,84,artifacts_inference/sprint_bundle.joblib
3
+ endurance,154,artifacts_inference/endurance_bundle.joblib
4
+ bite,57,artifacts_inference/bite_bundle.joblib
5
+ distance_capacity,25,artifacts_inference/distance_capacity_bundle.joblib
6
+ jump_distance,46,artifacts_inference/jump_distance_bundle.joblib
7
+ jump_vel,16,artifacts_inference/jump_vel_bundle.joblib
8
+ jump_accel,29,artifacts_inference/jump_accel_bundle.joblib
9
+ jump_power,165,artifacts_inference/jump_power_bundle.joblib
10
+ angle,34,artifacts_inference/angle_bundle.joblib
artifacts_inference/missing_rate.json ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "sprint": 0.3988945186549977,
3
+ "endurance": 0.8433901427913404,
4
+ "bite": 0.18977429755872868,
5
+ "distance_capacity": 0.7425149700598802,
6
+ "jump_distance": 0.9295255642561032,
7
+ "jump_vel": 0.9295255642561032,
8
+ "jump_accel": 0.9295255642561032,
9
+ "jump_power": 0.8737908797789037,
10
+ "angle": 0.9649930907415938
11
+ }
pyproject.toml ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [project]
2
+ name = "mvppred"
3
+ version = "0.1.0"
4
+ description = "Add your description here"
5
+ readme = "README.md"
6
+ requires-python = ">=3.9"
7
+ dependencies = [
8
+ "huggingface-hub>=1.8.0",
9
+ "joblib>=1.5.3",
10
+ "mlflow>=3.1.4",
11
+ "numpy>=2.0.2",
12
+ "pandas>=2.3.3",
13
+ "scikit-learn>=1.6.1",
14
+ "scipy>=1.13.1",
15
+ "streamlit>=1.50.0",
16
+ "xgboost>=2.1.4",
17
+ ]
scripts/app.py ADDED
@@ -0,0 +1,223 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ import sys
3
+ from pathlib import Path
4
+
5
+ import joblib
6
+ import numpy as np
7
+ import pandas as pd
8
+ import streamlit as st
9
+ from huggingface_hub import hf_hub_download
10
+
11
+ ARTIFACT_REPO = "wasicse/mvppred-artifacts"
12
+ ARTIFACT_FILES = [
13
+ "angle_bundle.joblib",
14
+ "bite_bundle.joblib",
15
+ "distance_capacity_bundle.joblib",
16
+ "endurance_bundle.joblib",
17
+ "jump_accel_bundle.joblib",
18
+ "jump_distance_bundle.joblib",
19
+ "jump_power_bundle.joblib",
20
+ "jump_vel_bundle.joblib",
21
+ "sprint_bundle.joblib",
22
+ ]
23
+
24
+ @st.cache_resource
25
+ def ensure_artifacts():
26
+ outdir = Path("artifacts_inference")
27
+ outdir.mkdir(exist_ok=True)
28
+
29
+ for name in ARTIFACT_FILES:
30
+ target = outdir / name
31
+ if not target.exists():
32
+ downloaded = hf_hub_download(
33
+ repo_id=ARTIFACT_REPO,
34
+ filename=name,
35
+ repo_type="model",
36
+ )
37
+ target.write_bytes(Path(downloaded).read_bytes())
38
+
39
+ ensure_artifacts()
40
+
41
+ # Make sure project root is on PYTHONPATH (so src/... imports work)
42
+ ROOT = Path(__file__).resolve().parents[1]
43
+ if str(ROOT) not in sys.path:
44
+ sys.path.insert(0, str(ROOT))
45
+
46
+ from infer import predict_with_confidence
47
+
48
+ st.set_page_config(page_title="Lizard Performance Predictor", layout="wide")
49
+ st.title("MVPpred: Lizard Performance Predictor")
50
+ st.caption("Enter phenotypic features manually (use -1 for missing) and view predictions + confidence.")
51
+
52
+ # -------------------------
53
+ # Hardcoded config (remove widgets)
54
+ # -------------------------
55
+ BUNDLE_DIR = "artifacts_inference" # <-- set once here
56
+ INTERVAL = "q90" # <-- set once here ("q90" or "q95")
57
+
58
+ # -------------------------
59
+ # Cache model bundles (huge speedup)
60
+ # -------------------------
61
+ @st.cache_resource
62
+ def load_bundle(path: str):
63
+ return joblib.load(path)
64
+
65
+ # -------------------------
66
+ # Load available targets
67
+ # -------------------------
68
+ if not os.path.isdir(BUNDLE_DIR):
69
+ st.error(f"Bundle directory not found: {BUNDLE_DIR}")
70
+ st.stop()
71
+
72
+ bundle_files = sorted([f for f in os.listdir(BUNDLE_DIR) if f.endswith("_bundle.joblib")])
73
+ if not bundle_files:
74
+ st.error("No *_bundle.joblib files found in bundle directory.")
75
+ st.stop()
76
+
77
+ targets = [f.replace("_bundle.joblib", "") for f in bundle_files]
78
+ selected_targets = st.multiselect("Targets to predict", targets, default=targets)
79
+
80
+ st.divider()
81
+
82
+ # -------------------------
83
+ # Default example sample (your provided row)
84
+ # -------------------------
85
+ default_sample = {
86
+ "taxon": 69,
87
+ "genus": 22,
88
+ "species": 68,
89
+ "sex_num": 0, # 0/1 coding in your table
90
+ "mass": 3.04,
91
+ "svl": 52.32,
92
+ "hl": 12.905,
93
+ "hw": -1.0,
94
+ "hh": -1.0,
95
+ "femur": 10.675,
96
+ "tibia": 8.8325,
97
+ "metat": 4.23,
98
+ "hindtoe": 11.37,
99
+ "humerus": 5.365,
100
+ "radius": 6.31,
101
+ "metac": 2.3175,
102
+ "foretoe": 5.8125,
103
+ "tail": 37.265,
104
+ }
105
+
106
+ st.subheader("Enter one sample")
107
+
108
+ with st.form("manual_input_form"):
109
+ # Optional taxonomy fields (kept for display; model may ignore them)
110
+ c0, c1, c2, c3 = st.columns(4)
111
+ with c0:
112
+ taxon = st.number_input("taxon", value=int(default_sample["taxon"]))
113
+ with c1:
114
+ genus = st.number_input("genus", value=int(default_sample["genus"]))
115
+ with c2:
116
+ species = st.number_input("species", value=int(default_sample["species"]))
117
+ with c3:
118
+ # Keep your original m/f, but prefill from sex_num (0 -> m, 1 -> f)
119
+ default_sex = "m" if int(default_sample["sex_num"]) == 0 else "f"
120
+ sex = st.selectbox("sex (m/f)", ["m", "f"], index=0 if default_sex == "m" else 1)
121
+
122
+ col1, col2, col3 = st.columns(3)
123
+
124
+ with col1:
125
+ mass = st.number_input("mass", value=float(default_sample["mass"]))
126
+ svl = st.number_input("svl", value=float(default_sample["svl"]))
127
+ hl = st.number_input("hl", value=float(default_sample["hl"]))
128
+ hw = st.number_input("hw", value=float(default_sample["hw"]))
129
+ hh = st.number_input("hh", value=float(default_sample["hh"]))
130
+
131
+ with col2:
132
+ femur = st.number_input("femur", value=float(default_sample["femur"]))
133
+ tibia = st.number_input("tibia", value=float(default_sample["tibia"]))
134
+ metat = st.number_input("metat", value=float(default_sample["metat"]))
135
+ hindtoe = st.number_input("hindtoe", value=float(default_sample["hindtoe"]))
136
+
137
+ with col3:
138
+ humerus = st.number_input("humerus", value=float(default_sample["humerus"]))
139
+ radius = st.number_input("radius", value=float(default_sample["radius"]))
140
+ metac = st.number_input("metac", value=float(default_sample["metac"]))
141
+ foretoe = st.number_input("foretoe", value=float(default_sample["foretoe"]))
142
+ tail = st.number_input("tail", value=float(default_sample["tail"]))
143
+
144
+ run_btn = st.form_submit_button("Run predictions")
145
+
146
+ # -------------------------
147
+ # Run predictions (with progress)
148
+ # -------------------------
149
+ if run_btn:
150
+ if not selected_targets:
151
+ st.warning("Please select at least one target.")
152
+ st.stop()
153
+
154
+ # Build 1-row dataframe for the model (ONLY include columns used in training)
155
+ input_row = {
156
+ "sex": sex, # your pipeline expects m/f
157
+ "mass": mass,
158
+ "svl": svl,
159
+ "hl": hl,
160
+ "hw": hw,
161
+ "hh": hh,
162
+ "femur": femur,
163
+ "tibia": tibia,
164
+ "metat": metat,
165
+ "hindtoe": hindtoe,
166
+ "humerus": humerus,
167
+ "radius": radius,
168
+ "metac": metac,
169
+ "foretoe": foretoe,
170
+ "tail": tail,
171
+ }
172
+ df = pd.DataFrame([input_row])
173
+
174
+ progress = st.progress(0)
175
+ status = st.empty()
176
+
177
+ all_outputs = []
178
+ n = len(selected_targets)
179
+
180
+ for i, t in enumerate(selected_targets, start=1):
181
+ status.write(f"Running {t} ({i}/{n}) …")
182
+ path = os.path.join(BUNDLE_DIR, f"{t}_bundle.joblib")
183
+ bundle = load_bundle(path) # cached
184
+
185
+ out = predict_with_confidence(bundle, df, interval=INTERVAL)
186
+ out.insert(0, "target", t)
187
+ all_outputs.append(out.reset_index(drop=True))
188
+
189
+ progress.progress(i / n)
190
+
191
+ status.write("Prediction Complete.")
192
+ result = pd.concat(all_outputs, axis=0, ignore_index=True)
193
+
194
+ st.subheader("Predictions (with confidence)")
195
+ st.dataframe(result, use_container_width=True)
196
+
197
+ # st.subheader("Confidence summary")
198
+ # st.write(result["confidence_label"].value_counts(dropna=False))
199
+
200
+ # # Make per-target view optional (faster UI)
201
+ # show_cards = st.checkbox("Show per-target view", value=False)
202
+ # if show_cards:
203
+ # st.subheader("Per-target view")
204
+ # for _, row in result.iterrows():
205
+ # with st.expander(f"{row['target']} — {row['confidence_label']} (score={row['confidence_score']:.2f})"):
206
+ # st.write(
207
+ # {
208
+ # "prediction": float(row["prediction"]),
209
+ # "lower": float(row["lower"]) if np.isfinite(row["lower"]) else None,
210
+ # "upper": float(row["upper"]) if np.isfinite(row["upper"]) else None,
211
+ # "confidence_score": float(row["confidence_score"]),
212
+ # "confidence_label": row["confidence_label"],
213
+ # "note": row.get("note", ""),
214
+ # }
215
+ # )
216
+
217
+ csv_out = result.to_csv(index=False).encode("utf-8")
218
+ st.download_button(
219
+ "Download results CSV",
220
+ csv_out,
221
+ file_name="predictions_with_confidence.csv",
222
+ mime="text/csv",
223
+ )
scripts/infer.py ADDED
@@ -0,0 +1,165 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # src/infer.py
2
+ from __future__ import annotations
3
+ import numpy as np
4
+ import pandas as pd
5
+
6
+ def _ensure_cols(df: pd.DataFrame, cols: list[str]) -> pd.DataFrame:
7
+ """Add any missing columns in one concat (avoids fragmentation)."""
8
+ missing = [c for c in cols if c not in df.columns]
9
+ if not missing:
10
+ return df
11
+
12
+ add = pd.DataFrame(np.nan, index=df.index, columns=missing)
13
+ out = pd.concat([df, add], axis=1)
14
+ return out.copy() # defragment
15
+
16
+ def _base_model_preds(stacking_model, X: np.ndarray) -> np.ndarray:
17
+ """
18
+ Extract base estimator predictions from sklearn StackingRegressor (robustly).
19
+ Handles both:
20
+ - estimators_ : list of fitted estimators (most common)
21
+ - estimators : list of (name, estimator) pairs (pre-fit)
22
+ """
23
+ preds = []
24
+
25
+ # Prefer fitted estimators_
26
+ ests = getattr(stacking_model, "estimators_", None)
27
+ if ests is None:
28
+ # fallback to pre-fit definition (name, estimator)
29
+ ests = [e for e in getattr(stacking_model, "estimators", [])]
30
+
31
+ for item in ests or []:
32
+ # item may be an estimator OR (name, estimator)
33
+ est = item[1] if isinstance(item, (tuple, list)) and len(item) >= 2 else item
34
+
35
+ if est is None or est == "drop":
36
+ continue
37
+
38
+ try:
39
+ p = est.predict(X)
40
+ preds.append(np.asarray(p).reshape(-1))
41
+ except Exception:
42
+ pass
43
+
44
+ if not preds:
45
+ return np.zeros((X.shape[0], 1))
46
+
47
+ return np.column_stack(preds) # (n_samples, n_base)
48
+
49
+
50
+
51
+
52
+ def _safe_minmax_norm(x: np.ndarray) -> np.ndarray:
53
+ """Min-max normalize, but if constant vector -> zeros."""
54
+ x = np.asarray(x, dtype=float)
55
+ xmin = np.nanmin(x)
56
+ xmax = np.nanmax(x)
57
+ if not np.isfinite(xmin) or not np.isfinite(xmax) or (xmax - xmin) < 1e-12:
58
+ return np.zeros_like(x, dtype=float)
59
+ return (x - xmin) / (xmax - xmin)
60
+
61
+
62
+ def _norm_with_training_scale(x: np.ndarray, scale: float | None) -> np.ndarray:
63
+ """
64
+ Normalize with a training-derived scale (e.g., p95).
65
+ If scale missing/invalid -> fallback to minmax (but stable for 1 row).
66
+ """
67
+ x = np.asarray(x, dtype=float)
68
+ if scale is not None and np.isfinite(scale) and scale > 1e-12:
69
+ return np.clip(x / scale, 0.0, 1.0)
70
+ return _safe_minmax_norm(x)
71
+
72
+
73
+ def predict_with_confidence(bundle: dict, new_df: pd.DataFrame, interval: str = "q90") -> pd.DataFrame:
74
+ """
75
+ Returns a DF with prediction, interval, confidence_score, confidence_label, flags.
76
+ interval: 'q90' or 'q95'
77
+ """
78
+ model = bundle["model"]
79
+ imputer = bundle["imputer"]
80
+ impute_cols = bundle["impute_cols"]
81
+ feature_cols = bundle["feature_cols"]
82
+
83
+ calib = bundle.get("calibration", {}) # contains q90/q95, etc.
84
+ missing_rate = bundle.get("missing_rate", None)
85
+
86
+ # Replace sentinel missing
87
+ df = new_df.replace(-1, np.nan)
88
+ df = _ensure_cols(df, impute_cols)
89
+
90
+ # Impute
91
+ imputed = pd.DataFrame(
92
+ imputer.transform(df[impute_cols]),
93
+ columns=impute_cols,
94
+ index=df.index,
95
+ )
96
+
97
+ X = imputed[feature_cols].values
98
+ pred = model.predict(X)
99
+
100
+ # Conformal interval half-width
101
+ q = float(calib.get(interval, np.nan))
102
+ lower = pred - q if np.isfinite(q) else np.full_like(pred, np.nan)
103
+ upper = pred + q if np.isfinite(q) else np.full_like(pred, np.nan)
104
+
105
+ # ---- Confidence components ----
106
+
107
+ # 1) Disagreement across base estimators
108
+ base_preds = _base_model_preds(model, X)
109
+ disagreement = np.std(base_preds, axis=1) if base_preds.shape[1] > 1 else np.zeros(len(pred))
110
+
111
+ # If you saved training disagreement stats, use them for stable scaling
112
+ # e.g. bundle["disagreement_stats"] = {"p95": 0.123}
113
+ dis_stats = bundle.get("disagreement_stats", {})
114
+ dis_p95 = dis_stats.get("p95", None)
115
+ d_norm = _norm_with_training_scale(disagreement, dis_p95)
116
+
117
+ # 2) Missing input fraction
118
+ missing_input_frac = df[impute_cols].isna().mean(axis=1).values
119
+ m_norm = np.clip(missing_input_frac, 0.0, 1.0)
120
+
121
+ # 3) Interval width penalty (bigger q => lower confidence)
122
+ # If you saved training q stats, use them too (recommended)
123
+ # e.g. bundle["interval_stats"] = {"q90_p95": 12.3, "q95_p95": 15.8}
124
+ int_stats = bundle.get("interval_stats", {})
125
+ q_scale = int_stats.get(f"{interval}_p95", None)
126
+ if np.isfinite(q):
127
+ q_norm = _norm_with_training_scale(np.full(len(pred), q, dtype=float), q_scale)
128
+ else:
129
+ q_norm = np.zeros(len(pred), dtype=float)
130
+
131
+ # Weighted score (tune weights as you like)
132
+ # - missingness is usually most important
133
+ # - then interval width
134
+ # - then model disagreement
135
+ score = 1.0 - (0.45 * m_norm + 0.35 * q_norm + 0.20 * d_norm)
136
+
137
+ # Apply training missingness penalty (your existing logic)
138
+ sparse_flag = (
139
+ missing_rate is not None
140
+ and np.isfinite(missing_rate)
141
+ and missing_rate >= 0.90
142
+ )
143
+ if sparse_flag:
144
+ score = np.minimum(score, 0.35)
145
+
146
+ score = np.clip(score, 0.0, 1.0)
147
+
148
+ # Labels
149
+ label = np.where(score >= 0.75, "High", np.where(score >= 0.50, "Medium", "Low"))
150
+ if sparse_flag:
151
+ label[:] = "Low"
152
+
153
+ out = pd.DataFrame(
154
+ {
155
+ "prediction": pred,
156
+ "lower": lower,
157
+ "upper": upper,
158
+ "confidence_score": score,
159
+ "confidence_label": label,
160
+ },
161
+ index=df.index,
162
+ )
163
+
164
+ out["note"] = "⚠️ Target had ~90%+ missing in training; treat as noisy." if sparse_flag else ""
165
+ return out
scripts/train_eval.py ADDED
@@ -0,0 +1,91 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # scripts/train_eval.py
2
+ from __future__ import annotations
3
+
4
+ import pandas as pd
5
+ import sys
6
+ from pathlib import Path
7
+ import numpy as np
8
+ import os
9
+ os.environ["OMP_NUM_THREADS"] = "64"
10
+ os.environ["OPENBLAS_NUM_THREADS"] = "64"
11
+ os.environ["MKL_NUM_THREADS"] = "64"
12
+ os.environ["NUMEXPR_NUM_THREADS"] = "64"
13
+
14
+
15
+ # Add project root to PYTHONPATH so `import src...` works when running as a script
16
+ ROOT = Path(__file__).resolve().parents[1]
17
+ if str(ROOT) not in sys.path:
18
+ sys.path.insert(0, str(ROOT))
19
+
20
+ from src.pipeline import run_10fold_cv_paper_like
21
+
22
+ def load_data() -> tuple[pd.DataFrame, list[str], list[str]]:
23
+ import pandas as pd
24
+
25
+ morph_path = "Data/morph_dataset.csv"
26
+ perf_path = "Data/performance_dataset.csv"
27
+
28
+ morph_df = pd.read_csv(morph_path)
29
+ perf_df = pd.read_csv(perf_path)
30
+
31
+ # Convert -1 to NaN
32
+ morph_df = morph_df.replace(-1, np.nan)
33
+ perf_df = perf_df.replace(-1, np.nan)
34
+
35
+ # If row counts differ, stop (can't safely align)
36
+ if len(morph_df) != len(perf_df):
37
+ raise ValueError(
38
+ f"Row counts differ: morph={len(morph_df)} perf={len(perf_df)}. "
39
+ "Need a shared ID column to merge."
40
+ )
41
+
42
+ # Row-aligned join
43
+ data = pd.concat([morph_df.reset_index(drop=True),
44
+ perf_df.reset_index(drop=True)], axis=1)
45
+
46
+ # Define targets exactly like your performance CSV columns (excluding ecomorph label)
47
+ targets = [
48
+ "sprint", "endurance", "bite", "distance_capacity",
49
+ "jump_distance", "jump_vel", "jump_accel", "jump_power", "angle"
50
+ ]
51
+
52
+ # Categorical columns to one-hot encode (based on your header)
53
+ cat_cols = ["taxon", "genus", "species", "sex", "ecomorph"]
54
+
55
+ # Morphology numeric columns (everything in morph_df except categorical)
56
+ # Your morph headers: taxon, genus, species, sex, mass, svl, hl, hw, ...
57
+ morph_numeric = [c for c in morph_df.columns if c not in cat_cols]
58
+
59
+ # One-hot encode categorical columns (keep NaNs as its own category if any)
60
+ data[cat_cols] = data[cat_cols].astype("Int64") # keep missing-safe ints
61
+ data = pd.get_dummies(data, columns=cat_cols, dummy_na=True)
62
+
63
+ # After get_dummies, morph_cols should be:
64
+ # - numeric morphology columns (mass, svl, hl, ...)
65
+ # - plus the created one-hot columns for taxon/genus/species/sex/ecomorph
66
+ dummy_cols = [c for c in data.columns if any(c.startswith(f"{cc}_") for cc in cat_cols)]
67
+ morph_cols = morph_numeric + dummy_cols
68
+
69
+ # Sanity check: ensure targets exist
70
+ missing = [t for t in targets if t not in data.columns]
71
+ if missing:
72
+ raise ValueError(f"Targets missing from merged data: {missing}. Check perf CSV header.")
73
+
74
+ return data, morph_cols, targets
75
+
76
+
77
+ def main():
78
+ data, morph_cols, targets = load_data()
79
+
80
+ results = run_10fold_cv_paper_like(
81
+ data=data,
82
+ morph_cols=morph_cols,
83
+ targets=targets,
84
+ experiment_tag="paper_like_cv",
85
+ max_folds=1,
86
+ )
87
+ print("\nCV Results:")
88
+ print(results.sort_values("target"))
89
+
90
+ if __name__ == "__main__":
91
+ main()
scripts/train_final.py ADDED
@@ -0,0 +1,97 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # scripts/train_final.py
2
+ from __future__ import annotations
3
+
4
+ import pandas as pd
5
+ import sys
6
+ from pathlib import Path
7
+ import numpy as np
8
+ import os
9
+
10
+
11
+ import os
12
+ os.environ["OMP_NUM_THREADS"] = "64"
13
+ os.environ["OPENBLAS_NUM_THREADS"] = "64"
14
+ os.environ["MKL_NUM_THREADS"] = "64"
15
+ os.environ["NUMEXPR_NUM_THREADS"] = "64"
16
+
17
+
18
+ # Add project root to PYTHONPATH so `import src...` works when running as a script
19
+ ROOT = Path(__file__).resolve().parents[1]
20
+ if str(ROOT) not in sys.path:
21
+ sys.path.insert(0, str(ROOT))
22
+
23
+ from src.pipeline import run_10fold_cv_paper_like
24
+ from src.pipeline import train_and_save_final_models
25
+
26
+
27
+ def load_data() -> tuple[pd.DataFrame, list[str], list[str]]:
28
+ import pandas as pd
29
+
30
+ morph_path = "Data/morph_dataset.csv"
31
+ perf_path = "Data/performance_dataset.csv"
32
+
33
+ morph_df = pd.read_csv(morph_path)
34
+ perf_df = pd.read_csv(perf_path)
35
+
36
+ # Convert -1 to NaN
37
+ morph_df = morph_df.replace(-1, np.nan)
38
+ perf_df = perf_df.replace(-1, np.nan)
39
+
40
+ # If row counts differ, stop (can't safely align)
41
+ if len(morph_df) != len(perf_df):
42
+ raise ValueError(
43
+ f"Row counts differ: morph={len(morph_df)} perf={len(perf_df)}. "
44
+ "Need a shared ID column to merge."
45
+ )
46
+
47
+ # Row-aligned join
48
+ data = pd.concat([morph_df.reset_index(drop=True),
49
+ perf_df.reset_index(drop=True)], axis=1)
50
+
51
+ # Define targets exactly like your performance CSV columns (excluding ecomorph label)
52
+ targets = [
53
+ "sprint", "endurance", "bite", "distance_capacity",
54
+ "jump_distance", "jump_vel", "jump_accel", "jump_power", "angle"
55
+ ]
56
+
57
+ # Categorical columns to one-hot encode (based on your header)
58
+ cat_cols = ["taxon", "genus", "species", "sex", "ecomorph"]
59
+
60
+ # Morphology numeric columns (everything in morph_df except categorical)
61
+ # Your morph headers: taxon, genus, species, sex, mass, svl, hl, hw, ...
62
+ morph_numeric = [c for c in morph_df.columns if c not in cat_cols]
63
+
64
+ # One-hot encode categorical columns (keep NaNs as its own category if any)
65
+ data[cat_cols] = data[cat_cols].astype("Int64") # keep missing-safe ints
66
+ data = pd.get_dummies(data, columns=cat_cols, dummy_na=True)
67
+
68
+ # After get_dummies, morph_cols should be:
69
+ # - numeric morphology columns (mass, svl, hl, ...)
70
+ # - plus the created one-hot columns for taxon/genus/species/sex/ecomorph
71
+ dummy_cols = [c for c in data.columns if any(c.startswith(f"{cc}_") for cc in cat_cols)]
72
+ morph_cols = morph_numeric + dummy_cols
73
+
74
+ # Sanity check: ensure targets exist
75
+ missing = [t for t in targets if t not in data.columns]
76
+ if missing:
77
+ raise ValueError(f"Targets missing from merged data: {missing}. Check perf CSV header.")
78
+
79
+ return data, morph_cols, targets
80
+
81
+
82
+ def main():
83
+ data, morph_cols, targets = load_data()
84
+
85
+ saved = train_and_save_final_models(
86
+ data=data,
87
+ morph_cols=morph_cols,
88
+ targets=targets,
89
+ save_dir="artifacts_inference",
90
+ experiment_name="InferenceModels_SM2_KNN",
91
+ experiment_tag="final_fit",
92
+ )
93
+ print("\nSaved bundles:")
94
+ print(saved)
95
+
96
+ if __name__ == "__main__":
97
+ main()
src/__init__.py ADDED
File without changes
src/config.py ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # src/config.py
2
+ from __future__ import annotations
3
+
4
+ # Paper Table 2: optimum K per performance trait
5
+ K_BY_TARGET = {
6
+ "jump_power": 165,
7
+ "jump_accel": 29,
8
+ "bite": 57,
9
+ "jump_vel": 16,
10
+ "endurance": 154,
11
+ "sprint": 84,
12
+ "jump_distance": 46,
13
+ "distance_capacity": 25, # paper calls this "Stamina"
14
+ "angle": 34,
15
+ }
16
+
17
+ N_SPLITS = 10
18
+ RANDOM_STATE = 42
src/models.py ADDED
@@ -0,0 +1,52 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # src/models.py
2
+ from __future__ import annotations
3
+
4
+ from sklearn.ensemble import (
5
+ ExtraTreesRegressor,
6
+ RandomForestRegressor,
7
+ GradientBoostingRegressor,
8
+ StackingRegressor,
9
+ )
10
+
11
+ # Optional XGBoost (paper uses XGBR in base layer)
12
+ try:
13
+ from xgboost import XGBRegressor
14
+ HAS_XGB = True
15
+ except Exception:
16
+ HAS_XGB = False
17
+
18
+
19
+ def build_sm2_stacking(random_state: int = 42) -> StackingRegressor:
20
+ """
21
+ SM2-style stacking:
22
+ Base: ETR, RFR, GBR, (XGBR if available)
23
+ Meta: GBR
24
+ """
25
+ base_estimators = [
26
+ ("etr", ExtraTreesRegressor(n_estimators=1000, random_state=random_state, n_jobs=-1)),
27
+ ("rfr", RandomForestRegressor(n_estimators=1000, random_state=random_state, n_jobs=-1)),
28
+ ("gbr", GradientBoostingRegressor(random_state=random_state)),
29
+ ]
30
+
31
+ if HAS_XGB:
32
+ base_estimators.append(
33
+ ("xgbr", XGBRegressor(
34
+ n_estimators=100,
35
+ max_depth=6,
36
+ learning_rate=0.1,
37
+ subsample=0.9,
38
+ reg_lambda=1.0,
39
+ random_state=random_state,
40
+ n_jobs=-1,
41
+ tree_method="hist",
42
+ ))
43
+ )
44
+
45
+ meta = GradientBoostingRegressor(random_state=random_state)
46
+
47
+ return StackingRegressor(
48
+ estimators=base_estimators,
49
+ final_estimator=meta,
50
+ passthrough=True,
51
+ n_jobs=-1,
52
+ )
src/pipeline.py ADDED
@@ -0,0 +1,333 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # src/pipeline.py
2
+ from __future__ import annotations
3
+
4
+ import os
5
+ import joblib
6
+ import numpy as np
7
+ import pandas as pd
8
+
9
+ from scipy.stats import pearsonr
10
+ from sklearn.impute import KNNImputer
11
+ from sklearn.metrics import mean_absolute_error
12
+ from sklearn.model_selection import KFold
13
+
14
+ import mlflow
15
+
16
+ from src.config import K_BY_TARGET, N_SPLITS, RANDOM_STATE
17
+ from src.models import build_sm2_stacking
18
+ import json
19
+
20
+ def save_conformal_calibration(residuals_by_target: dict[str, list[float]], out_path: str):
21
+ """
22
+ Save empirical absolute residual distributions for conformal prediction intervals.
23
+ """
24
+ calib = {}
25
+ for t, res in residuals_by_target.items():
26
+ arr = np.array(res, dtype=float)
27
+ arr = arr[~np.isnan(arr)]
28
+ calib[t] = {
29
+ "n": int(arr.size),
30
+ # 90% and 95% absolute error quantiles (change as you like)
31
+ "q90": float(np.quantile(arr, 0.90)) if arr.size else float("nan"),
32
+ "q95": float(np.quantile(arr, 0.95)) if arr.size else float("nan"),
33
+ }
34
+ with open(out_path, "w") as f:
35
+ json.dump(calib, f, indent=2)
36
+
37
+
38
+ def replace_minus_one_with_nan(df: pd.DataFrame) -> pd.DataFrame:
39
+ return df.replace(-1, np.nan)
40
+
41
+
42
+ def safe_pcc(y_true: np.ndarray, y_pred: np.ndarray) -> float:
43
+ if np.std(y_true) == 0 or np.std(y_pred) == 0:
44
+ return float("nan")
45
+ return float(pearsonr(y_true, y_pred)[0])
46
+
47
+
48
+ def evaluate_observed_only(y_true_raw: np.ndarray, y_pred: np.ndarray, observed_mask: np.ndarray) -> tuple[float, float]:
49
+ """
50
+ Score ONLY on entries where the target was originally observed (not missing).
51
+ This avoids giving yourself credit for predicting imputed labels.
52
+ """
53
+ y_true = y_true_raw[observed_mask]
54
+ y_hat = y_pred[observed_mask]
55
+ mae = float(mean_absolute_error(y_true, y_hat))
56
+ pcc = safe_pcc(y_true, y_hat)
57
+ return mae, pcc
58
+
59
+
60
+ def run_10fold_cv_paper_like(
61
+ data: pd.DataFrame,
62
+ morph_cols: list[str],
63
+ targets: list[str],
64
+ experiment_tag: str = "",
65
+ max_folds: int | None = None,
66
+ ) -> pd.DataFrame:
67
+ """
68
+ Paper-like evaluation:
69
+ - 10-fold CV
70
+ - KNN imputation per target (K from Table 2) fit on TRAIN fold only
71
+ - SM2-like stacking model trained per fold
72
+ - score only on observed test labels
73
+ """
74
+ data = replace_minus_one_with_nan(data).copy()
75
+ kf = KFold(n_splits=N_SPLITS, shuffle=True, random_state=RANDOM_STATE)
76
+
77
+ # ADD THIS BLOCK
78
+ residuals_by_target = {t: [] for t in targets}
79
+ missing_rate = {t: float(data[t].isna().mean()) for t in targets}
80
+
81
+ results = []
82
+
83
+ for target in targets:
84
+ if target not in K_BY_TARGET:
85
+ raise ValueError(f"Target '{target}' missing from K_BY_TARGET (paper Table 2 mapping).")
86
+
87
+ K = K_BY_TARGET[target]
88
+ fold_mae, fold_pcc = [], []
89
+
90
+ print(f"\n=== CV Target: {target} | KNN K={K} ===")
91
+
92
+ for fold, (train_idx, test_idx) in enumerate(kf.split(data), start=1):
93
+ train_df = data.iloc[train_idx].copy()
94
+ test_df = data.iloc[test_idx].copy()
95
+
96
+ # observed mask for proper evaluation
97
+ y_test_raw = test_df[target].values
98
+ y_test_observed_mask = test_df[target].notna().values
99
+
100
+ # Impute morphology + all targets (fit on train only -> no leakage)
101
+ impute_cols = morph_cols + targets
102
+ knn = KNNImputer(n_neighbors=K, weights="distance")
103
+
104
+ train_imputed = pd.DataFrame(
105
+ knn.fit_transform(train_df[impute_cols]),
106
+ columns=impute_cols,
107
+ index=train_df.index,
108
+ )
109
+ test_imputed = pd.DataFrame(
110
+ knn.transform(test_df[impute_cols]),
111
+ columns=impute_cols,
112
+ index=test_df.index,
113
+ )
114
+
115
+ # Features: morphology + other (imputed) performance traits (excluding target)
116
+ feature_cols = morph_cols + [t for t in targets if t != target]
117
+
118
+
119
+
120
+ # X_train = train_imputed[feature_cols].values
121
+ # y_train = train_imputed[target].values
122
+
123
+ # X_test = test_imputed[feature_cols].values
124
+
125
+ # model = build_sm2_stacking(random_state=RANDOM_STATE)
126
+ # model.fit(X_train, y_train)
127
+
128
+ # y_pred = model.predict(X_test)
129
+
130
+
131
+
132
+ X_train_all = train_imputed[feature_cols].values
133
+ X_test = test_imputed[feature_cols].values
134
+
135
+ y_train_raw = train_df[target].values # raw y (NaNs where missing)
136
+ obs_train = ~np.isnan(y_train_raw)
137
+
138
+ # Train only on observed labels
139
+ model = build_sm2_stacking(random_state=RANDOM_STATE)
140
+ model.fit(X_train_all[obs_train], y_train_raw[obs_train])
141
+
142
+ y_pred = model.predict(X_test)
143
+
144
+
145
+
146
+
147
+ # --- NEW: collect observed-only absolute residuals for conformal calibration
148
+ obs = y_test_observed_mask
149
+ abs_resid = np.abs(y_test_raw[obs] - y_pred[obs])
150
+ residuals_by_target[target].extend(abs_resid.tolist())
151
+
152
+
153
+ mae, pcc = evaluate_observed_only(y_test_raw, y_pred, y_test_observed_mask)
154
+ fold_mae.append(mae)
155
+ fold_pcc.append(pcc)
156
+
157
+ # MLflow logging per fold (optional but matches your style)
158
+ mlflow.set_experiment(target)
159
+ run_name = f"{target}_fold_{fold}{('_' + experiment_tag) if experiment_tag else ''}"
160
+ with mlflow.start_run(run_name=run_name):
161
+ mlflow.log_param("target", target)
162
+ mlflow.log_param("knn_k", K)
163
+ mlflow.log_param("n_splits", N_SPLITS)
164
+ mlflow.log_param("n_features", len(feature_cols))
165
+ mlflow.log_metric("mae", mae)
166
+ mlflow.log_metric("pcc", pcc)
167
+ mlflow.log_metric("n_test_observed", int(y_test_observed_mask.sum()))
168
+ mlflow.log_metric("n_test_total", int(len(test_idx)))
169
+
170
+ print(f"Fold {fold:02d}: MAE={mae:.4f}, PCC={pcc:.4f}, n_obs={y_test_observed_mask.sum()}")
171
+ if max_folds is not None and fold >= max_folds:
172
+ break
173
+
174
+ target_mae = float(np.nanmean(fold_mae))
175
+ target_pcc = float(np.nanmean(fold_pcc))
176
+
177
+ results.append({"target": target, "mae_mean": target_mae, "pcc_mean": target_pcc})
178
+
179
+ print(f"--- {target} AVERAGE: MAE={target_mae:.4f}, PCC={target_pcc:.4f}")
180
+
181
+ # Log summary per target
182
+ mlflow.set_experiment("CombinedResults")
183
+ with mlflow.start_run(run_name=f"{target}_avg{('_' + experiment_tag) if experiment_tag else ''}"):
184
+ mlflow.log_param("target", target)
185
+ mlflow.log_metric("mae_mean", target_mae)
186
+ mlflow.log_metric("pcc_mean", target_pcc)
187
+
188
+ results_df = pd.DataFrame(results)
189
+ overall_mae = float(results_df["mae_mean"].mean())
190
+ overall_pcc = float(results_df["pcc_mean"].mean())
191
+
192
+ print("\n=== OVERALL AVERAGE (across targets) ===")
193
+ print(f"MAE={overall_mae:.4f}, PCC={overall_pcc:.4f}")
194
+
195
+ mlflow.set_experiment("CombinedResults")
196
+ with mlflow.start_run(run_name=f"overall_avg{('_' + experiment_tag) if experiment_tag else ''}"):
197
+ mlflow.log_metric("mae_overall_mean", overall_mae)
198
+ mlflow.log_metric("pcc_overall_mean", overall_pcc)
199
+
200
+
201
+ # --- NEW: save conformal calibration + missingness rate for inference-time confidence
202
+ os.makedirs("artifacts_inference", exist_ok=True)
203
+
204
+ calib_path = "artifacts_inference/calibration_conformal.json"
205
+ save_conformal_calibration(residuals_by_target, calib_path)
206
+ mlflow.log_artifact(calib_path)
207
+
208
+ mr_path = "artifacts_inference/missing_rate.json"
209
+ with open(mr_path, "w") as f:
210
+ json.dump(missing_rate, f, indent=2)
211
+ mlflow.log_artifact(mr_path)
212
+
213
+
214
+ return results_df
215
+
216
+
217
+ def train_and_save_final_models(
218
+ data: pd.DataFrame,
219
+ morph_cols: list[str],
220
+ targets: list[str],
221
+ save_dir: str = "artifacts_inference",
222
+ experiment_name: str = "InferenceModels_SM2_KNN",
223
+ experiment_tag: str = "",
224
+ calibration_path: str = "artifacts_inference/calibration_conformal.json",
225
+ missing_rate_path: str = "artifacts_inference/missing_rate.json",
226
+ ) -> pd.DataFrame:
227
+ """
228
+ Deployment training:
229
+ - Fit ONE model per target on full dataset
230
+ - Save a joblib bundle per target:
231
+ {
232
+ imputer, model, feature_cols, impute_cols,
233
+ target, knn_k, calibration, missing_rate
234
+ }
235
+
236
+ Notes:
237
+ - Expects calibration_conformal.json and missing_rate.json to have been
238
+ produced by the CV script (train_eval) first.
239
+ - If those files don't exist, it will still train & save bundles, but
240
+ bundles will have empty calibration/missing_rate.
241
+ """
242
+ import os
243
+ import json
244
+ import joblib
245
+ import numpy as np
246
+ import pandas as pd
247
+ import mlflow
248
+ from sklearn.impute import KNNImputer
249
+
250
+ # Uses these from your existing module:
251
+ # - replace_minus_one_with_nan
252
+ # - K_BY_TARGET
253
+ # - RANDOM_STATE
254
+ # - build_sm2_stacking
255
+
256
+ os.makedirs(save_dir, exist_ok=True)
257
+ data = replace_minus_one_with_nan(data).copy()
258
+
259
+ # Load calibration + missingness (generated by CV eval)
260
+ calib = json.load(open(calibration_path)) if os.path.exists(calibration_path) else {}
261
+ miss = json.load(open(missing_rate_path)) if os.path.exists(missing_rate_path) else {}
262
+
263
+ saved_rows: list[dict] = []
264
+
265
+ mlflow.set_experiment(experiment_name)
266
+ run_name = f"train_final_models{('_' + experiment_tag) if experiment_tag else ''}"
267
+
268
+ with mlflow.start_run(run_name=run_name):
269
+ for target in targets:
270
+ if target not in K_BY_TARGET:
271
+ raise ValueError(f"Target '{target}' missing from K_BY_TARGET (paper Table 2 mapping).")
272
+
273
+ K = K_BY_TARGET[target]
274
+
275
+ # Impute morphology + all targets on FULL data (deployment fit)
276
+ impute_cols = morph_cols + targets
277
+ knn = KNNImputer(n_neighbors=K, weights="distance")
278
+
279
+ imputed_full = pd.DataFrame(
280
+ knn.fit_transform(data[impute_cols]),
281
+ columns=impute_cols,
282
+ index=data.index,
283
+ )
284
+
285
+ # Features: morphology + other performance traits (excluding current target)
286
+ feature_cols = morph_cols + [t for t in targets if t != target]
287
+ X = imputed_full[feature_cols].values
288
+ y = imputed_full[target].values
289
+
290
+ # Train SM2-like stacking model
291
+ model = build_sm2_stacking(random_state=RANDOM_STATE)
292
+ model.fit(X, y)
293
+
294
+ # Bundle for inference
295
+ bundle = {
296
+ "target": target,
297
+ "knn_k": K,
298
+ "imputer": knn,
299
+ "model": model,
300
+ "feature_cols": feature_cols,
301
+ "impute_cols": impute_cols,
302
+ "morph_cols": morph_cols,
303
+ "targets": targets,
304
+ # Uncertainty + confidence inputs:
305
+ "calibration": calib.get(target, {}), # e.g., {"n":..., "q90":..., "q95":...}
306
+ "missing_rate": miss.get(target, None), # float like 0.91
307
+ }
308
+
309
+ out_path = os.path.join(save_dir, f"{target}_bundle.joblib")
310
+ joblib.dump(bundle, out_path)
311
+
312
+ # Log artifact(s)
313
+ mlflow.log_artifact(out_path)
314
+ mlflow.log_param(f"{target}_knn_k", K)
315
+ if bundle["missing_rate"] is not None:
316
+ mlflow.log_metric(f"{target}_missing_rate", float(bundle["missing_rate"]))
317
+
318
+ saved_rows.append({"target": target, "knn_k": K, "path": out_path})
319
+ print(f"Saved: {out_path}")
320
+
321
+ # Save a manifest for convenience
322
+ manifest_path = os.path.join(save_dir, "manifest.csv")
323
+ pd.DataFrame(saved_rows).to_csv(manifest_path, index=False)
324
+ mlflow.log_artifact(manifest_path)
325
+
326
+ # Also log the calibration/missingness files if present
327
+ if os.path.exists(calibration_path):
328
+ mlflow.log_artifact(calibration_path)
329
+ if os.path.exists(missing_rate_path):
330
+ mlflow.log_artifact(missing_rate_path)
331
+
332
+ return pd.DataFrame(saved_rows)
333
+
uv.lock ADDED
The diff for this file is too large to render. See raw diff