diff --git a/.envrc b/.envrc
new file mode 100644
index 0000000..98f11ca
--- /dev/null
+++ b/.envrc
@@ -0,0 +1,2 @@
+use nix -p python312
+layout python python3
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..92b2793
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+.direnv
diff --git a/3DPrintedMetric.xml b/3DPrintedMetric.xml
index 061fc5e..f845b54 100644
--- a/3DPrintedMetric.xml
+++ b/3DPrintedMetric.xml
@@ -14,77 +14,77 @@
external
O.0
- 7.75
- 5.55
- 3.7
+ 8
+ 5.727
+ 4.211
internal
O.0
- 8.4
- 5.85
- 4.5
+ 8
+ 5.727
+ 4.211
4.5
external
O.1
- 7.65
- 5.45
- 3.6
+ 7.9
+ 5.627
+ 4.111
internal
O.1
- 8.5
- 5.95
- 4.6
- 4.6
+ 8.1
+ 5.827
+ 4.311
+ 4.5
external
O.2
- 7.55
- 5.35
- 3.5
+ 7.8
+ 5.527
+ 4.011
internal
O.2
- 8.6
- 6.05
- 4.7
- 4.7
+ 8.2
+ 5.927
+ 4.411
+ 4.5
external
O.4
- 7.35
- 5.15
- 3.3
+ 7.6
+ 5.327
+ 3.811
internal
O.4
- 8.8
- 6.25
- 4.9
- 4.9
+ 8.4
+ 6.127
+ 4.611
+ 4.5
external
O.8
- 6.95
- 4.75
- 2.9
+ 7.2
+ 4.927
+ 3.411
internal
O.8
- 9.2
- 6.65
- 5.3
- 5.3
+ 8.8
+ 6.527
+ 5.011
+ 4.5
@@ -94,77 +94,77 @@
external
O.0
- 7.75
- 4.8
- 2.2
+ 8
+ 4.752
+ 2.587
internal
O.0
- 8.4
- 5.1
- 3
+ 8
+ 4.752
+ 2.587
3
external
O.1
- 7.65
- 4.7
- 2.1
+ 7.9
+ 4.652
+ 2.487
internal
O.1
- 8.5
- 5.2
- 3.1
- 3.1
+ 8.1
+ 4.852
+ 2.687
+ 3
external
O.2
- 7.55
- 4.6
- 2
+ 7.8
+ 4.552
+ 2.387
internal
O.2
- 8.6
- 5.3
- 3.2
- 3.2
+ 8.2
+ 4.952
+ 2.787
+ 3
external
O.4
- 7.35
- 4.4
- 1.8
+ 7.6
+ 4.352
+ 2.187
internal
O.4
- 8.8
- 5.5
- 3.4
- 3.4
+ 8.4
+ 5.152
+ 2.987
+ 3
external
O.8
- 6.95
- 4
- 1.4
+ 7.2
+ 3.952
+ 1.787
internal
O.8
- 9.2
- 5.9
- 3.8
- 3.8
+ 8.8
+ 5.552
+ 3.387
+ 3
@@ -177,77 +177,77 @@
external
O.0
- 8.75
- 6.55
- 4.7
+ 9
+ 6.727
+ 5.211
internal
O.0
- 9.4
- 6.85
- 5.5
+ 9
+ 6.727
+ 5.211
5.5
external
O.1
- 8.65
- 6.45
- 4.6
+ 8.9
+ 6.627
+ 5.111
internal
O.1
- 9.5
- 6.95
- 5.6
- 5.6
+ 9.1
+ 6.827
+ 5.311
+ 5.5
external
O.2
- 8.55
- 6.35
- 4.5
+ 8.8
+ 6.527
+ 5.011
internal
O.2
- 9.6
- 7.05
- 5.7
- 5.7
+ 9.2
+ 6.927
+ 5.411
+ 5.5
external
O.4
- 8.35
- 6.15
- 4.3
+ 8.6
+ 6.327
+ 4.811
internal
O.4
- 9.8
- 7.25
- 5.9
- 5.9
+ 9.4
+ 7.127
+ 5.611
+ 5.5
external
O.8
- 7.95
- 5.75
- 3.9
+ 8.2
+ 5.927
+ 4.411
internal
O.8
- 10.2
- 7.65
- 6.3
- 6.3
+ 9.8
+ 7.527
+ 6.011
+ 5.5
@@ -257,77 +257,77 @@
external
O.0
- 8.75
- 5.8
- 3.2
+ 9
+ 5.752
+ 3.587
internal
O.0
- 9.4
- 6.1
- 4
+ 9
+ 5.752
+ 3.587
4
external
O.1
- 8.65
- 5.7
- 3.1
+ 8.9
+ 5.652
+ 3.487
internal
O.1
- 9.5
- 6.2
- 4.1
- 4.1
+ 9.1
+ 5.852
+ 3.687
+ 4
external
O.2
- 8.55
- 5.6
- 3
+ 8.8
+ 5.552
+ 3.387
internal
O.2
- 9.6
- 6.3
- 4.2
- 4.2
+ 9.2
+ 5.952
+ 3.787
+ 4
external
O.4
- 8.35
- 5.4
- 2.8
+ 8.6
+ 5.352
+ 3.187
internal
O.4
- 9.8
- 6.5
- 4.4
- 4.4
+ 9.4
+ 6.152
+ 3.987
+ 4
external
O.8
- 7.95
- 5
- 2.4
+ 8.2
+ 4.952
+ 2.787
internal
O.8
- 10.2
- 6.9
- 4.8
- 4.8
+ 9.8
+ 6.552
+ 4.387
+ 4
@@ -340,77 +340,77 @@
external
O.0
- 9.75
- 7.55
- 5.7
+ 10
+ 7.727
+ 6.211
internal
O.0
- 10.4
- 7.85
- 6.5
+ 10
+ 7.727
+ 6.211
6.5
external
O.1
- 9.65
- 7.45
- 5.6
+ 9.9
+ 7.627
+ 6.111
internal
O.1
- 10.5
- 7.95
- 6.6
- 6.6
+ 10.1
+ 7.827
+ 6.311
+ 6.5
external
O.2
- 9.55
- 7.35
- 5.5
+ 9.8
+ 7.527
+ 6.011
internal
O.2
- 10.6
- 8.05
- 6.7
- 6.7
+ 10.2
+ 7.927
+ 6.411
+ 6.5
external
O.4
- 9.35
- 7.15
- 5.3
+ 9.6
+ 7.327
+ 5.811
internal
O.4
- 10.8
- 8.25
- 6.9
- 6.9
+ 10.4
+ 8.127
+ 6.611
+ 6.5
external
O.8
- 8.95
- 6.75
- 4.9
+ 9.2
+ 6.927
+ 5.411
internal
O.8
- 11.2
- 8.65
- 7.3
- 7.3
+ 10.8
+ 8.527
+ 7.011
+ 6.5
@@ -420,77 +420,77 @@
external
O.0
- 9.75
- 6.8
- 4.2
+ 10
+ 6.752
+ 4.587
internal
O.0
- 10.4
- 7.1
- 5
+ 10
+ 6.752
+ 4.587
5
external
O.1
- 9.65
- 6.7
- 4.1
+ 9.9
+ 6.652
+ 4.487
internal
O.1
- 10.5
- 7.2
- 5.1
- 5.1
+ 10.1
+ 6.852
+ 4.687
+ 5
external
O.2
- 9.55
- 6.6
- 4
+ 9.8
+ 6.552
+ 4.387
internal
O.2
- 10.6
- 7.3
- 5.2
- 5.2
+ 10.2
+ 6.952
+ 4.787
+ 5
external
O.4
- 9.35
- 6.4
- 3.8
+ 9.6
+ 6.352
+ 4.187
internal
O.4
- 10.8
- 7.5
- 5.4
- 5.4
+ 10.4
+ 7.152
+ 4.987
+ 5
external
O.8
- 8.95
- 6
- 3.4
+ 9.2
+ 5.952
+ 3.787
internal
O.8
- 11.2
- 7.9
- 5.8
- 5.8
+ 10.8
+ 7.552
+ 5.387
+ 5
@@ -503,77 +503,77 @@
external
O.0
- 10.75
- 8.55
- 6.7
+ 11
+ 8.727
+ 7.211
internal
O.0
- 11.4
- 8.85
- 7.5
+ 11
+ 8.727
+ 7.211
7.5
external
O.1
- 10.65
- 8.45
- 6.6
+ 10.9
+ 8.627
+ 7.111
internal
O.1
- 11.5
- 8.95
- 7.6
- 7.6
+ 11.1
+ 8.827
+ 7.311
+ 7.5
external
O.2
- 10.55
- 8.35
- 6.5
+ 10.8
+ 8.527
+ 7.011
internal
O.2
- 11.6
- 9.05
- 7.7
- 7.7
+ 11.2
+ 8.927
+ 7.411
+ 7.5
external
O.4
- 10.35
- 8.15
- 6.3
+ 10.6
+ 8.327
+ 6.811
internal
O.4
- 11.8
- 9.25
- 7.9
- 7.9
+ 11.4
+ 9.127
+ 7.611
+ 7.5
external
O.8
- 9.95
- 7.75
- 5.9
+ 10.2
+ 7.927
+ 6.411
internal
O.8
- 12.2
- 9.65
- 8.3
- 8.3
+ 11.8
+ 9.527
+ 8.011
+ 7.5
@@ -583,77 +583,77 @@
external
O.0
- 10.75
- 7.8
- 5.2
+ 11
+ 7.752
+ 5.587
internal
O.0
- 11.4
- 8.1
- 6
+ 11
+ 7.752
+ 5.587
6
external
O.1
- 10.65
- 7.7
- 5.1
+ 10.9
+ 7.652
+ 5.487
internal
O.1
- 11.5
- 8.2
- 6.1
- 6.1
+ 11.1
+ 7.852
+ 5.687
+ 6
external
O.2
- 10.55
- 7.6
- 5
+ 10.8
+ 7.552
+ 5.387
internal
O.2
- 11.6
- 8.3
- 6.2
- 6.2
+ 11.2
+ 7.952
+ 5.787
+ 6
external
O.4
- 10.35
- 7.4
- 4.8
+ 10.6
+ 7.352
+ 5.187
internal
O.4
- 11.8
- 8.5
- 6.4
- 6.4
+ 11.4
+ 8.152
+ 5.987
+ 6
external
O.8
- 9.95
- 7
- 4.4
+ 10.2
+ 6.952
+ 4.787
internal
O.8
- 12.2
- 8.9
- 6.8
- 6.8
+ 11.8
+ 8.552
+ 6.387
+ 6
@@ -666,77 +666,77 @@
external
O.0
- 11.75
- 9.55
- 7.7
+ 12
+ 9.727
+ 8.211
internal
O.0
- 12.4
- 9.85
- 8.5
+ 12
+ 9.727
+ 8.211
8.5
external
O.1
- 11.65
- 9.45
- 7.6
+ 11.9
+ 9.627
+ 8.111
internal
O.1
- 12.5
- 9.95
- 8.6
- 8.6
+ 12.1
+ 9.827
+ 8.311
+ 8.5
external
O.2
- 11.55
- 9.35
- 7.5
+ 11.8
+ 9.527
+ 8.011
internal
O.2
- 12.6
- 10.05
- 8.7
- 8.7
+ 12.2
+ 9.927
+ 8.411
+ 8.5
external
O.4
- 11.35
- 9.15
- 7.3
+ 11.6
+ 9.327
+ 7.811
internal
O.4
- 12.8
- 10.25
- 8.9
- 8.9
+ 12.4
+ 10.13
+ 8.611
+ 8.5
external
O.8
- 10.95
- 8.75
- 6.9
+ 11.2
+ 8.927
+ 7.411
internal
O.8
- 13.2
- 10.65
- 9.3
- 9.3
+ 12.8
+ 10.53
+ 9.011
+ 8.5
@@ -746,77 +746,77 @@
external
O.0
- 11.75
- 8.8
- 6.2
+ 12
+ 8.752
+ 6.587
internal
O.0
- 12.4
- 9.1
- 7
+ 12
+ 8.752
+ 6.587
7
external
O.1
- 11.65
- 8.7
- 6.1
+ 11.9
+ 8.652
+ 6.487
internal
O.1
- 12.5
- 9.2
- 7.1
- 7.1
+ 12.1
+ 8.852
+ 6.687
+ 7
external
O.2
- 11.55
- 8.6
- 6
+ 11.8
+ 8.552
+ 6.387
internal
O.2
- 12.6
- 9.3
- 7.2
- 7.2
+ 12.2
+ 8.952
+ 6.787
+ 7
external
O.4
- 11.35
- 8.4
- 5.8
+ 11.6
+ 8.352
+ 6.187
internal
O.4
- 12.8
- 9.5
- 7.4
- 7.4
+ 12.4
+ 9.152
+ 6.987
+ 7
external
O.8
- 10.95
- 8
- 5.4
+ 11.2
+ 7.952
+ 5.787
internal
O.8
- 13.2
- 9.9
- 7.8
- 7.8
+ 12.8
+ 9.552
+ 7.387
+ 7
@@ -829,77 +829,77 @@
external
O.0
- 12.75
- 10.55
- 8.7
+ 13
+ 10.73
+ 9.211
internal
O.0
- 13.4
- 10.85
- 9.5
+ 13
+ 10.73
+ 9.211
9.5
external
O.1
- 12.65
- 10.45
- 8.6
+ 12.9
+ 10.63
+ 9.111
internal
O.1
- 13.5
- 10.95
- 9.6
- 9.6
+ 13.1
+ 10.83
+ 9.311
+ 9.5
external
O.2
- 12.55
- 10.35
- 8.5
+ 12.8
+ 10.53
+ 9.011
internal
O.2
- 13.6
- 11.05
- 9.7
- 9.7
+ 13.2
+ 10.93
+ 9.411
+ 9.5
external
O.4
- 12.35
- 10.15
- 8.3
+ 12.6
+ 10.33
+ 8.811
internal
O.4
- 13.8
- 11.25
- 9.9
- 9.9
+ 13.4
+ 11.13
+ 9.611
+ 9.5
external
O.8
- 11.95
- 9.75
- 7.9
+ 12.2
+ 9.927
+ 8.411
internal
O.8
- 14.2
- 11.65
- 10.3
- 10.3
+ 13.8
+ 11.53
+ 10.01
+ 9.5
@@ -909,77 +909,77 @@
external
O.0
- 12.75
- 9.8
- 7.2
+ 13
+ 9.752
+ 7.587
internal
O.0
- 13.4
- 10.1
- 8
+ 13
+ 9.752
+ 7.587
8
external
O.1
- 12.65
- 9.7
- 7.1
+ 12.9
+ 9.652
+ 7.487
internal
O.1
- 13.5
- 10.2
- 8.1
- 8.1
+ 13.1
+ 9.852
+ 7.687
+ 8
external
O.2
- 12.55
- 9.6
- 7
+ 12.8
+ 9.552
+ 7.387
internal
O.2
- 13.6
- 10.3
- 8.2
- 8.2
+ 13.2
+ 9.952
+ 7.787
+ 8
external
O.4
- 12.35
- 9.4
- 6.8
+ 12.6
+ 9.352
+ 7.187
internal
O.4
- 13.8
- 10.5
- 8.4
- 8.4
+ 13.4
+ 10.15
+ 7.987
+ 8
external
O.8
- 11.95
- 9
- 6.4
+ 12.2
+ 8.952
+ 6.787
internal
O.8
- 14.2
- 10.9
- 8.8
- 8.8
+ 13.8
+ 10.55
+ 8.387
+ 8
@@ -992,77 +992,77 @@
external
O.0
- 13.75
- 11.55
- 9.7
+ 14
+ 11.73
+ 10.21
internal
O.0
- 14.4
- 11.85
- 10.5
+ 14
+ 11.73
+ 10.21
10.5
external
O.1
- 13.65
- 11.45
- 9.6
+ 13.9
+ 11.63
+ 10.11
internal
O.1
- 14.5
- 11.95
- 10.6
- 10.6
+ 14.1
+ 11.83
+ 10.31
+ 10.5
external
O.2
- 13.55
- 11.35
- 9.5
+ 13.8
+ 11.53
+ 10.01
internal
O.2
- 14.6
- 12.05
- 10.7
- 10.7
+ 14.2
+ 11.93
+ 10.41
+ 10.5
external
O.4
- 13.35
- 11.15
- 9.3
+ 13.6
+ 11.33
+ 9.811
internal
O.4
- 14.8
- 12.25
- 10.9
- 10.9
+ 14.4
+ 12.13
+ 10.61
+ 10.5
external
O.8
- 12.95
- 10.75
- 8.9
+ 13.2
+ 10.93
+ 9.411
internal
O.8
- 15.2
- 12.65
- 11.3
- 11.3
+ 14.8
+ 12.53
+ 11.01
+ 10.5
@@ -1072,77 +1072,77 @@
external
O.0
- 13.75
- 10.8
- 8.2
+ 14
+ 10.75
+ 8.587
internal
O.0
- 14.4
- 11.1
- 9
+ 14
+ 10.75
+ 8.587
9
external
O.1
- 13.65
- 10.7
- 8.1
+ 13.9
+ 10.65
+ 8.487
internal
O.1
- 14.5
- 11.2
- 9.1
- 9.1
+ 14.1
+ 10.85
+ 8.687
+ 9
external
O.2
- 13.55
- 10.6
- 8
+ 13.8
+ 10.55
+ 8.387
internal
O.2
- 14.6
- 11.3
- 9.2
- 9.2
+ 14.2
+ 10.95
+ 8.787
+ 9
external
O.4
- 13.35
- 10.4
- 7.8
+ 13.6
+ 10.35
+ 8.187
internal
O.4
- 14.8
- 11.5
- 9.4
- 9.4
+ 14.4
+ 11.15
+ 8.987
+ 9
external
O.8
- 12.95
- 10
- 7.4
+ 13.2
+ 9.952
+ 7.787
internal
O.8
- 15.2
- 11.9
- 9.8
- 9.8
+ 14.8
+ 11.55
+ 9.387
+ 9
@@ -1155,77 +1155,77 @@
external
O.0
- 14.75
- 12.55
- 10.7
+ 15
+ 12.73
+ 11.21
internal
O.0
- 15.4
- 12.85
- 11.5
+ 15
+ 12.73
+ 11.21
11.5
external
O.1
- 14.65
- 12.45
- 10.6
+ 14.9
+ 12.63
+ 11.11
internal
O.1
- 15.5
- 12.95
- 11.6
- 11.6
+ 15.1
+ 12.83
+ 11.31
+ 11.5
external
O.2
- 14.55
- 12.35
- 10.5
+ 14.8
+ 12.53
+ 11.01
internal
O.2
- 15.6
- 13.05
- 11.7
- 11.7
+ 15.2
+ 12.93
+ 11.41
+ 11.5
external
O.4
- 14.35
- 12.15
- 10.3
+ 14.6
+ 12.33
+ 10.81
internal
O.4
- 15.8
- 13.25
- 11.9
- 11.9
+ 15.4
+ 13.13
+ 11.61
+ 11.5
external
O.8
- 13.95
- 11.75
- 9.9
+ 14.2
+ 11.93
+ 10.41
internal
O.8
- 16.2
- 13.65
- 12.3
- 12.3
+ 15.8
+ 13.53
+ 12.01
+ 11.5
@@ -1235,77 +1235,77 @@
external
O.0
- 14.75
- 11.8
- 9.2
+ 15
+ 11.75
+ 9.587
internal
O.0
- 15.4
- 12.1
- 10
+ 15
+ 11.75
+ 9.587
10
external
O.1
- 14.65
- 11.7
- 9.1
+ 14.9
+ 11.65
+ 9.487
internal
O.1
- 15.5
- 12.2
- 10.1
- 10.1
+ 15.1
+ 11.85
+ 9.687
+ 10
external
O.2
- 14.55
- 11.6
- 9
+ 14.8
+ 11.55
+ 9.387
internal
O.2
- 15.6
- 12.3
- 10.2
- 10.2
+ 15.2
+ 11.95
+ 9.787
+ 10
external
O.4
- 14.35
- 11.4
- 8.8
+ 14.6
+ 11.35
+ 9.187
internal
O.4
- 15.8
- 12.5
- 10.4
- 10.4
+ 15.4
+ 12.15
+ 9.987
+ 10
external
O.8
- 13.95
- 11
- 8.4
+ 14.2
+ 10.95
+ 8.787
internal
O.8
- 16.2
- 12.9
- 10.8
- 10.8
+ 15.8
+ 12.55
+ 10.39
+ 10
@@ -1318,77 +1318,77 @@
external
O.0
- 15.75
- 13.55
- 11.7
+ 16
+ 13.73
+ 12.21
internal
O.0
- 16.4
- 13.85
- 12.5
+ 16
+ 13.73
+ 12.21
12.5
external
O.1
- 15.65
- 13.45
- 11.6
+ 15.9
+ 13.63
+ 12.11
internal
O.1
- 16.5
- 13.95
- 12.6
- 12.6
+ 16.1
+ 13.83
+ 12.31
+ 12.5
external
O.2
- 15.55
- 13.35
- 11.5
+ 15.8
+ 13.53
+ 12.01
internal
O.2
- 16.6
- 14.05
- 12.7
- 12.7
+ 16.2
+ 13.93
+ 12.41
+ 12.5
external
O.4
- 15.35
- 13.15
- 11.3
+ 15.6
+ 13.33
+ 11.81
internal
O.4
- 16.8
- 14.25
- 12.9
- 12.9
+ 16.4
+ 14.13
+ 12.61
+ 12.5
external
O.8
- 14.95
- 12.75
- 10.9
+ 15.2
+ 12.93
+ 11.41
internal
O.8
- 17.2
- 14.65
- 13.3
- 13.3
+ 16.8
+ 14.53
+ 13.01
+ 12.5
@@ -1398,77 +1398,77 @@
external
O.0
- 15.75
- 12.8
- 10.2
+ 16
+ 12.75
+ 10.59
internal
O.0
- 16.4
- 13.1
- 11
+ 16
+ 12.75
+ 10.59
11
external
O.1
- 15.65
- 12.7
- 10.1
+ 15.9
+ 12.65
+ 10.49
internal
O.1
- 16.5
- 13.2
- 11.1
- 11.1
+ 16.1
+ 12.85
+ 10.69
+ 11
external
O.2
- 15.55
- 12.6
- 10
+ 15.8
+ 12.55
+ 10.39
internal
O.2
- 16.6
- 13.3
- 11.2
- 11.2
+ 16.2
+ 12.95
+ 10.79
+ 11
external
O.4
- 15.35
- 12.4
- 9.8
+ 15.6
+ 12.35
+ 10.19
internal
O.4
- 16.8
- 13.5
- 11.4
- 11.4
+ 16.4
+ 13.15
+ 10.99
+ 11
external
O.8
- 14.95
- 12
- 9.4
+ 15.2
+ 11.95
+ 9.787
internal
O.8
- 17.2
- 13.9
- 11.8
- 11.8
+ 16.8
+ 13.55
+ 11.39
+ 11
@@ -1481,77 +1481,77 @@
external
O.0
- 16.75
- 14.55
- 12.7
+ 17
+ 14.73
+ 13.21
internal
O.0
- 17.4
- 14.85
- 13.5
+ 17
+ 14.73
+ 13.21
13.5
external
O.1
- 16.65
- 14.45
- 12.6
+ 16.9
+ 14.63
+ 13.11
internal
O.1
- 17.5
- 14.95
- 13.6
- 13.6
+ 17.1
+ 14.83
+ 13.31
+ 13.5
external
O.2
- 16.55
- 14.35
- 12.5
+ 16.8
+ 14.53
+ 13.01
internal
O.2
- 17.6
- 15.05
- 13.7
- 13.7
+ 17.2
+ 14.93
+ 13.41
+ 13.5
external
O.4
- 16.35
- 14.15
- 12.3
+ 16.6
+ 14.33
+ 12.81
internal
O.4
- 17.8
- 15.25
- 13.9
- 13.9
+ 17.4
+ 15.13
+ 13.61
+ 13.5
external
O.8
- 15.95
- 13.75
- 11.9
+ 16.2
+ 13.93
+ 12.41
internal
O.8
- 18.2
- 15.65
- 14.3
- 14.3
+ 17.8
+ 15.53
+ 14.01
+ 13.5
@@ -1561,77 +1561,77 @@
external
O.0
- 16.75
- 13.8
- 11.2
+ 17
+ 13.75
+ 11.59
internal
O.0
- 17.4
- 14.1
- 12
+ 17
+ 13.75
+ 11.59
12
external
O.1
- 16.65
- 13.7
- 11.1
+ 16.9
+ 13.65
+ 11.49
internal
O.1
- 17.5
- 14.2
- 12.1
- 12.1
+ 17.1
+ 13.85
+ 11.69
+ 12
external
O.2
- 16.55
- 13.6
- 11
+ 16.8
+ 13.55
+ 11.39
internal
O.2
- 17.6
- 14.3
- 12.2
- 12.2
+ 17.2
+ 13.95
+ 11.79
+ 12
external
O.4
- 16.35
- 13.4
- 10.8
+ 16.6
+ 13.35
+ 11.19
internal
O.4
- 17.8
- 14.5
- 12.4
- 12.4
+ 17.4
+ 14.15
+ 11.99
+ 12
external
O.8
- 15.95
- 13
- 10.4
+ 16.2
+ 12.95
+ 10.79
internal
O.8
- 18.2
- 14.9
- 12.8
- 12.8
+ 17.8
+ 14.55
+ 12.39
+ 12
@@ -1644,77 +1644,77 @@
external
O.0
- 17.75
- 15.55
- 13.7
+ 18
+ 15.73
+ 14.21
internal
O.0
- 18.4
- 15.85
- 14.5
+ 18
+ 15.73
+ 14.21
14.5
external
O.1
- 17.65
- 15.45
- 13.6
+ 17.9
+ 15.63
+ 14.11
internal
O.1
- 18.5
- 15.95
- 14.6
- 14.6
+ 18.1
+ 15.83
+ 14.31
+ 14.5
external
O.2
- 17.55
- 15.35
- 13.5
+ 17.8
+ 15.53
+ 14.01
internal
O.2
- 18.6
- 16.05
- 14.7
- 14.7
+ 18.2
+ 15.93
+ 14.41
+ 14.5
external
O.4
- 17.35
- 15.15
- 13.3
+ 17.6
+ 15.33
+ 13.81
internal
O.4
- 18.8
- 16.25
- 14.9
- 14.9
+ 18.4
+ 16.13
+ 14.61
+ 14.5
external
O.8
- 16.95
- 14.75
- 12.9
+ 17.2
+ 14.93
+ 13.41
internal
O.8
- 19.2
- 16.65
- 15.3
- 15.3
+ 18.8
+ 16.53
+ 15.01
+ 14.5
@@ -1724,77 +1724,77 @@
external
O.0
- 17.75
- 14.8
- 12.2
+ 18
+ 14.75
+ 12.59
internal
O.0
- 18.4
- 15.1
- 13
+ 18
+ 14.75
+ 12.59
13
external
O.1
- 17.65
- 14.7
- 12.1
+ 17.9
+ 14.65
+ 12.49
internal
O.1
- 18.5
- 15.2
- 13.1
- 13.1
+ 18.1
+ 14.85
+ 12.69
+ 13
external
O.2
- 17.55
- 14.6
- 12
+ 17.8
+ 14.55
+ 12.39
internal
O.2
- 18.6
- 15.3
- 13.2
- 13.2
+ 18.2
+ 14.95
+ 12.79
+ 13
external
O.4
- 17.35
- 14.4
- 11.8
+ 17.6
+ 14.35
+ 12.19
internal
O.4
- 18.8
- 15.5
- 13.4
- 13.4
+ 18.4
+ 15.15
+ 12.99
+ 13
external
O.8
- 16.95
- 14
- 11.4
+ 17.2
+ 13.95
+ 11.79
internal
O.8
- 19.2
- 15.9
- 13.8
- 13.8
+ 18.8
+ 15.55
+ 13.39
+ 13
@@ -1807,77 +1807,77 @@
external
O.0
- 18.75
- 16.55
- 14.7
+ 19
+ 16.73
+ 15.21
internal
O.0
- 19.4
- 16.85
- 15.5
+ 19
+ 16.73
+ 15.21
15.5
external
O.1
- 18.65
- 16.45
- 14.6
+ 18.9
+ 16.63
+ 15.11
internal
O.1
- 19.5
- 16.95
- 15.6
- 15.6
+ 19.1
+ 16.83
+ 15.31
+ 15.5
external
O.2
- 18.55
- 16.35
- 14.5
+ 18.8
+ 16.53
+ 15.01
internal
O.2
- 19.6
- 17.05
- 15.7
- 15.7
+ 19.2
+ 16.93
+ 15.41
+ 15.5
external
O.4
- 18.35
- 16.15
- 14.3
+ 18.6
+ 16.33
+ 14.81
internal
O.4
- 19.8
- 17.25
- 15.9
- 15.9
+ 19.4
+ 17.13
+ 15.61
+ 15.5
external
O.8
- 17.95
- 15.75
- 13.9
+ 18.2
+ 15.93
+ 14.41
internal
O.8
- 20.2
- 17.65
- 16.3
- 16.3
+ 19.8
+ 17.53
+ 16.01
+ 15.5
@@ -1887,77 +1887,77 @@
external
O.0
- 18.75
- 15.8
- 13.2
+ 19
+ 15.75
+ 13.59
internal
O.0
- 19.4
- 16.1
- 14
+ 19
+ 15.75
+ 13.59
14
external
O.1
- 18.65
- 15.7
- 13.1
+ 18.9
+ 15.65
+ 13.49
internal
O.1
- 19.5
- 16.2
- 14.1
- 14.1
+ 19.1
+ 15.85
+ 13.69
+ 14
external
O.2
- 18.55
- 15.6
- 13
+ 18.8
+ 15.55
+ 13.39
internal
O.2
- 19.6
- 16.3
- 14.2
- 14.2
+ 19.2
+ 15.95
+ 13.79
+ 14
external
O.4
- 18.35
- 15.4
- 12.8
+ 18.6
+ 15.35
+ 13.19
internal
O.4
- 19.8
- 16.5
- 14.4
- 14.4
+ 19.4
+ 16.15
+ 13.99
+ 14
external
O.8
- 17.95
- 15
- 12.4
+ 18.2
+ 14.95
+ 12.79
internal
O.8
- 20.2
- 16.9
- 14.8
- 14.8
+ 19.8
+ 16.55
+ 14.39
+ 14
@@ -1970,77 +1970,77 @@
external
O.0
- 19.75
- 17.55
- 15.7
+ 20
+ 17.73
+ 16.21
internal
O.0
- 20.4
- 17.85
- 16.5
+ 20
+ 17.73
+ 16.21
16.5
external
O.1
- 19.65
- 17.45
- 15.6
+ 19.9
+ 17.63
+ 16.11
internal
O.1
- 20.5
- 17.95
- 16.6
- 16.6
+ 20.1
+ 17.83
+ 16.31
+ 16.5
external
O.2
- 19.55
- 17.35
- 15.5
+ 19.8
+ 17.53
+ 16.01
internal
O.2
- 20.6
- 18.05
- 16.7
- 16.7
+ 20.2
+ 17.93
+ 16.41
+ 16.5
external
O.4
- 19.35
- 17.15
- 15.3
+ 19.6
+ 17.33
+ 15.81
internal
O.4
- 20.8
- 18.25
- 16.9
- 16.9
+ 20.4
+ 18.13
+ 16.61
+ 16.5
external
O.8
- 18.95
- 16.75
- 14.9
+ 19.2
+ 16.93
+ 15.41
internal
O.8
- 21.2
- 18.65
- 17.3
- 17.3
+ 20.8
+ 18.53
+ 17.01
+ 16.5
@@ -2050,77 +2050,77 @@
external
O.0
- 19.75
- 16.8
- 14.2
+ 20
+ 16.75
+ 14.59
internal
O.0
- 20.4
- 17.1
- 15
+ 20
+ 16.75
+ 14.59
15
external
O.1
- 19.65
- 16.7
- 14.1
+ 19.9
+ 16.65
+ 14.49
internal
O.1
- 20.5
- 17.2
- 15.1
- 15.1
+ 20.1
+ 16.85
+ 14.69
+ 15
external
O.2
- 19.55
- 16.6
- 14
+ 19.8
+ 16.55
+ 14.39
internal
O.2
- 20.6
- 17.3
- 15.2
- 15.2
+ 20.2
+ 16.95
+ 14.79
+ 15
external
O.4
- 19.35
- 16.4
- 13.8
+ 19.6
+ 16.35
+ 14.19
internal
O.4
- 20.8
- 17.5
- 15.4
- 15.4
+ 20.4
+ 17.15
+ 14.99
+ 15
external
O.8
- 18.95
- 16
- 13.4
+ 19.2
+ 15.95
+ 13.79
internal
O.8
- 21.2
- 17.9
- 15.8
- 15.8
+ 20.8
+ 17.55
+ 15.39
+ 15
@@ -2133,77 +2133,77 @@
external
O.0
- 20.75
- 18.55
- 16.7
+ 21
+ 18.73
+ 17.21
internal
O.0
- 21.4
- 18.85
- 17.5
+ 21
+ 18.73
+ 17.21
17.5
external
O.1
- 20.65
- 18.45
- 16.6
+ 20.9
+ 18.63
+ 17.11
internal
O.1
- 21.5
- 18.95
- 17.6
- 17.6
+ 21.1
+ 18.83
+ 17.31
+ 17.5
external
O.2
- 20.55
- 18.35
- 16.5
+ 20.8
+ 18.53
+ 17.01
internal
O.2
- 21.6
- 19.05
- 17.7
- 17.7
+ 21.2
+ 18.93
+ 17.41
+ 17.5
external
O.4
- 20.35
- 18.15
- 16.3
+ 20.6
+ 18.33
+ 16.81
internal
O.4
- 21.8
- 19.25
- 17.9
- 17.9
+ 21.4
+ 19.13
+ 17.61
+ 17.5
external
O.8
- 19.95
- 17.75
- 15.9
+ 20.2
+ 17.93
+ 16.41
internal
O.8
- 22.2
- 19.65
- 18.3
- 18.3
+ 21.8
+ 19.53
+ 18.01
+ 17.5
@@ -2213,77 +2213,77 @@
external
O.0
- 20.75
- 17.8
- 15.2
+ 21
+ 17.75
+ 15.59
internal
O.0
- 21.4
- 18.1
- 16
+ 21
+ 17.75
+ 15.59
16
external
O.1
- 20.65
- 17.7
- 15.1
+ 20.9
+ 17.65
+ 15.49
internal
O.1
- 21.5
- 18.2
- 16.1
- 16.1
+ 21.1
+ 17.85
+ 15.69
+ 16
external
O.2
- 20.55
- 17.6
- 15
+ 20.8
+ 17.55
+ 15.39
internal
O.2
- 21.6
- 18.3
- 16.2
- 16.2
-
+ 21.2
+ 17.95
+ 15.79
+ 16
+
external
O.4
- 20.35
- 17.4
- 14.8
+ 20.6
+ 17.35
+ 15.19
internal
O.4
- 21.8
- 18.5
- 16.4
- 16.4
+ 21.4
+ 18.15
+ 15.99
+ 16
external
O.8
- 19.95
- 17
- 14.4
+ 20.2
+ 16.95
+ 14.79
internal
O.8
- 22.2
- 18.9
- 16.8
- 16.8
+ 21.8
+ 18.55
+ 16.39
+ 16
@@ -2296,77 +2296,77 @@
external
O.0
- 21.75
- 19.55
- 17.7
+ 22
+ 19.73
+ 18.21
internal
O.0
- 22.4
- 19.85
- 18.5
+ 22
+ 19.73
+ 18.21
18.5
external
O.1
- 21.65
- 19.45
- 17.6
+ 21.9
+ 19.63
+ 18.11
internal
O.1
- 22.5
- 19.95
- 18.6
- 18.6
+ 22.1
+ 19.83
+ 18.31
+ 18.5
external
O.2
- 21.55
- 19.35
- 17.5
+ 21.8
+ 19.53
+ 18.01
internal
O.2
- 22.6
- 20.05
- 18.7
- 18.7
+ 22.2
+ 19.93
+ 18.41
+ 18.5
external
O.4
- 21.35
- 19.15
- 17.3
+ 21.6
+ 19.33
+ 17.81
internal
O.4
- 22.8
- 20.25
- 18.9
- 18.9
+ 22.4
+ 20.13
+ 18.61
+ 18.5
external
O.8
- 20.95
- 18.75
- 16.9
+ 21.2
+ 18.93
+ 17.41
internal
O.8
- 23.2
- 20.65
- 19.3
- 19.3
+ 22.8
+ 20.53
+ 19.01
+ 18.5
@@ -2376,77 +2376,77 @@
external
O.0
- 21.75
- 18.8
- 16.2
+ 22
+ 18.75
+ 16.59
internal
O.0
- 22.4
- 19.1
- 17
+ 22
+ 18.75
+ 16.59
17
external
O.1
- 21.65
- 18.7
- 16.1
+ 21.9
+ 18.65
+ 16.49
internal
O.1
- 22.5
- 19.2
- 17.1
- 17.1
+ 22.1
+ 18.85
+ 16.69
+ 17
external
O.2
- 21.55
- 18.6
- 16
+ 21.8
+ 18.55
+ 16.39
internal
O.2
- 22.6
- 19.3
- 17.2
- 17.2
+ 22.2
+ 18.95
+ 16.79
+ 17
external
O.4
- 21.35
- 18.4
- 15.8
+ 21.6
+ 18.35
+ 16.19
internal
O.4
- 22.8
- 19.5
- 17.4
- 17.4
+ 22.4
+ 19.15
+ 16.99
+ 17
external
O.8
- 20.95
- 18
- 15.4
+ 21.2
+ 17.95
+ 15.79
internal
O.8
- 23.2
- 19.9
- 17.8
- 17.8
+ 22.8
+ 19.55
+ 17.39
+ 17
@@ -2459,77 +2459,77 @@
external
O.0
- 22.75
- 20.55
- 18.7
+ 23
+ 20.73
+ 19.21
internal
O.0
- 23.4
- 20.85
- 19.5
+ 23
+ 20.73
+ 19.21
19.5
external
O.1
- 22.65
- 20.45
- 18.6
+ 22.9
+ 20.63
+ 19.11
internal
O.1
- 23.5
- 20.95
- 19.6
- 19.6
+ 23.1
+ 20.83
+ 19.31
+ 19.5
external
O.2
- 22.55
- 20.35
- 18.5
+ 22.8
+ 20.53
+ 19.01
internal
O.2
- 23.6
- 21.05
- 19.7
- 19.7
+ 23.2
+ 20.93
+ 19.41
+ 19.5
external
O.4
- 22.35
- 20.15
- 18.3
+ 22.6
+ 20.33
+ 18.81
internal
O.4
- 23.8
- 21.25
- 19.9
- 19.9
+ 23.4
+ 21.13
+ 19.61
+ 19.5
external
O.8
- 21.95
- 19.75
- 17.9
+ 22.2
+ 19.93
+ 18.41
internal
O.8
- 24.2
- 21.65
- 20.3
- 20.3
+ 23.8
+ 21.53
+ 20.01
+ 19.5
@@ -2539,77 +2539,77 @@
external
O.0
- 22.75
- 19.8
- 17.2
+ 23
+ 19.75
+ 17.59
internal
O.0
- 23.4
- 20.1
- 18
+ 23
+ 19.75
+ 17.59
18
external
O.1
- 22.65
- 19.7
- 17.1
+ 22.9
+ 19.65
+ 17.49
internal
O.1
- 23.5
- 20.2
- 18.1
- 18.1
+ 23.1
+ 19.85
+ 17.69
+ 18
external
O.2
- 22.55
- 19.6
- 17
+ 22.8
+ 19.55
+ 17.39
internal
O.2
- 23.6
- 20.3
- 18.2
- 18.2
+ 23.2
+ 19.95
+ 17.79
+ 18
external
O.4
- 22.35
- 19.4
- 16.8
+ 22.6
+ 19.35
+ 17.19
internal
O.4
- 23.8
- 20.5
- 18.4
- 18.4
+ 23.4
+ 20.15
+ 17.99
+ 18
external
O.8
- 21.95
- 19
- 16.4
+ 22.2
+ 18.95
+ 16.79
internal
O.8
- 24.2
- 20.9
- 18.8
- 18.8
+ 23.8
+ 20.55
+ 18.39
+ 18
@@ -2622,77 +2622,77 @@
external
O.0
- 23.75
- 21.55
- 19.7
+ 24
+ 21.73
+ 20.21
internal
O.0
- 24.4
- 21.85
- 20.5
+ 24
+ 21.73
+ 20.21
20.5
external
O.1
- 23.65
- 21.45
- 19.6
+ 23.9
+ 21.63
+ 20.11
internal
O.1
- 24.5
- 21.95
- 20.6
- 20.6
+ 24.1
+ 21.83
+ 20.31
+ 20.5
external
O.2
- 23.55
- 21.35
- 19.5
+ 23.8
+ 21.53
+ 20.01
internal
O.2
- 24.6
- 22.05
- 20.7
- 20.7
+ 24.2
+ 21.93
+ 20.41
+ 20.5
external
O.4
- 23.35
- 21.15
- 19.3
+ 23.6
+ 21.33
+ 19.81
internal
O.4
- 24.8
- 22.25
- 20.9
- 20.9
+ 24.4
+ 22.13
+ 20.61
+ 20.5
external
O.8
- 22.95
- 20.75
- 18.9
+ 23.2
+ 20.93
+ 19.41
internal
O.8
- 25.2
- 22.65
- 21.3
- 21.3
+ 24.8
+ 22.53
+ 21.01
+ 20.5
@@ -2702,77 +2702,77 @@
external
O.0
- 23.75
- 20.8
- 18.2
+ 24
+ 20.75
+ 18.59
internal
O.0
- 24.4
- 21.1
- 19
+ 24
+ 20.75
+ 18.59
19
external
O.1
- 23.65
- 20.7
- 18.1
+ 23.9
+ 20.65
+ 18.49
internal
O.1
- 24.5
- 21.2
- 19.1
- 19.1
+ 24.1
+ 20.85
+ 18.69
+ 19
external
O.2
- 23.55
- 20.6
- 18
+ 23.8
+ 20.55
+ 18.39
internal
O.2
- 24.6
- 21.3
- 19.2
- 19.2
+ 24.2
+ 20.95
+ 18.79
+ 19
external
O.4
- 23.35
- 20.4
- 17.8
+ 23.6
+ 20.35
+ 18.19
internal
O.4
- 24.8
- 21.5
- 19.4
- 19.4
+ 24.4
+ 21.15
+ 18.99
+ 19
external
O.8
- 22.95
- 20
- 17.4
+ 23.2
+ 19.95
+ 17.79
internal
O.8
- 25.2
- 21.9
- 19.8
- 19.8
+ 24.8
+ 21.55
+ 19.39
+ 19
@@ -2785,77 +2785,77 @@
external
O.0
- 24.75
- 22.55
- 20.7
+ 25
+ 22.73
+ 21.21
internal
O.0
- 25.4
- 22.85
- 21.5
+ 25
+ 22.73
+ 21.21
21.5
external
O.1
- 24.65
- 22.45
- 20.6
+ 24.9
+ 22.63
+ 21.11
internal
O.1
- 25.5
- 22.95
- 21.6
- 21.6
+ 25.1
+ 22.83
+ 21.31
+ 21.5
external
O.2
- 24.55
- 22.35
- 20.5
+ 24.8
+ 22.53
+ 21.01
internal
O.2
- 25.6
- 23.05
- 21.7
- 21.7
+ 25.2
+ 22.93
+ 21.41
+ 21.5
external
O.4
- 24.35
- 22.15
- 20.3
+ 24.6
+ 22.33
+ 20.81
internal
O.4
- 25.8
- 23.25
- 21.9
- 21.9
+ 25.4
+ 23.13
+ 21.61
+ 21.5
external
O.8
- 23.95
- 21.75
- 19.9
+ 24.2
+ 21.93
+ 20.41
internal
O.8
- 26.2
- 23.65
- 22.3
- 22.3
+ 25.8
+ 23.53
+ 22.01
+ 21.5
@@ -2865,77 +2865,77 @@
external
O.0
- 24.75
- 21.8
- 19.2
+ 25
+ 21.75
+ 19.59
internal
O.0
- 25.4
- 22.1
- 20
+ 25
+ 21.75
+ 19.59
20
external
O.1
- 24.65
- 21.7
- 19.1
+ 24.9
+ 21.65
+ 19.49
internal
O.1
- 25.5
- 22.2
- 20.1
- 20.1
+ 25.1
+ 21.85
+ 19.69
+ 20
external
O.2
- 24.55
- 21.6
- 19
+ 24.8
+ 21.55
+ 19.39
internal
O.2
- 25.6
- 22.3
- 20.2
- 20.2
+ 25.2
+ 21.95
+ 19.79
+ 20
external
O.4
- 24.35
- 21.4
- 18.8
+ 24.6
+ 21.35
+ 19.19
internal
O.4
- 25.8
- 22.5
- 20.4
- 20.4
+ 25.4
+ 22.15
+ 19.99
+ 20
external
O.8
- 23.95
- 21
- 18.4
+ 24.2
+ 20.95
+ 18.79
internal
O.8
- 26.2
- 22.9
- 20.8
- 20.8
+ 25.8
+ 22.55
+ 20.39
+ 20
@@ -2948,77 +2948,77 @@
external
O.0
- 25.75
- 23.55
- 21.7
+ 26
+ 23.73
+ 22.21
internal
O.0
- 26.4
- 23.85
- 22.5
+ 26
+ 23.73
+ 22.21
22.5
external
O.1
- 25.65
- 23.45
- 21.6
+ 25.9
+ 23.63
+ 22.11
internal
O.1
- 26.5
- 23.95
- 22.6
- 22.6
+ 26.1
+ 23.83
+ 22.31
+ 22.5
external
O.2
- 25.55
- 23.35
- 21.5
+ 25.8
+ 23.53
+ 22.01
internal
O.2
- 26.6
- 24.05
- 22.7
- 22.7
+ 26.2
+ 23.93
+ 22.41
+ 22.5
external
O.4
- 25.35
- 23.15
- 21.3
+ 25.6
+ 23.33
+ 21.81
internal
O.4
- 26.8
- 24.25
- 22.9
- 22.9
+ 26.4
+ 24.13
+ 22.61
+ 22.5
external
O.8
- 24.95
- 22.75
- 20.9
+ 25.2
+ 22.93
+ 21.41
internal
O.8
- 27.2
- 24.65
- 23.3
- 23.3
+ 26.8
+ 24.53
+ 23.01
+ 22.5
@@ -3028,77 +3028,77 @@
external
O.0
- 25.75
- 22.8
- 20.2
+ 26
+ 22.75
+ 20.59
internal
O.0
- 26.4
- 23.1
- 21
+ 26
+ 22.75
+ 20.59
21
external
O.1
- 25.65
- 22.7
- 20.1
+ 25.9
+ 22.65
+ 20.49
internal
O.1
- 26.5
- 23.2
- 21.1
- 21.1
+ 26.1
+ 22.85
+ 20.69
+ 21
external
O.2
- 25.55
- 22.6
- 20
+ 25.8
+ 22.55
+ 20.39
internal
O.2
- 26.6
- 23.3
- 21.2
- 21.2
+ 26.2
+ 22.95
+ 20.79
+ 21
external
O.4
- 25.35
- 22.4
- 19.8
+ 25.6
+ 22.35
+ 20.19
internal
O.4
- 26.8
- 23.5
- 21.4
- 21.4
+ 26.4
+ 23.15
+ 20.99
+ 21
external
O.8
- 24.95
- 22
- 19.4
+ 25.2
+ 21.95
+ 19.79
internal
O.8
- 27.2
- 23.9
- 21.8
- 21.8
+ 26.8
+ 23.55
+ 21.39
+ 21
@@ -3111,77 +3111,77 @@
external
O.0
- 26.75
- 24.55
- 22.7
+ 27
+ 24.73
+ 23.21
internal
O.0
- 27.4
- 24.85
- 23.5
+ 27
+ 24.73
+ 23.21
23.5
external
O.1
- 26.65
- 24.45
- 22.6
+ 26.9
+ 24.63
+ 23.11
internal
O.1
- 27.5
- 24.95
- 23.6
- 23.6
+ 27.1
+ 24.83
+ 23.31
+ 23.5
external
O.2
- 26.55
- 24.35
- 22.5
+ 26.8
+ 24.53
+ 23.01
internal
O.2
- 27.6
- 25.05
- 23.7
- 23.7
+ 27.2
+ 24.93
+ 23.41
+ 23.5
external
O.4
- 26.35
- 24.15
- 22.3
+ 26.6
+ 24.33
+ 22.81
internal
O.4
- 27.8
- 25.25
- 23.9
- 23.9
+ 27.4
+ 25.13
+ 23.61
+ 23.5
external
O.8
- 25.95
- 23.75
- 21.9
+ 26.2
+ 23.93
+ 22.41
internal
O.8
- 28.2
- 25.65
- 24.3
- 24.3
+ 27.8
+ 25.53
+ 24.01
+ 23.5
@@ -3191,77 +3191,77 @@
external
O.0
- 26.75
- 23.8
- 21.2
+ 27
+ 23.75
+ 21.59
internal
O.0
- 27.4
- 24.1
- 22
+ 27
+ 23.75
+ 21.59
22
external
O.1
- 26.65
- 23.7
- 21.1
+ 26.9
+ 23.65
+ 21.49
internal
O.1
- 27.5
- 24.2
- 22.1
- 22.1
+ 27.1
+ 23.85
+ 21.69
+ 22
external
O.2
- 26.55
- 23.6
- 21
+ 26.8
+ 23.55
+ 21.39
internal
O.2
- 27.6
- 24.3
- 22.2
- 22.2
+ 27.2
+ 23.95
+ 21.79
+ 22
external
O.4
- 26.35
- 23.4
- 20.8
+ 26.6
+ 23.35
+ 21.19
internal
O.4
- 27.8
- 24.5
- 22.4
- 22.4
+ 27.4
+ 24.15
+ 21.99
+ 22
external
O.8
- 25.95
- 23
- 20.4
+ 26.2
+ 22.95
+ 20.79
internal
O.8
- 28.2
- 24.9
- 22.8
- 22.8
+ 27.8
+ 24.55
+ 22.39
+ 22
@@ -3274,77 +3274,77 @@
external
O.0
- 27.75
- 25.55
- 23.7
+ 28
+ 25.73
+ 24.21
internal
- O.0
- 28.4
- 25.85
- 24.5
+ O.0
+ 28
+ 25.73
+ 24.21
24.5
external
O.1
- 27.65
- 25.45
- 23.6
+ 27.9
+ 25.63
+ 24.11
internal
O.1
- 28.5
- 25.95
- 24.6
- 24.6
+ 28.1
+ 25.83
+ 24.31
+ 24.5
external
O.2
- 27.55
- 25.35
- 23.5
+ 27.8
+ 25.53
+ 24.01
internal
O.2
- 28.6
- 26.05
- 24.7
- 24.7
+ 28.2
+ 25.93
+ 24.41
+ 24.5
external
O.4
- 27.35
- 25.15
- 23.3
+ 27.6
+ 25.33
+ 23.81
internal
O.4
- 28.8
- 26.25
- 24.9
- 24.9
+ 28.4
+ 26.13
+ 24.61
+ 24.5
external
O.8
- 26.95
- 24.75
- 22.9
+ 27.2
+ 24.93
+ 23.41
internal
O.8
- 29.2
- 26.65
- 25.3
- 25.3
+ 28.8
+ 26.53
+ 25.01
+ 24.5
@@ -3354,77 +3354,77 @@
external
O.0
- 27.75
- 24.8
- 22.2
+ 28
+ 24.75
+ 22.59
internal
O.0
- 28.4
- 25.1
- 23
+ 28
+ 24.75
+ 22.59
23
external
O.1
- 27.65
- 24.7
- 22.1
+ 27.9
+ 24.65
+ 22.49
internal
O.1
- 28.5
- 25.2
- 23.1
- 23.1
+ 28.1
+ 24.85
+ 22.69
+ 23
external
O.2
- 27.55
- 24.6
- 22
+ 27.8
+ 24.55
+ 22.39
internal
O.2
- 28.6
- 25.3
- 23.2
- 23.2
+ 28.2
+ 24.95
+ 22.79
+ 23
external
O.4
- 27.35
- 24.4
- 21.8
+ 27.6
+ 24.35
+ 22.19
internal
O.4
- 28.8
- 25.5
- 23.4
- 23.4
+ 28.4
+ 25.15
+ 22.99
+ 23
external
O.8
- 26.95
- 24
- 21.4
+ 27.2
+ 23.95
+ 21.79
internal
O.8
- 29.2
- 25.9
- 23.8
- 23.8
+ 28.8
+ 25.55
+ 23.39
+ 23
@@ -3437,77 +3437,77 @@
external
O.0
- 28.75
- 26.55
- 24.7
+ 29
+ 26.73
+ 25.21
internal
O.0
- 29.4
- 26.85
- 25.5
+ 29
+ 26.73
+ 25.21
25.5
external
O.1
- 28.65
- 26.45
- 24.6
+ 28.9
+ 26.63
+ 25.11
internal
O.1
- 29.5
- 26.95
- 25.6
- 25.6
+ 29.1
+ 26.83
+ 25.31
+ 25.5
external
O.2
- 28.55
- 26.35
- 24.5
+ 28.8
+ 26.53
+ 25.01
internal
O.2
- 29.6
- 27.05
- 25.7
- 25.7
+ 29.2
+ 26.93
+ 25.41
+ 25.5
external
O.4
- 28.35
- 26.15
- 24.3
+ 28.6
+ 26.33
+ 24.81
internal
O.4
- 29.8
- 27.25
- 25.9
- 25.9
+ 29.4
+ 27.13
+ 25.61
+ 25.5
external
O.8
- 27.95
- 25.75
- 23.9
+ 28.2
+ 25.93
+ 24.41
internal
O.8
- 30.2
- 27.65
- 26.3
- 26.3
+ 29.8
+ 27.53
+ 26.01
+ 25.5
@@ -3517,77 +3517,77 @@
external
O.0
- 28.75
- 25.8
- 23.2
+ 29
+ 25.75
+ 23.59
internal
O.0
- 29.4
- 26.1
- 24
+ 29
+ 25.75
+ 23.59
24
external
O.1
- 28.65
- 25.7
- 23.1
+ 28.9
+ 25.65
+ 23.49
internal
O.1
- 29.5
- 26.2
- 24.1
- 24.1
+ 29.1
+ 25.85
+ 23.69
+ 24
external
O.2
- 28.55
- 25.6
- 23
+ 28.8
+ 25.55
+ 23.39
internal
O.2
- 29.6
- 26.3
- 24.2
- 24.2
+ 29.2
+ 25.95
+ 23.79
+ 24
external
O.4
- 28.35
- 25.4
- 22.8
+ 28.6
+ 25.35
+ 23.19
internal
O.4
- 29.8
- 26.5
- 24.4
- 24.4
+ 29.4
+ 26.15
+ 23.99
+ 24
external
O.8
- 27.95
- 25
- 22.4
+ 28.2
+ 24.95
+ 22.79
internal
O.8
- 30.2
- 26.9
- 24.8
- 24.8
+ 29.8
+ 26.55
+ 24.39
+ 24
@@ -3600,77 +3600,77 @@
external
O.0
- 29.75
- 27.55
- 25.7
+ 30
+ 27.73
+ 26.21
internal
O.0
- 30.4
- 27.85
- 26.5
+ 30
+ 27.73
+ 26.21
26.5
external
O.1
- 29.65
- 27.45
- 25.6
+ 29.9
+ 27.63
+ 26.11
internal
O.1
- 30.5
- 27.95
- 26.6
- 26.6
+ 30.1
+ 27.83
+ 26.31
+ 26.5
external
O.2
- 29.55
- 27.35
- 25.5
+ 29.8
+ 27.53
+ 26.01
internal
O.2
- 30.6
- 28.05
- 26.7
- 26.7
+ 30.2
+ 27.93
+ 26.41
+ 26.5
external
O.4
- 29.35
- 27.15
- 25.3
+ 29.6
+ 27.33
+ 25.81
internal
O.4
- 30.8
- 28.25
- 26.9
- 26.9
+ 30.4
+ 28.13
+ 26.61
+ 26.5
external
O.8
- 28.95
- 26.75
- 24.9
+ 29.2
+ 26.93
+ 25.41
internal
O.8
- 31.2
- 28.65
- 27.3
- 27.3
+ 30.8
+ 28.53
+ 27.01
+ 26.5
@@ -3680,77 +3680,77 @@
external
O.0
- 29.75
- 26.8
- 24.2
+ 30
+ 26.75
+ 24.59
internal
O.0
- 30.4
- 27.1
- 25
+ 30
+ 26.75
+ 24.59
25
external
O.1
- 29.65
- 26.7
- 24.1
+ 29.9
+ 26.65
+ 24.49
internal
O.1
- 30.5
- 27.2
- 25.1
- 25.1
+ 30.1
+ 26.85
+ 24.69
+ 25
external
O.2
- 29.55
- 26.6
- 24
+ 29.8
+ 26.55
+ 24.39
internal
O.2
- 30.6
- 27.3
- 25.2
- 25.2
+ 30.2
+ 26.95
+ 24.79
+ 25
external
O.4
- 29.35
- 26.4
- 23.8
+ 29.6
+ 26.35
+ 24.19
internal
O.4
- 30.8
- 27.5
- 25.4
- 25.4
+ 30.4
+ 27.15
+ 24.99
+ 25
external
O.8
- 28.95
- 26
- 23.4
+ 29.2
+ 25.95
+ 23.79
internal
O.8
- 31.2
- 27.9
- 25.8
- 25.8
+ 30.8
+ 27.55
+ 25.39
+ 25
@@ -3763,77 +3763,77 @@
external
O.0
- 30.75
- 28.55
- 26.7
+ 31
+ 28.73
+ 27.21
internal
O.0
- 31.4
- 28.85
- 27.5
+ 31
+ 28.73
+ 27.21
27.5
external
O.1
- 30.65
- 28.45
- 26.6
+ 30.9
+ 28.63
+ 27.11
internal
O.1
- 31.5
- 28.95
- 27.6
- 27.6
+ 31.1
+ 28.83
+ 27.31
+ 27.5
external
O.2
- 30.55
- 28.35
- 26.5
+ 30.8
+ 28.53
+ 27.01
internal
O.2
- 31.6
- 29.05
- 27.7
- 27.7
+ 31.2
+ 28.93
+ 27.41
+ 27.5
external
O.4
- 30.35
- 28.15
- 26.3
+ 30.6
+ 28.33
+ 26.81
internal
O.4
- 31.8
- 29.25
- 27.9
- 27.9
+ 31.4
+ 29.13
+ 27.61
+ 27.5
external
O.8
- 29.95
- 27.75
- 25.9
+ 30.2
+ 27.93
+ 26.41
internal
O.8
- 32.2
- 29.65
- 28.3
- 28.3
+ 31.8
+ 29.53
+ 28.01
+ 27.5
@@ -3843,77 +3843,77 @@
external
O.0
- 30.75
- 27.8
- 25.2
+ 31
+ 27.75
+ 25.59
internal
O.0
- 31.4
- 28.1
- 26
+ 31
+ 27.75
+ 25.59
26
external
O.1
- 30.65
- 27.7
- 25.1
+ 30.9
+ 27.65
+ 25.49
internal
O.1
- 31.5
- 28.2
- 26.1
- 26.1
+ 31.1
+ 27.85
+ 25.69
+ 26
external
O.2
- 30.55
- 27.6
- 25
+ 30.8
+ 27.55
+ 25.39
internal
O.2
- 31.6
- 28.3
- 26.2
- 26.2
+ 31.2
+ 27.95
+ 25.79
+ 26
external
O.4
- 30.35
- 27.4
- 24.8
+ 30.6
+ 27.35
+ 25.19
internal
O.4
- 31.8
- 28.5
- 26.4
- 26.4
+ 31.4
+ 28.15
+ 25.99
+ 26
external
O.8
- 29.95
- 27
- 24.4
+ 30.2
+ 26.95
+ 24.79
internal
O.8
- 32.2
- 28.9
- 26.8
- 26.8
+ 31.8
+ 28.55
+ 26.39
+ 26
@@ -3926,77 +3926,77 @@
external
O.0
- 31.75
- 29.55
- 27.7
+ 32
+ 29.73
+ 28.21
internal
O.0
- 32.4
- 29.85
- 28.5
+ 32
+ 29.73
+ 28.21
28.5
external
O.1
- 31.65
- 29.45
- 27.6
+ 31.9
+ 29.63
+ 28.11
internal
O.1
- 32.5
- 29.95
- 28.6
- 28.6
+ 32.1
+ 29.83
+ 28.31
+ 28.5
external
O.2
- 31.55
- 29.35
- 27.5
+ 31.8
+ 29.53
+ 28.01
internal
O.2
- 32.6
- 30.05
- 28.7
- 28.7
+ 32.2
+ 29.93
+ 28.41
+ 28.5
external
O.4
- 31.35
- 29.15
- 27.3
+ 31.6
+ 29.33
+ 27.81
internal
O.4
- 32.8
- 30.25
- 28.9
- 28.9
+ 32.4
+ 30.13
+ 28.61
+ 28.5
external
O.8
- 30.95
- 28.75
- 26.9
+ 31.2
+ 28.93
+ 27.41
internal
O.8
- 33.2
- 30.65
- 29.3
- 29.3
+ 32.8
+ 30.53
+ 29.01
+ 28.5
@@ -4006,77 +4006,77 @@
external
O.0
- 31.75
- 28.8
- 26.2
+ 32
+ 28.75
+ 26.59
internal
O.0
- 32.4
- 29.1
- 27
+ 32
+ 28.75
+ 26.59
27
external
O.1
- 31.65
- 28.7
- 26.1
+ 31.9
+ 28.65
+ 26.49
internal
O.1
- 32.5
- 29.2
- 27.1
- 27.1
+ 32.1
+ 28.85
+ 26.69
+ 27
external
O.2
- 31.55
- 28.6
- 26
+ 31.8
+ 28.55
+ 26.39
internal
O.2
- 32.6
- 29.3
- 27.2
- 27.2
+ 32.2
+ 28.95
+ 26.79
+ 27
external
O.4
- 31.35
- 28.4
- 25.8
+ 31.6
+ 28.35
+ 26.19
internal
O.4
- 32.8
- 29.5
- 27.4
- 27.4
+ 32.4
+ 29.15
+ 26.99
+ 27
external
O.8
- 30.95
- 28
- 25.4
+ 31.2
+ 27.95
+ 25.79
internal
O.8
- 33.2
- 29.9
- 27.8
- 27.8
+ 32.8
+ 29.55
+ 27.39
+ 27
@@ -4089,77 +4089,77 @@
external
O.0
- 32.75
- 30.55
- 28.7
+ 33
+ 30.73
+ 29.21
internal
O.0
- 33.4
- 30.85
- 29.5
+ 33
+ 30.73
+ 29.21
29.5
external
O.1
- 32.65
- 30.45
- 28.6
+ 32.9
+ 30.63
+ 29.11
internal
O.1
- 33.5
- 30.95
- 29.6
- 29.6
+ 33.1
+ 30.83
+ 29.31
+ 29.5
external
O.2
- 32.55
- 30.35
- 28.5
+ 32.8
+ 30.53
+ 29.01
internal
O.2
- 33.6
- 31.05
- 29.7
- 29.7
+ 33.2
+ 30.93
+ 29.41
+ 29.5
external
O.4
- 32.35
- 30.15
- 28.3
+ 32.6
+ 30.33
+ 28.81
internal
O.4
- 33.8
- 31.25
- 29.9
- 29.9
+ 33.4
+ 31.13
+ 29.61
+ 29.5
external
O.8
- 31.95
- 29.75
- 27.9
+ 32.2
+ 29.93
+ 28.41
internal
O.8
- 34.2
- 31.65
- 30.3
- 30.3
+ 33.8
+ 31.53
+ 30.01
+ 29.5
@@ -4169,77 +4169,77 @@
external
O.0
- 32.75
- 29.8
- 27.2
+ 33
+ 29.75
+ 27.59
internal
O.0
- 33.4
- 30.1
- 28
+ 33
+ 29.75
+ 27.59
28
external
O.1
- 32.65
- 29.7
- 27.1
+ 32.9
+ 29.65
+ 27.49
internal
O.1
- 33.5
- 30.2
- 28.1
- 28.1
+ 33.1
+ 29.85
+ 27.69
+ 28
external
O.2
- 32.55
- 29.6
- 27
+ 32.8
+ 29.55
+ 27.39
internal
O.2
- 33.6
- 30.3
- 28.2
- 28.2
+ 33.2
+ 29.95
+ 27.79
+ 28
external
O.4
- 32.35
- 29.4
- 26.8
+ 32.6
+ 29.35
+ 27.19
internal
O.4
- 33.8
- 30.5
- 28.4
- 28.4
+ 33.4
+ 30.15
+ 27.99
+ 28
external
O.8
- 31.95
- 29
- 26.4
+ 32.2
+ 28.95
+ 26.79
internal
O.8
- 34.2
- 30.9
- 28.8
- 28.8
+ 33.8
+ 30.55
+ 28.39
+ 28
@@ -4252,77 +4252,77 @@
external
O.0
- 33.75
- 31.55
- 29.7
+ 34
+ 31.73
+ 30.21
internal
O.0
- 34.4
- 31.85
- 30.5
+ 34
+ 31.73
+ 30.21
30.5
external
O.1
- 33.65
- 31.45
- 29.6
+ 33.9
+ 31.63
+ 30.11
internal
O.1
- 34.5
- 31.95
- 30.6
- 30.6
+ 34.1
+ 31.83
+ 30.31
+ 30.5
external
O.2
- 33.55
- 31.35
- 29.5
+ 33.8
+ 31.53
+ 30.01
internal
O.2
- 34.6
- 32.05
- 30.7
- 30.7
+ 34.2
+ 31.93
+ 30.41
+ 30.5
external
O.4
- 33.35
- 31.15
- 29.3
+ 33.6
+ 31.33
+ 29.81
internal
O.4
- 34.8
- 32.25
- 30.9
- 30.9
+ 34.4
+ 32.13
+ 30.61
+ 30.5
external
O.8
- 32.95
- 30.75
- 28.9
+ 33.2
+ 30.93
+ 29.41
internal
O.8
- 35.2
- 32.65
- 31.3
- 31.3
+ 34.8
+ 32.53
+ 31.01
+ 30.5
@@ -4332,77 +4332,77 @@
external
O.0
- 33.75
- 30.8
- 28.2
+ 34
+ 30.75
+ 28.59
internal
O.0
- 34.4
- 31.1
- 29
+ 34
+ 30.75
+ 28.59
29
external
O.1
- 33.65
- 30.7
- 28.1
+ 33.9
+ 30.65
+ 28.49
internal
O.1
- 34.5
- 31.2
- 29.1
- 29.1
+ 34.1
+ 30.85
+ 28.69
+ 29
external
O.2
- 33.55
- 30.6
- 28
+ 33.8
+ 30.55
+ 28.39
internal
O.2
- 34.6
- 31.3
- 29.2
- 29.2
+ 34.2
+ 30.95
+ 28.79
+ 29
external
O.4
- 33.35
- 30.4
- 27.8
+ 33.6
+ 30.35
+ 28.19
internal
O.4
- 34.8
- 31.5
- 29.4
- 29.4
+ 34.4
+ 31.15
+ 28.99
+ 29
external
O.8
- 32.95
- 30
- 27.4
+ 33.2
+ 29.95
+ 27.79
internal
O.8
- 35.2
- 31.9
- 29.8
- 29.8
+ 34.8
+ 31.55
+ 29.39
+ 29
@@ -4415,77 +4415,77 @@
external
O.0
- 34.75
- 32.55
- 30.7
+ 35
+ 32.73
+ 31.21
internal
O.0
- 35.4
- 32.85
- 31.5
+ 35
+ 32.73
+ 31.21
31.5
external
O.1
- 34.65
- 32.45
- 30.6
+ 34.9
+ 32.63
+ 31.11
internal
O.1
- 35.5
- 32.95
- 31.6
- 31.6
+ 35.1
+ 32.83
+ 31.31
+ 31.5
external
O.2
- 34.55
- 32.35
- 30.5
+ 34.8
+ 32.53
+ 31.01
internal
O.2
- 35.6
- 33.05
- 31.7
- 31.7
+ 35.2
+ 32.93
+ 31.41
+ 31.5
external
O.4
- 34.35
- 32.15
- 30.3
+ 34.6
+ 32.33
+ 30.81
internal
O.4
- 35.8
- 33.25
- 31.9
- 31.9
+ 35.4
+ 33.13
+ 31.61
+ 31.5
external
O.8
- 33.95
- 31.75
- 29.9
+ 34.2
+ 31.93
+ 30.41
internal
O.8
- 36.2
- 33.65
- 32.3
- 32.3
+ 35.8
+ 33.53
+ 32.01
+ 31.5
@@ -4495,77 +4495,77 @@
external
O.0
- 34.75
- 31.8
- 29.2
+ 35
+ 31.75
+ 29.59
internal
O.0
- 35.4
- 32.1
- 30
+ 35
+ 31.75
+ 29.59
30
external
O.1
- 34.65
- 31.7
- 29.1
+ 34.9
+ 31.65
+ 29.49
internal
O.1
- 35.5
- 32.2
- 30.1
- 30.1
+ 35.1
+ 31.85
+ 29.69
+ 30
external
O.2
- 34.55
- 31.6
- 29
+ 34.8
+ 31.55
+ 29.39
internal
O.2
- 35.6
- 32.3
- 30.2
- 30.2
+ 35.2
+ 31.95
+ 29.79
+ 30
external
O.4
- 34.35
- 31.4
- 28.8
+ 34.6
+ 31.35
+ 29.19
internal
O.4
- 35.8
- 32.5
- 30.4
- 30.4
+ 35.4
+ 32.15
+ 29.99
+ 30
external
O.8
- 33.95
- 31
- 28.4
+ 34.2
+ 30.95
+ 28.79
internal
O.8
- 36.2
- 32.9
- 30.8
- 30.8
+ 35.8
+ 32.55
+ 30.39
+ 30
@@ -4578,77 +4578,77 @@
external
O.0
- 35.75
- 33.55
- 31.7
+ 36
+ 33.73
+ 32.21
internal
O.0
- 36.4
- 33.85
- 32.5
+ 36
+ 33.73
+ 32.21
32.5
external
O.1
- 35.65
- 33.45
- 31.6
+ 35.9
+ 33.63
+ 32.11
internal
O.1
- 36.5
- 33.95
- 32.6
- 32.6
+ 36.1
+ 33.83
+ 32.31
+ 32.5
external
O.2
- 35.55
- 33.35
- 31.5
+ 35.8
+ 33.53
+ 32.01
internal
O.2
- 36.6
- 34.05
- 32.7
- 32.7
+ 36.2
+ 33.93
+ 32.41
+ 32.5
external
O.4
- 35.35
- 33.15
- 31.3
+ 35.6
+ 33.33
+ 31.81
internal
O.4
- 36.8
- 34.25
- 32.9
- 32.9
+ 36.4
+ 34.13
+ 32.61
+ 32.5
external
O.8
- 34.95
- 32.75
- 30.9
+ 35.2
+ 32.93
+ 31.41
internal
O.8
- 37.2
- 34.65
- 33.3
- 33.3
+ 36.8
+ 34.53
+ 33.01
+ 32.5
@@ -4658,77 +4658,77 @@
external
O.0
- 35.75
- 32.8
- 30.2
+ 36
+ 32.75
+ 30.59
internal
O.0
- 36.4
- 33.1
- 31
+ 36
+ 32.75
+ 30.59
31
external
O.1
- 35.65
- 32.7
- 30.1
+ 35.9
+ 32.65
+ 30.49
internal
O.1
- 36.5
- 33.2
- 31.1
- 31.1
+ 36.1
+ 32.85
+ 30.69
+ 31
external
O.2
- 35.55
- 32.6
- 30
+ 35.8
+ 32.55
+ 30.39
internal
O.2
- 36.6
- 33.3
- 31.2
- 31.2
+ 36.2
+ 32.95
+ 30.79
+ 31
external
O.4
- 35.35
- 32.4
- 29.8
+ 35.6
+ 32.35
+ 30.19
internal
O.4
- 36.8
- 33.5
- 31.4
- 31.4
+ 36.4
+ 33.15
+ 30.99
+ 31
external
O.8
- 34.95
- 32
- 29.4
+ 35.2
+ 31.95
+ 29.79
internal
O.8
- 37.2
- 33.9
- 31.8
- 31.8
+ 36.8
+ 33.55
+ 31.39
+ 31
@@ -4741,77 +4741,77 @@
external
O.0
- 36.75
- 34.55
- 32.7
+ 37
+ 34.73
+ 33.21
internal
O.0
- 37.4
- 34.85
- 33.5
+ 37
+ 34.73
+ 33.21
33.5
external
O.1
- 36.65
- 34.45
- 32.6
+ 36.9
+ 34.63
+ 33.11
internal
O.1
- 37.5
- 34.95
- 33.6
- 33.6
+ 37.1
+ 34.83
+ 33.31
+ 33.5
external
O.2
- 36.55
- 34.35
- 32.5
+ 36.8
+ 34.53
+ 33.01
internal
O.2
- 37.6
- 35.05
- 33.7
- 33.7
+ 37.2
+ 34.93
+ 33.41
+ 33.5
external
O.4
- 36.35
- 34.15
- 32.3
+ 36.6
+ 34.33
+ 32.81
internal
O.4
- 37.8
- 35.25
- 33.9
- 33.9
+ 37.4
+ 35.13
+ 33.61
+ 33.5
external
O.8
- 35.95
- 33.75
- 31.9
+ 36.2
+ 33.93
+ 32.41
internal
O.8
- 38.2
- 35.65
- 34.3
- 34.3
+ 37.8
+ 35.53
+ 34.01
+ 33.5
@@ -4821,77 +4821,77 @@
external
O.0
- 36.75
- 33.8
- 31.2
+ 37
+ 33.75
+ 31.59
internal
O.0
- 37.4
- 34.1
- 32
+ 37
+ 33.75
+ 31.59
32
external
O.1
- 36.65
- 33.7
- 31.1
+ 36.9
+ 33.65
+ 31.49
internal
O.1
- 37.5
- 34.2
- 32.1
- 32.1
+ 37.1
+ 33.85
+ 31.69
+ 32
external
O.2
- 36.55
- 33.6
- 31
+ 36.8
+ 33.55
+ 31.39
internal
O.2
- 37.6
- 34.3
- 32.2
- 32.2
+ 37.2
+ 33.95
+ 31.79
+ 32
external
O.4
- 36.35
- 33.4
- 30.8
+ 36.6
+ 33.35
+ 31.19
internal
O.4
- 37.8
- 34.5
- 32.4
- 32.4
+ 37.4
+ 34.15
+ 31.99
+ 32
external
O.8
- 35.95
- 33
- 30.4
+ 36.2
+ 32.95
+ 30.79
internal
O.8
- 38.2
- 34.9
- 32.8
- 32.8
+ 37.8
+ 34.55
+ 32.39
+ 32
@@ -4904,77 +4904,77 @@
external
O.0
- 37.75
- 35.55
- 33.7
+ 38
+ 35.73
+ 34.21
internal
O.0
- 38.4
- 35.85
- 34.5
+ 38
+ 35.73
+ 34.21
34.5
external
O.1
- 37.65
- 35.45
- 33.6
+ 37.9
+ 35.63
+ 34.11
internal
O.1
- 38.5
- 35.95
- 34.6
- 34.6
+ 38.1
+ 35.83
+ 34.31
+ 34.5
external
O.2
- 37.55
- 35.35
- 33.5
+ 37.8
+ 35.53
+ 34.01
internal
O.2
- 38.6
- 36.05
- 34.7
- 34.7
+ 38.2
+ 35.93
+ 34.41
+ 34.5
external
O.4
- 37.35
- 35.15
- 33.3
+ 37.6
+ 35.33
+ 33.81
internal
O.4
- 38.8
- 36.25
- 34.9
- 34.9
+ 38.4
+ 36.13
+ 34.61
+ 34.5
external
O.8
- 36.95
- 34.75
- 32.9
+ 37.2
+ 34.93
+ 33.41
internal
O.8
- 39.2
- 36.65
- 35.3
- 35.3
+ 38.8
+ 36.53
+ 35.01
+ 34.5
@@ -4984,77 +4984,77 @@
external
O.0
- 37.75
- 34.8
- 32.2
+ 38
+ 34.75
+ 32.59
internal
O.0
- 38.4
- 35.1
- 33
+ 38
+ 34.75
+ 32.59
33
external
O.1
- 37.65
- 34.7
- 32.1
+ 37.9
+ 34.65
+ 32.49
internal
O.1
- 38.5
- 35.2
- 33.1
- 33.1
+ 38.1
+ 34.85
+ 32.69
+ 33
external
O.2
- 37.55
- 34.6
- 32
+ 37.8
+ 34.55
+ 32.39
internal
O.2
- 38.6
- 35.3
- 33.2
- 33.2
+ 38.2
+ 34.95
+ 32.79
+ 33
external
O.4
- 37.35
- 34.4
- 31.8
+ 37.6
+ 34.35
+ 32.19
internal
O.4
- 38.8
- 35.5
- 33.4
- 33.4
+ 38.4
+ 35.15
+ 32.99
+ 33
external
O.8
- 36.95
- 34
- 31.4
+ 37.2
+ 33.95
+ 31.79
internal
O.8
- 39.2
- 35.9
- 33.8
- 33.8
+ 38.8
+ 35.55
+ 33.39
+ 33
@@ -5067,77 +5067,77 @@
external
O.0
- 38.75
- 36.55
- 34.7
+ 39
+ 36.73
+ 35.21
internal
O.0
- 39.4
- 36.85
- 35.5
+ 39
+ 36.73
+ 35.21
35.5
external
O.1
- 38.65
- 36.45
- 34.6
+ 38.9
+ 36.63
+ 35.11
internal
O.1
- 39.5
- 36.95
- 35.6
- 35.6
+ 39.1
+ 36.83
+ 35.31
+ 35.5
external
O.2
- 38.55
- 36.35
- 34.5
+ 38.8
+ 36.53
+ 35.01
internal
O.2
- 39.6
- 37.05
- 35.7
- 35.7
+ 39.2
+ 36.93
+ 35.41
+ 35.5
external
O.4
- 38.35
- 36.15
- 34.3
+ 38.6
+ 36.33
+ 34.81
internal
O.4
- 39.8
- 37.25
- 35.9
- 35.9
+ 39.4
+ 37.13
+ 35.61
+ 35.5
external
O.8
- 37.95
- 35.75
- 33.9
+ 38.2
+ 35.93
+ 34.41
internal
O.8
- 40.2
- 37.65
- 36.3
- 36.3
+ 39.8
+ 37.53
+ 36.01
+ 35.5
@@ -5147,77 +5147,77 @@
external
O.0
- 38.75
- 35.8
- 33.2
+ 39
+ 35.75
+ 33.59
internal
O.0
- 39.4
- 36.1
- 34
+ 39
+ 35.75
+ 33.59
34
external
O.1
- 38.65
- 35.7
- 33.1
+ 38.9
+ 35.65
+ 33.49
internal
O.1
- 39.5
- 36.2
- 34.1
- 34.1
+ 39.1
+ 35.85
+ 33.69
+ 34
external
O.2
- 38.55
- 35.6
- 33
+ 38.8
+ 35.55
+ 33.39
internal
O.2
- 39.6
- 36.3
- 34.2
- 34.2
+ 39.2
+ 35.95
+ 33.79
+ 34
external
O.4
- 38.35
- 35.4
- 32.8
+ 38.6
+ 35.35
+ 33.19
internal
O.4
- 39.8
- 36.5
- 34.4
- 34.4
+ 39.4
+ 36.15
+ 33.99
+ 34
external
O.8
- 37.95
- 35
- 32.4
+ 38.2
+ 34.95
+ 32.79
internal
O.8
- 40.2
- 36.9
- 34.8
- 34.8
+ 39.8
+ 36.55
+ 34.39
+ 34
@@ -5230,77 +5230,77 @@
external
O.0
- 39.75
- 37.55
- 35.7
+ 40
+ 37.73
+ 36.21
internal
O.0
- 40.4
- 37.85
- 36.5
+ 40
+ 37.73
+ 36.21
36.5
external
O.1
- 39.65
- 37.45
- 35.6
+ 39.9
+ 37.63
+ 36.11
internal
O.1
- 40.5
- 37.95
- 36.6
- 36.6
+ 40.1
+ 37.83
+ 36.31
+ 36.5
external
O.2
- 39.55
- 37.35
- 35.5
+ 39.8
+ 37.53
+ 36.01
internal
O.2
- 40.6
- 38.05
- 36.7
- 36.7
+ 40.2
+ 37.93
+ 36.41
+ 36.5
external
O.4
- 39.35
- 37.15
- 35.3
+ 39.6
+ 37.33
+ 35.81
internal
O.4
- 40.8
- 38.25
- 36.9
- 36.9
+ 40.4
+ 38.13
+ 36.61
+ 36.5
external
O.8
- 38.95
- 36.75
- 34.9
+ 39.2
+ 36.93
+ 35.41
internal
O.8
- 41.2
- 38.65
- 37.3
- 37.3
+ 40.8
+ 38.53
+ 37.01
+ 36.5
@@ -5310,77 +5310,77 @@
external
O.0
- 39.75
- 36.8
- 34.2
+ 40
+ 36.75
+ 34.59
internal
O.0
- 40.4
- 37.1
- 35
+ 40
+ 36.75
+ 34.59
35
external
O.1
- 39.65
- 36.7
- 34.1
+ 39.9
+ 36.65
+ 34.49
internal
O.1
- 40.5
- 37.2
- 35.1
- 35.1
+ 40.1
+ 36.85
+ 34.69
+ 35
external
O.2
- 39.55
- 36.6
- 34
+ 39.8
+ 36.55
+ 34.39
internal
O.2
- 40.6
- 37.3
- 35.2
- 35.2
+ 40.2
+ 36.95
+ 34.79
+ 35
external
O.4
- 39.35
- 36.4
- 33.8
+ 39.6
+ 36.35
+ 34.19
internal
O.4
- 40.8
- 37.5
- 35.4
- 35.4
+ 40.4
+ 37.15
+ 34.99
+ 35
external
O.8
- 38.95
- 36
- 33.4
+ 39.2
+ 35.95
+ 33.79
internal
O.8
- 41.2
- 37.9
- 35.8
- 35.8
+ 40.8
+ 37.55
+ 35.39
+ 35
@@ -5393,77 +5393,77 @@
external
O.0
- 40.75
- 38.55
- 36.7
+ 41
+ 38.73
+ 37.21
internal
O.0
- 41.4
- 38.85
- 37.5
+ 41
+ 38.73
+ 37.21
37.5
external
O.1
- 40.65
- 38.45
- 36.6
+ 40.9
+ 38.63
+ 37.11
internal
O.1
- 41.5
- 38.95
- 37.6
- 37.6
+ 41.1
+ 38.83
+ 37.31
+ 37.5
external
O.2
- 40.55
- 38.35
- 36.5
+ 40.8
+ 38.53
+ 37.01
internal
O.2
- 41.6
- 39.05
- 37.7
- 37.7
+ 41.2
+ 38.93
+ 37.41
+ 37.5
external
O.4
- 40.35
- 38.15
- 36.3
+ 40.6
+ 38.33
+ 36.81
internal
O.4
- 41.8
- 39.25
- 37.9
- 37.9
+ 41.4
+ 39.13
+ 37.61
+ 37.5
external
O.8
- 39.95
- 37.75
- 35.9
+ 40.2
+ 37.93
+ 36.41
internal
O.8
- 42.2
- 39.65
- 38.3
- 38.3
+ 41.8
+ 39.53
+ 38.01
+ 37.5
@@ -5473,77 +5473,77 @@
external
O.0
- 40.75
- 37.8
- 35.2
+ 41
+ 37.75
+ 35.59
internal
O.0
- 41.4
- 38.1
- 36
+ 41
+ 37.75
+ 35.59
36
external
O.1
- 40.65
- 37.7
- 35.1
+ 40.9
+ 37.65
+ 35.49
internal
O.1
- 41.5
- 38.2
- 36.1
- 36.1
+ 41.1
+ 37.85
+ 35.69
+ 36
external
O.2
- 40.55
- 37.6
- 35
+ 40.8
+ 37.55
+ 35.39
internal
O.2
- 41.6
- 38.3
- 36.2
- 36.2
+ 41.2
+ 37.95
+ 35.79
+ 36
external
O.4
- 40.35
- 37.4
- 34.8
+ 40.6
+ 37.35
+ 35.19
internal
O.4
- 41.8
- 38.5
- 36.4
- 36.4
+ 41.4
+ 38.15
+ 35.99
+ 36
external
O.8
- 39.95
- 37
- 34.4
+ 40.2
+ 36.95
+ 34.79
internal
O.8
- 42.2
- 38.9
- 36.8
- 36.8
+ 41.8
+ 38.55
+ 36.39
+ 36
@@ -5556,77 +5556,77 @@
external
O.0
- 41.75
- 39.55
- 37.7
+ 42
+ 39.73
+ 38.21
internal
O.0
- 42.4
- 39.85
- 38.5
+ 42
+ 39.73
+ 38.21
38.5
external
O.1
- 41.65
- 39.45
- 37.6
+ 41.9
+ 39.63
+ 38.11
internal
O.1
- 42.5
- 39.95
- 38.6
- 38.6
+ 42.1
+ 39.83
+ 38.31
+ 38.5
external
O.2
- 41.55
- 39.35
- 37.5
+ 41.8
+ 39.53
+ 38.01
internal
O.2
- 42.6
- 40.05
- 38.7
- 38.7
+ 42.2
+ 39.93
+ 38.41
+ 38.5
external
O.4
- 41.35
- 39.15
- 37.3
+ 41.6
+ 39.33
+ 37.81
internal
O.4
- 42.8
- 40.25
- 38.9
- 38.9
+ 42.4
+ 40.13
+ 38.61
+ 38.5
external
O.8
- 40.95
- 38.75
- 36.9
+ 41.2
+ 38.93
+ 37.41
internal
O.8
- 43.2
- 40.65
- 39.3
- 39.3
+ 42.8
+ 40.53
+ 39.01
+ 38.5
@@ -5636,77 +5636,77 @@
external
O.0
- 41.75
- 38.8
- 36.2
+ 42
+ 38.75
+ 36.59
internal
O.0
- 42.4
- 39.1
- 37
+ 42
+ 38.75
+ 36.59
37
external
O.1
- 41.65
- 38.7
- 36.1
+ 41.9
+ 38.65
+ 36.49
internal
O.1
- 42.5
- 39.2
- 37.1
- 37.1
+ 42.1
+ 38.85
+ 36.69
+ 37
external
O.2
- 41.55
- 38.6
- 36
+ 41.8
+ 38.55
+ 36.39
internal
O.2
- 42.6
- 39.3
- 37.2
- 37.2
+ 42.2
+ 38.95
+ 36.79
+ 37
external
O.4
- 41.35
- 38.4
- 35.8
+ 41.6
+ 38.35
+ 36.19
internal
O.4
- 42.8
- 39.5
- 37.4
- 37.4
+ 42.4
+ 39.15
+ 36.99
+ 37
external
O.8
- 40.95
- 38
- 35.4
+ 41.2
+ 37.95
+ 35.79
internal
O.8
- 43.2
- 39.9
- 37.8
- 37.8
+ 42.8
+ 39.55
+ 37.39
+ 37
@@ -5719,77 +5719,77 @@
external
O.0
- 42.75
- 40.55
- 38.7
+ 43
+ 40.73
+ 39.21
internal
O.0
- 43.4
- 40.85
- 39.5
+ 43
+ 40.73
+ 39.21
39.5
external
O.1
- 42.65
- 40.45
- 38.6
+ 42.9
+ 40.63
+ 39.11
internal
O.1
- 43.5
- 40.95
- 39.6
- 39.6
+ 43.1
+ 40.83
+ 39.31
+ 39.5
external
O.2
- 42.55
- 40.35
- 38.5
+ 42.8
+ 40.53
+ 39.01
internal
O.2
- 43.6
- 41.05
- 39.7
- 39.7
+ 43.2
+ 40.93
+ 39.41
+ 39.5
external
O.4
- 42.35
- 40.15
- 38.3
+ 42.6
+ 40.33
+ 38.81
internal
O.4
- 43.8
- 41.25
- 39.9
- 39.9
+ 43.4
+ 41.13
+ 39.61
+ 39.5
external
O.8
- 41.95
- 39.75
- 37.9
+ 42.2
+ 39.93
+ 38.41
internal
O.8
- 44.2
- 41.65
- 40.3
- 40.3
+ 43.8
+ 41.53
+ 40.01
+ 39.5
@@ -5799,77 +5799,77 @@
external
O.0
- 42.75
- 39.8
- 37.2
+ 43
+ 39.75
+ 37.59
internal
O.0
- 43.4
- 40.1
- 38
+ 43
+ 39.75
+ 37.59
38
external
O.1
- 42.65
- 39.7
- 37.1
+ 42.9
+ 39.65
+ 37.49
internal
O.1
- 43.5
- 40.2
- 38.1
- 38.1
+ 43.1
+ 39.85
+ 37.69
+ 38
external
O.2
- 42.55
- 39.6
- 37
+ 42.8
+ 39.55
+ 37.39
internal
O.2
- 43.6
- 40.3
- 38.2
- 38.2
+ 43.2
+ 39.95
+ 37.79
+ 38
external
O.4
- 42.35
- 39.4
- 36.8
+ 42.6
+ 39.35
+ 37.19
internal
O.4
- 43.8
- 40.5
- 38.4
- 38.4
+ 43.4
+ 40.15
+ 37.99
+ 38
external
O.8
- 41.95
- 39
- 36.4
+ 42.2
+ 38.95
+ 36.79
internal
O.8
- 44.2
- 40.9
- 38.8
- 38.8
+ 43.8
+ 40.55
+ 38.39
+ 38
@@ -5882,77 +5882,77 @@
external
O.0
- 43.75
- 41.55
- 39.7
+ 44
+ 41.73
+ 40.21
internal
O.0
- 44.4
- 41.85
- 40.5
+ 44
+ 41.73
+ 40.21
40.5
external
O.1
- 43.65
- 41.45
- 39.6
+ 43.9
+ 41.63
+ 40.11
internal
O.1
- 44.5
- 41.95
- 40.6
- 40.6
+ 44.1
+ 41.83
+ 40.31
+ 40.5
external
O.2
- 43.55
- 41.35
- 39.5
+ 43.8
+ 41.53
+ 40.01
internal
O.2
- 44.6
- 42.05
- 40.7
- 40.7
+ 44.2
+ 41.93
+ 40.41
+ 40.5
external
O.4
- 43.35
- 41.15
- 39.3
+ 43.6
+ 41.33
+ 39.81
internal
O.4
- 44.8
- 42.25
- 40.9
- 40.9
+ 44.4
+ 42.13
+ 40.61
+ 40.5
external
O.8
- 42.95
- 40.75
- 38.9
+ 43.2
+ 40.93
+ 39.41
internal
O.8
- 45.2
- 42.65
- 41.3
- 41.3
+ 44.8
+ 42.53
+ 41.01
+ 40.5
@@ -5962,77 +5962,77 @@
external
O.0
- 43.75
- 40.8
- 38.2
+ 44
+ 40.75
+ 38.59
internal
O.0
- 44.4
- 41.1
- 39
+ 44
+ 40.75
+ 38.59
39
external
O.1
- 43.65
- 40.7
- 38.1
+ 43.9
+ 40.65
+ 38.49
internal
O.1
- 44.5
- 41.2
- 39.1
- 39.1
+ 44.1
+ 40.85
+ 38.69
+ 39
external
O.2
- 43.55
- 40.6
- 38
+ 43.8
+ 40.55
+ 38.39
internal
O.2
- 44.6
- 41.3
- 39.2
- 39.2
+ 44.2
+ 40.95
+ 38.79
+ 39
external
O.4
- 43.35
- 40.4
- 37.8
+ 43.6
+ 40.35
+ 38.19
internal
O.4
- 44.8
- 41.5
- 39.4
- 39.4
+ 44.4
+ 41.15
+ 38.99
+ 39
external
O.8
- 42.95
- 40
- 37.4
+ 43.2
+ 39.95
+ 37.79
internal
O.8
- 45.2
- 41.9
- 39.8
- 39.8
+ 44.8
+ 41.55
+ 39.39
+ 39
@@ -6045,77 +6045,77 @@
external
O.0
- 44.75
- 42.55
- 40.7
+ 45
+ 42.73
+ 41.21
internal
O.0
- 45.4
- 42.85
- 41.5
+ 45
+ 42.73
+ 41.21
41.5
external
O.1
- 44.65
- 42.45
- 40.6
+ 44.9
+ 42.63
+ 41.11
internal
O.1
- 45.5
- 42.95
- 41.6
- 41.6
+ 45.1
+ 42.83
+ 41.31
+ 41.5
external
O.2
- 44.55
- 42.35
- 40.5
+ 44.8
+ 42.53
+ 41.01
internal
O.2
- 45.6
- 43.05
- 41.7
- 41.7
+ 45.2
+ 42.93
+ 41.41
+ 41.5
external
O.4
- 44.35
- 42.15
- 40.3
+ 44.6
+ 42.33
+ 40.81
internal
O.4
- 45.8
- 43.25
- 41.9
- 41.9
+ 45.4
+ 43.13
+ 41.61
+ 41.5
external
O.8
- 43.95
- 41.75
- 39.9
+ 44.2
+ 41.93
+ 40.41
internal
O.8
- 46.2
- 43.65
- 42.3
- 42.3
+ 45.8
+ 43.53
+ 42.01
+ 41.5
@@ -6125,77 +6125,77 @@
external
O.0
- 44.75
- 41.8
- 39.2
+ 45
+ 41.75
+ 39.59
internal
O.0
- 45.4
- 42.1
- 40
+ 45
+ 41.75
+ 39.59
40
external
O.1
- 44.65
- 41.7
- 39.1
+ 44.9
+ 41.65
+ 39.49
internal
O.1
- 45.5
- 42.2
- 40.1
- 40.1
+ 45.1
+ 41.85
+ 39.69
+ 40
external
O.2
- 44.55
- 41.6
- 39
+ 44.8
+ 41.55
+ 39.39
internal
O.2
- 45.6
- 42.3
- 40.2
- 40.2
+ 45.2
+ 41.95
+ 39.79
+ 40
external
O.4
- 44.35
- 41.4
- 38.8
+ 44.6
+ 41.35
+ 39.19
internal
O.4
- 45.8
- 42.5
- 40.4
- 40.4
+ 45.4
+ 42.15
+ 39.99
+ 40
external
O.8
- 43.95
- 41
- 38.4
+ 44.2
+ 40.95
+ 38.79
internal
O.8
- 46.2
- 42.9
- 40.8
- 40.8
+ 45.8
+ 42.55
+ 40.39
+ 40
@@ -6208,77 +6208,77 @@
external
O.0
- 45.75
- 43.55
- 41.7
+ 46
+ 43.73
+ 42.21
internal
O.0
- 46.4
- 43.85
- 42.5
+ 46
+ 43.73
+ 42.21
42.5
external
O.1
- 45.65
- 43.45
- 41.6
+ 45.9
+ 43.63
+ 42.11
internal
O.1
- 46.5
- 43.95
- 42.6
- 42.6
+ 46.1
+ 43.83
+ 42.31
+ 42.5
external
O.2
- 45.55
- 43.35
- 41.5
+ 45.8
+ 43.53
+ 42.01
internal
O.2
- 46.6
- 44.05
- 42.7
- 42.7
+ 46.2
+ 43.93
+ 42.41
+ 42.5
external
O.4
- 45.35
- 43.15
- 41.3
+ 45.6
+ 43.33
+ 41.81
internal
O.4
- 46.8
- 44.25
- 42.9
- 42.9
+ 46.4
+ 44.13
+ 42.61
+ 42.5
external
O.8
- 44.95
- 42.75
- 40.9
+ 45.2
+ 42.93
+ 41.41
internal
O.8
- 47.2
- 44.65
- 43.3
- 43.3
+ 46.8
+ 44.53
+ 43.01
+ 42.5
@@ -6288,77 +6288,77 @@
external
O.0
- 45.75
- 42.8
- 40.2
+ 46
+ 42.75
+ 40.59
internal
O.0
- 46.4
- 43.1
- 41
+ 46
+ 42.75
+ 40.59
41
external
O.1
- 45.65
- 42.7
- 40.1
+ 45.9
+ 42.65
+ 40.49
internal
O.1
- 46.5
- 43.2
- 41.1
- 41.1
+ 46.1
+ 42.85
+ 40.69
+ 41
external
O.2
- 45.55
- 42.6
- 40
+ 45.8
+ 42.55
+ 40.39
internal
O.2
- 46.6
- 43.3
- 41.2
- 41.2
+ 46.2
+ 42.95
+ 40.79
+ 41
external
O.4
- 45.35
- 42.4
- 39.8
+ 45.6
+ 42.35
+ 40.19
internal
O.4
- 46.8
- 43.5
- 41.4
- 41.4
+ 46.4
+ 43.15
+ 40.99
+ 41
external
O.8
- 44.95
- 42
- 39.4
+ 45.2
+ 41.95
+ 39.79
internal
O.8
- 47.2
- 43.9
- 41.8
- 41.8
+ 46.8
+ 43.55
+ 41.39
+ 41
@@ -6371,77 +6371,77 @@
external
O.0
- 46.75
- 44.55
- 42.7
+ 47
+ 44.73
+ 43.21
internal
O.0
- 47.4
- 44.85
- 43.5
+ 47
+ 44.73
+ 43.21
43.5
external
O.1
- 46.65
- 44.45
- 42.6
+ 46.9
+ 44.63
+ 43.11
internal
O.1
- 47.5
- 44.95
- 43.6
- 43.6
+ 47.1
+ 44.83
+ 43.31
+ 43.5
external
O.2
- 46.55
- 44.35
- 42.5
+ 46.8
+ 44.53
+ 43.01
internal
O.2
- 47.6
- 45.05
- 43.7
- 43.7
+ 47.2
+ 44.93
+ 43.41
+ 43.5
external
O.4
- 46.35
- 44.15
- 42.3
+ 46.6
+ 44.33
+ 42.81
internal
O.4
- 47.8
- 45.25
- 43.9
- 43.9
+ 47.4
+ 45.13
+ 43.61
+ 43.5
external
O.8
- 45.95
- 43.75
- 41.9
+ 46.2
+ 43.93
+ 42.41
internal
O.8
- 48.2
- 45.65
- 44.3
- 44.3
+ 47.8
+ 45.53
+ 44.01
+ 43.5
@@ -6451,77 +6451,77 @@
external
O.0
- 46.75
- 43.8
- 41.2
+ 47
+ 43.75
+ 41.59
internal
O.0
- 47.4
- 44.1
- 42
+ 47
+ 43.75
+ 41.59
42
external
O.1
- 46.65
- 43.7
- 41.1
+ 46.9
+ 43.65
+ 41.49
internal
O.1
- 47.5
- 44.2
- 42.1
- 42.1
+ 47.1
+ 43.85
+ 41.69
+ 42
external
O.2
- 46.55
- 43.6
- 41
+ 46.8
+ 43.55
+ 41.39
internal
O.2
- 47.6
- 44.3
- 42.2
- 42.2
+ 47.2
+ 43.95
+ 41.79
+ 42
external
O.4
- 46.35
- 43.4
- 40.8
+ 46.6
+ 43.35
+ 41.19
internal
O.4
- 47.8
- 44.5
- 42.4
- 42.4
+ 47.4
+ 44.15
+ 41.99
+ 42
external
O.8
- 45.95
- 43
- 40.4
+ 46.2
+ 42.95
+ 40.79
internal
O.8
- 48.2
- 44.9
- 42.8
- 42.8
+ 47.8
+ 44.55
+ 42.39
+ 42
@@ -6534,77 +6534,77 @@
external
O.0
- 47.75
- 45.55
- 43.7
+ 48
+ 45.73
+ 44.21
internal
O.0
- 48.4
- 45.85
- 44.5
+ 48
+ 45.73
+ 44.21
44.5
external
O.1
- 47.65
- 45.45
- 43.6
+ 47.9
+ 45.63
+ 44.11
internal
O.1
- 48.5
- 45.95
- 44.6
- 44.6
+ 48.1
+ 45.83
+ 44.31
+ 44.5
external
O.2
- 47.55
- 45.35
- 43.5
+ 47.8
+ 45.53
+ 44.01
internal
O.2
- 48.6
- 46.05
- 44.7
- 44.7
+ 48.2
+ 45.93
+ 44.41
+ 44.5
external
O.4
- 47.35
- 45.15
- 43.3
+ 47.6
+ 45.33
+ 43.81
internal
O.4
- 48.8
- 46.25
- 44.9
- 44.9
+ 48.4
+ 46.13
+ 44.61
+ 44.5
external
O.8
- 46.95
- 44.75
- 42.9
+ 47.2
+ 44.93
+ 43.41
internal
O.8
- 49.2
- 46.65
- 45.3
- 45.3
+ 48.8
+ 46.53
+ 45.01
+ 44.5
@@ -6614,77 +6614,77 @@
external
O.0
- 47.75
- 44.8
- 42.2
+ 48
+ 44.75
+ 42.59
internal
O.0
- 48.4
- 45.1
- 43
+ 48
+ 44.75
+ 42.59
43
external
O.1
- 47.65
- 44.7
- 42.1
+ 47.9
+ 44.65
+ 42.49
internal
O.1
- 48.5
- 45.2
- 43.1
- 43.1
+ 48.1
+ 44.85
+ 42.69
+ 43
external
O.2
- 47.55
- 44.6
- 42
+ 47.8
+ 44.55
+ 42.39
internal
O.2
- 48.6
- 45.3
- 43.2
- 43.2
+ 48.2
+ 44.95
+ 42.79
+ 43
external
O.4
- 47.35
- 44.4
- 41.8
+ 47.6
+ 44.35
+ 42.19
internal
O.4
- 48.8
- 45.5
- 43.4
- 43.4
+ 48.4
+ 45.15
+ 42.99
+ 43
external
O.8
- 46.95
- 44
- 41.4
+ 47.2
+ 43.95
+ 41.79
internal
O.8
- 49.2
- 45.9
- 43.8
- 43.8
+ 48.8
+ 45.55
+ 43.39
+ 43
@@ -6697,77 +6697,77 @@
external
O.0
- 48.75
- 46.55
- 44.7
+ 49
+ 46.73
+ 45.21
internal
O.0
- 49.4
- 46.85
- 45.5
+ 49
+ 46.73
+ 45.21
45.5
external
O.1
- 48.65
- 46.45
- 44.6
+ 48.9
+ 46.63
+ 45.11
internal
O.1
- 49.5
- 46.95
- 45.6
- 45.6
+ 49.1
+ 46.83
+ 45.31
+ 45.5
external
O.2
- 48.55
- 46.35
- 44.5
+ 48.8
+ 46.53
+ 45.01
internal
O.2
- 49.6
- 47.05
- 45.7
- 45.7
+ 49.2
+ 46.93
+ 45.41
+ 45.5
external
O.4
- 48.35
- 46.15
- 44.3
+ 48.6
+ 46.33
+ 44.81
internal
O.4
- 49.8
- 47.25
- 45.9
- 45.9
+ 49.4
+ 47.13
+ 45.61
+ 45.5
external
O.8
- 47.95
- 45.75
- 43.9
+ 48.2
+ 45.93
+ 44.41
internal
O.8
- 50.2
- 47.65
- 46.3
- 46.3
+ 49.8
+ 47.53
+ 46.01
+ 45.5
@@ -6777,77 +6777,77 @@
external
O.0
- 48.75
- 45.8
- 43.2
+ 49
+ 45.75
+ 43.59
internal
O.0
- 49.4
- 46.1
- 44
+ 49
+ 45.75
+ 43.59
44
external
O.1
- 48.65
- 45.7
- 43.1
+ 48.9
+ 45.65
+ 43.49
internal
O.1
- 49.5
- 46.2
- 44.1
- 44.1
+ 49.1
+ 45.85
+ 43.69
+ 44
external
O.2
- 48.55
- 45.6
- 43
+ 48.8
+ 45.55
+ 43.39
internal
O.2
- 49.6
- 46.3
- 44.2
- 44.2
+ 49.2
+ 45.95
+ 43.79
+ 44
external
O.4
- 48.35
- 45.4
- 42.8
+ 48.6
+ 45.35
+ 43.19
internal
O.4
- 49.8
- 46.5
- 44.4
- 44.4
+ 49.4
+ 46.15
+ 43.99
+ 44
external
O.8
- 47.95
- 45
- 42.4
+ 48.2
+ 44.95
+ 42.79
internal
O.8
- 50.2
- 46.9
- 44.8
- 44.8
+ 49.8
+ 46.55
+ 44.39
+ 44
@@ -6860,77 +6860,77 @@
external
O.0
- 49.75
- 47.55
- 45.7
+ 50
+ 47.73
+ 46.21
internal
O.0
- 50.4
- 47.85
- 46.5
+ 50
+ 47.73
+ 46.21
46.5
external
O.1
- 49.65
- 47.45
- 45.6
+ 49.9
+ 47.63
+ 46.11
internal
O.1
- 50.5
- 47.95
- 46.6
- 46.6
+ 50.1
+ 47.83
+ 46.31
+ 46.5
external
O.2
- 49.55
- 47.35
- 45.5
+ 49.8
+ 47.53
+ 46.01
internal
O.2
- 50.6
- 48.05
- 46.7
- 46.7
+ 50.2
+ 47.93
+ 46.41
+ 46.5
external
O.4
- 49.35
- 47.15
- 45.3
+ 49.6
+ 47.33
+ 45.81
internal
O.4
- 50.8
- 48.25
- 46.9
- 46.9
+ 50.4
+ 48.13
+ 46.61
+ 46.5
external
O.8
- 48.95
- 46.75
- 44.9
+ 49.2
+ 46.93
+ 45.41
internal
O.8
- 51.2
- 48.65
- 47.3
- 47.3
+ 50.8
+ 48.53
+ 47.01
+ 46.5
@@ -6940,77 +6940,77 @@
external
O.0
- 49.75
- 46.8
- 44.2
+ 50
+ 46.75
+ 44.59
internal
O.0
- 50.4
- 47.1
- 45
+ 50
+ 46.75
+ 44.59
45
external
O.1
- 49.65
- 46.7
- 44.1
+ 49.9
+ 46.65
+ 44.49
internal
O.1
- 50.5
- 47.2
- 45.1
- 45.1
+ 50.1
+ 46.85
+ 44.69
+ 45
external
O.2
- 49.55
- 46.6
- 44
+ 49.8
+ 46.55
+ 44.39
internal
O.2
- 50.6
- 47.3
- 45.2
- 45.2
+ 50.2
+ 46.95
+ 44.79
+ 45
external
O.4
- 49.35
- 46.4
- 43.8
+ 49.6
+ 46.35
+ 44.19
internal
O.4
- 50.8
- 47.5
- 45.4
- 45.4
+ 50.4
+ 47.15
+ 44.99
+ 45
external
O.8
- 48.95
- 46
- 43.4
+ 49.2
+ 45.95
+ 43.79
internal
O.8
- 51.2
- 47.9
- 45.8
- 45.8
+ 50.8
+ 47.55
+ 45.39
+ 45
diff --git a/config-example.yaml b/config-example.yaml
new file mode 100644
index 0000000..9ac408b
--- /dev/null
+++ b/config-example.yaml
@@ -0,0 +1,24 @@
+configs:
+ - name: "3DPrintedMetric"
+ customName: "3D-printed Metric Threads"
+ unit: "mm"
+ angle: 60.0
+ sizes: "8:51"
+ #sizes: "16:32,2" for range
+ #sizes: [1,2,4] for list
+ pitches: [3.5, 5.0]
+ offsets: [0.0, 0.1, 0.2, 0.4, 0.8]
+ - name: "3DPrintedMetricV3"
+ customName: "3D-printed Metric Threads V2"
+ unit: "mm"
+ angle: 60.0
+ sizes: "8:51"
+ pitches: [3.5, 5.0]
+ offsets: [0.0, 0.1, 0.2, 0.4, 0.8]
+ - name: "3DPrintedMetricV3"
+ customName: "3D-printed Metric Threads V3"
+ unit: "mm"
+ angle: 60.0
+ sizes: "8:51"
+ pitches: [3.5, 5.0]
+ offsets: [0.0, 0.1, 0.2, 0.4, 0.8]
diff --git a/main.py b/main.py
index f85d698..c7329c6 100644
--- a/main.py
+++ b/main.py
@@ -1,13 +1,27 @@
import math
import xml.etree.ElementTree as ET
from abc import ABC, abstractmethod
+import yaml
+import logging
+import sys
+import argparse
-NAME = "3D-printed Metric Threads V3"
-UNIT = "mm"
-ANGLE = 60.0
-SIZES = list(range(8, 51))
-PITCHES = [3.5, 5.0]
-OFFSETS = [.0, .1, .2, .4, .8]
+# Configure logging
+logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
+
+# Parse command-line arguments
+parser = argparse.ArgumentParser(description='Generate XML files for custom threads.')
+parser.add_argument('config_file', nargs='?', default='./config.yaml', help='Path to the configuration YAML file')
+parser.add_argument('-v', '--verbose', action='store_true', help='Enable verbose logging')
+args = parser.parse_args()
+
+# Set logging level based on verbose flag
+if args.verbose:
+ logging.getLogger().setLevel(logging.DEBUG)
+
+# Load configurations from YAML file
+with open(args.config_file, 'r') as file:
+ configs = yaml.safe_load(file)['configs']
def designator(val: float):
@@ -28,9 +42,15 @@ def __init__(self):
class ThreadProfile(ABC):
- @abstractmethod
+
+ def __init__(self, sizes, pitches, offsets, angle):
+ self._sizes = sizes
+ self.pitches = pitches
+ self.offsets = offsets
+ self.angle = angle
+
def sizes(self):
- pass
+ return self._sizes
@abstractmethod
def designations(self, size):
@@ -41,6 +61,7 @@ def threads(self, designation):
pass
+
class Metric3Dprinted(ThreadProfile):
class Designation:
def __init__(self, diameter, pitch):
@@ -48,23 +69,20 @@ def __init__(self, diameter, pitch):
self.pitch = pitch
self.name = "M{}x{}".format(designator(self.nominalDiameter), designator(self.pitch))
- def __init__(self):
- self.offsets = OFFSETS
-
- def sizes(self):
- return SIZES
+ def __init__(self, *args, **kwargs):
+ super().__init__(*args, **kwargs)
def designations(self, size):
- return [Metric3Dprinted.Designation(size, pitch) for pitch in PITCHES]
+ return [self.Designation(size, pitch) for pitch in self.pitches]
+
def threads(self, designation):
- ts = []
+ threads = []
for offset in self.offsets:
offset_decimals = str(offset)[2:] # skips the '0.' at the start
-
# see https://en.wikipedia.org/wiki/ISO_metric_screw_thread
P = designation.pitch
- H = 1/math.tan(math.radians(ANGLE/2)) * (P/2)
+ H = 1/math.tan(math.radians(self.angle/2)) * (P/2)
D = designation.nominalDiameter
Dp = D - 2 * 3*H/8
Dmin = D - 2 * 5*H/8
@@ -75,7 +93,7 @@ def threads(self, designation):
t.majorDia = D - offset
t.pitchDia = Dp - offset
t.minorDia = Dmin - offset
- ts.append(t)
+ threads.append(t)
t = Thread()
t.gender = "internal"
@@ -84,42 +102,65 @@ def threads(self, designation):
t.pitchDia = Dp + offset
t.minorDia = Dmin + offset
t.tapDrill = D - P
- ts.append(t)
- return ts
-
-
-def generate():
- profile = Metric3Dprinted()
-
- root = ET.Element('ThreadType')
- tree = ET.ElementTree(root)
-
- ET.SubElement(root, "Name").text = NAME
- ET.SubElement(root, "CustomName").text = NAME
- ET.SubElement(root, "Unit").text = UNIT
- ET.SubElement(root, "Angle").text = str(ANGLE)
- ET.SubElement(root, "SortOrder").text = "3"
-
- for size in profile.sizes():
- thread_size_element = ET.SubElement(root, "ThreadSize")
- ET.SubElement(thread_size_element, "Size").text = str(size)
- for designation in profile.designations(size):
- designation_element = ET.SubElement(thread_size_element, "Designation")
- ET.SubElement(designation_element, "ThreadDesignation").text = designation.name
- ET.SubElement(designation_element, "CTD").text = designation.name
- ET.SubElement(designation_element, "Pitch").text = str(designation.pitch)
- for thread in profile.threads(designation):
- thread_element = ET.SubElement(designation_element, "Thread")
- ET.SubElement(thread_element, "Gender").text = thread.gender
- ET.SubElement(thread_element, "Class").text = thread.clazz
- ET.SubElement(thread_element, "MajorDia").text = "{:.4g}".format(thread.majorDia)
- ET.SubElement(thread_element, "PitchDia").text = "{:.4g}".format(thread.pitchDia)
- ET.SubElement(thread_element, "MinorDia").text = "{:.4g}".format(thread.minorDia)
- if thread.tapDrill:
- ET.SubElement(thread_element, "TapDrill").text = "{:.4g}".format(thread.tapDrill)
-
- ET.indent(tree)
- tree.write('3DPrintedMetricV3.xml', encoding='UTF-8', xml_declaration=True)
-
-
-generate()
+ threads.append(t)
+ return threads
+
+def parse_sizes(sizes):
+ if isinstance(sizes, str):
+ if ':' in sizes:
+ parts = sizes.split(',')
+ start, end = map(int, parts[0].split(':'))
+ step = int(parts[1]) if len(parts) > 1 else 1
+ return list(range(start, end, step))
+ elif isinstance(sizes, list):
+ return sizes
+ else:
+ raise ValueError("Invalid sizes format, should be a list or a range separated by ':'")
+
+def generate_xml_files(configs):
+ for config in configs:
+ name = config['name']
+ custom_name = config.get('customName', name)
+ unit = config['unit']
+ sizes = parse_sizes(config['sizes'])
+ angle = config['angle']
+ pitches = config['pitches']
+ offsets = config['offsets']
+ logging.info(f"Generating XML for {custom_name}")
+ profile = Metric3Dprinted(sizes, pitches, offsets, angle)
+
+ root = ET.Element('ThreadType')
+
+ tree = ET.ElementTree(root)
+ ET.SubElement(root, "Name").text = custom_name
+ ET.SubElement(root, "CustomName").text = custom_name
+ ET.SubElement(root, "Unit").text = unit
+
+ ET.SubElement(root, "Angle").text = str(angle)
+ ET.SubElement(root, "SortOrder").text = "3"
+ for size in profile.sizes():
+ logging.info(f"Processing size: {size}")
+ thread_size_element = ET.SubElement(root, "ThreadSize")
+ ET.SubElement(thread_size_element, "Size").text = str(size)
+ for designation in profile.designations(size):
+ designation_element = ET.SubElement(thread_size_element, "Designation")
+ ET.SubElement(designation_element, "ThreadDesignation").text = designation.name
+ ET.SubElement(designation_element, "CTD").text = designation.name
+ ET.SubElement(designation_element, "Pitch").text = str(designation.pitch)
+ for thread in profile.threads(designation):
+ logging.debug(f"Processing thread: Gender={thread.gender}, Class={thread.clazz}, MajorDia={thread.majorDia}, PitchDia={thread.pitchDia}, MinorDia={thread.minorDia}, TapDrill={thread.tapDrill}")
+ thread_element = ET.SubElement(designation_element, "Thread")
+ ET.SubElement(thread_element, "Gender").text = thread.gender
+ ET.SubElement(thread_element, "Class").text = thread.clazz
+ ET.SubElement(thread_element, "MajorDia").text = "{:.4g}".format(thread.majorDia)
+ ET.SubElement(thread_element, "PitchDia").text = "{:.4g}".format(thread.pitchDia)
+ ET.SubElement(thread_element, "MinorDia").text = "{:.4g}".format(thread.minorDia)
+ if thread.tapDrill:
+ ET.SubElement(thread_element, "TapDrill").text = "{:.4g}".format(thread.tapDrill)
+
+ ET.indent(tree)
+ tree.write(f"{name}.xml", encoding='UTF-8', xml_declaration=True)
+ logging.info(f"XML file {name}.xml generated successfully")
+
+# Example usage
+generate_xml_files(configs)
diff --git a/poetry.lock b/poetry.lock
new file mode 100644
index 0000000..648c1c7
--- /dev/null
+++ b/poetry.lock
@@ -0,0 +1,68 @@
+# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand.
+
+[[package]]
+name = "pyyaml"
+version = "6.0.2"
+description = "YAML parser and emitter for Python"
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "PyYAML-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086"},
+ {file = "PyYAML-6.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf"},
+ {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8824b5a04a04a047e72eea5cec3bc266db09e35de6bdfe34c9436ac5ee27d237"},
+ {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7c36280e6fb8385e520936c3cb3b8042851904eba0e58d277dca80a5cfed590b"},
+ {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ec031d5d2feb36d1d1a24380e4db6d43695f3748343d99434e6f5f9156aaa2ed"},
+ {file = "PyYAML-6.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:936d68689298c36b53b29f23c6dbb74de12b4ac12ca6cfe0e047bedceea56180"},
+ {file = "PyYAML-6.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:23502f431948090f597378482b4812b0caae32c22213aecf3b55325e049a6c68"},
+ {file = "PyYAML-6.0.2-cp310-cp310-win32.whl", hash = "sha256:2e99c6826ffa974fe6e27cdb5ed0021786b03fc98e5ee3c5bfe1fd5015f42b99"},
+ {file = "PyYAML-6.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:a4d3091415f010369ae4ed1fc6b79def9416358877534caf6a0fdd2146c87a3e"},
+ {file = "PyYAML-6.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774"},
+ {file = "PyYAML-6.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee"},
+ {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c"},
+ {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5ac9328ec4831237bec75defaf839f7d4564be1e6b25ac710bd1a96321cc8317"},
+ {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85"},
+ {file = "PyYAML-6.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ff3824dc5261f50c9b0dfb3be22b4567a6f938ccce4587b38952d85fd9e9afe4"},
+ {file = "PyYAML-6.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:797b4f722ffa07cc8d62053e4cff1486fa6dc094105d13fea7b1de7d8bf71c9e"},
+ {file = "PyYAML-6.0.2-cp311-cp311-win32.whl", hash = "sha256:11d8f3dd2b9c1207dcaf2ee0bbbfd5991f571186ec9cc78427ba5bd32afae4b5"},
+ {file = "PyYAML-6.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44"},
+ {file = "PyYAML-6.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab"},
+ {file = "PyYAML-6.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725"},
+ {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5"},
+ {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425"},
+ {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476"},
+ {file = "PyYAML-6.0.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48"},
+ {file = "PyYAML-6.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b"},
+ {file = "PyYAML-6.0.2-cp312-cp312-win32.whl", hash = "sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4"},
+ {file = "PyYAML-6.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8"},
+ {file = "PyYAML-6.0.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba"},
+ {file = "PyYAML-6.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1"},
+ {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133"},
+ {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484"},
+ {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5"},
+ {file = "PyYAML-6.0.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc"},
+ {file = "PyYAML-6.0.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652"},
+ {file = "PyYAML-6.0.2-cp313-cp313-win32.whl", hash = "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183"},
+ {file = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563"},
+ {file = "PyYAML-6.0.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:24471b829b3bf607e04e88d79542a9d48bb037c2267d7927a874e6c205ca7e9a"},
+ {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7fded462629cfa4b685c5416b949ebad6cec74af5e2d42905d41e257e0869f5"},
+ {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d84a1718ee396f54f3a086ea0a66d8e552b2ab2017ef8b420e92edbc841c352d"},
+ {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9056c1ecd25795207ad294bcf39f2db3d845767be0ea6e6a34d856f006006083"},
+ {file = "PyYAML-6.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:82d09873e40955485746739bcb8b4586983670466c23382c19cffecbf1fd8706"},
+ {file = "PyYAML-6.0.2-cp38-cp38-win32.whl", hash = "sha256:43fa96a3ca0d6b1812e01ced1044a003533c47f6ee8aca31724f78e93ccc089a"},
+ {file = "PyYAML-6.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:01179a4a8559ab5de078078f37e5c1a30d76bb88519906844fd7bdea1b7729ff"},
+ {file = "PyYAML-6.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:688ba32a1cffef67fd2e9398a2efebaea461578b0923624778664cc1c914db5d"},
+ {file = "PyYAML-6.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a8786accb172bd8afb8be14490a16625cbc387036876ab6ba70912730faf8e1f"},
+ {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8e03406cac8513435335dbab54c0d385e4a49e4945d2909a581c83647ca0290"},
+ {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f753120cb8181e736c57ef7636e83f31b9c0d1722c516f7e86cf15b7aa57ff12"},
+ {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3b1fdb9dc17f5a7677423d508ab4f243a726dea51fa5e70992e59a7411c89d19"},
+ {file = "PyYAML-6.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0b69e4ce7a131fe56b7e4d770c67429700908fc0752af059838b1cfb41960e4e"},
+ {file = "PyYAML-6.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a9f8c2e67970f13b16084e04f134610fd1d374bf477b17ec1599185cf611d725"},
+ {file = "PyYAML-6.0.2-cp39-cp39-win32.whl", hash = "sha256:6395c297d42274772abc367baaa79683958044e5d3835486c16da75d2a694631"},
+ {file = "PyYAML-6.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:39693e1f8320ae4f43943590b49779ffb98acb81f788220ea932a6b6c51004d8"},
+ {file = "pyyaml-6.0.2.tar.gz", hash = "sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e"},
+]
+
+[metadata]
+lock-version = "2.0"
+python-versions = ">=3.10"
+content-hash = "99b0a8c4add5dc53f385c6d3656628b84c91554e318b940f8aa05dd2540273cf"
diff --git a/pyproject.toml b/pyproject.toml
new file mode 100644
index 0000000..6b0acd2
--- /dev/null
+++ b/pyproject.toml
@@ -0,0 +1,13 @@
+[tool.poetry]
+name = "custom-threads"
+version = "0.1.0"
+description = "generate XML files of custom threads for Fusion360"
+authors = ["BalzGuenat"]
+
+[tool.poetry.dependencies]
+python = ">=3.10"
+pyyaml = "^6.0"
+
+[build-system]
+requires = ["poetry-core>=1.0.0"]
+build-backend = "poetry.core.masonry.api"