From c44e4a3e168335b01bcf4f9ec64a0984f84e53d2 Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Wed, 2 Apr 2025 17:27:31 +0200 Subject: [PATCH 01/17] Temporary workaround for fitting parameters of iterable components --- examples/data/hrpt.xye | 3099 +++++++++++++++++ .../analysis/minimizers/minimizer_lmfit.py | 12 +- src/easydiffraction/core/collection.py | 3 +- src/easydiffraction/core/component.py | 9 + src/easydiffraction/core/parameter.py | 25 +- .../iterable_components/background.py | 12 + .../iterable_components/atom_sites.py | 5 + .../{test_fitting.py => test_joint-fit.py} | 0 .../fitting/test_single-fit.py | 103 + 9 files changed, 3261 insertions(+), 7 deletions(-) create mode 100644 examples/data/hrpt.xye rename tests/functional_test/fitting/{test_fitting.py => test_joint-fit.py} (100%) create mode 100644 tests/functional_test/fitting/test_single-fit.py diff --git a/examples/data/hrpt.xye b/examples/data/hrpt.xye new file mode 100644 index 00000000..0b9b63e3 --- /dev/null +++ b/examples/data/hrpt.xye @@ -0,0 +1,3099 @@ +# 2theta intensity su + 10.00 167.00 12.60 + 10.05 157.00 12.50 + 10.10 187.00 13.30 + 10.15 197.00 14.00 + 10.20 164.00 12.50 + 10.25 171.00 13.00 + 10.30 190.00 13.40 + 10.35 182.00 13.50 + 10.40 166.00 12.60 + 10.45 203.00 14.30 + 10.50 156.00 12.20 + 10.55 190.00 13.90 + 10.60 175.00 13.00 + 10.65 161.00 12.90 + 10.70 187.00 13.50 + 10.75 166.00 13.10 + 10.80 171.00 13.00 + 10.85 177.00 13.60 + 10.90 159.00 12.60 + 10.95 184.00 13.90 + 11.00 160.00 12.60 + 11.05 182.00 13.90 + 11.10 167.00 13.00 + 11.15 169.00 13.40 + 11.20 186.00 13.70 + 11.25 167.00 13.30 + 11.30 169.00 13.10 + 11.35 159.00 13.10 + 11.40 170.00 13.20 + 11.45 179.00 13.90 + 11.50 178.00 13.50 + 11.55 188.00 14.20 + 11.60 176.00 13.50 + 11.65 196.00 14.60 + 11.70 182.00 13.70 + 11.75 183.00 14.00 + 11.80 195.00 14.10 + 11.85 144.00 12.40 + 11.90 178.00 13.50 + 11.95 175.00 13.70 + 12.00 200.00 14.20 + 12.05 157.00 12.90 + 12.10 195.00 14.00 + 12.15 164.00 13.10 + 12.20 188.00 13.70 + 12.25 168.00 13.10 + 12.30 191.00 13.70 + 12.35 178.00 13.40 + 12.40 182.00 13.30 + 12.45 174.00 13.30 + 12.50 171.00 12.90 + 12.55 174.00 13.20 + 12.60 184.00 13.30 + 12.65 164.00 12.80 + 12.70 166.00 12.50 + 12.75 177.00 13.20 + 12.80 174.00 12.80 + 12.85 187.00 13.50 + 12.90 183.00 13.10 + 12.95 187.00 13.50 + 13.00 175.00 12.80 + 13.05 165.00 12.70 + 13.10 177.00 12.80 + 13.15 182.00 13.30 + 13.20 195.00 13.50 + 13.25 163.00 12.60 + 13.30 180.00 12.90 + 13.35 171.00 12.90 + 13.40 182.00 13.00 + 13.45 179.00 13.10 + 13.50 161.00 12.20 + 13.55 156.00 12.30 + 13.60 197.00 13.50 + 13.65 167.00 12.70 + 13.70 180.00 12.80 + 13.75 182.00 13.20 + 13.80 176.00 12.70 + 13.85 153.00 12.10 + 13.90 179.00 12.80 + 13.95 156.00 12.30 + 14.00 187.00 13.10 + 14.05 170.00 12.80 + 14.10 185.00 13.00 + 14.15 180.00 13.20 + 14.20 167.00 12.40 + 14.25 159.00 12.40 + 14.30 152.00 11.80 + 14.35 173.00 13.00 + 14.40 169.00 12.50 + 14.45 185.00 13.40 + 14.50 168.00 12.40 + 14.55 193.00 13.70 + 14.60 177.00 12.80 + 14.65 161.00 12.50 + 14.70 180.00 12.90 + 14.75 165.00 12.60 + 14.80 178.00 12.80 + 14.85 157.00 12.30 + 14.90 163.00 12.30 + 14.95 143.00 11.70 + 15.00 155.00 11.90 + 15.05 168.00 12.80 + 15.10 160.00 12.10 + 15.15 155.00 12.20 + 15.20 203.00 13.70 + 15.25 164.00 12.60 + 15.30 158.00 12.10 + 15.35 152.00 12.10 + 15.40 173.00 12.60 + 15.45 160.00 12.50 + 15.50 172.00 12.60 + 15.55 164.00 12.60 + 15.60 163.00 12.30 + 15.65 173.00 13.00 + 15.70 177.00 12.80 + 15.75 184.00 13.40 + 15.80 173.00 12.70 + 15.85 182.00 13.30 + 15.90 156.00 12.10 + 15.95 152.00 12.20 + 16.00 201.00 13.70 + 16.05 156.00 12.30 + 16.10 169.00 12.50 + 16.15 178.00 13.20 + 16.20 150.00 11.80 + 16.25 163.00 12.60 + 16.30 165.00 12.40 + 16.35 160.00 12.50 + 16.40 171.00 12.60 + 16.45 168.00 12.80 + 16.50 159.00 12.20 + 16.55 166.00 12.80 + 16.60 156.00 12.10 + 16.65 156.00 12.40 + 16.70 154.00 12.10 + 16.75 173.00 13.10 + 16.80 173.00 12.80 + 16.85 161.00 12.70 + 16.90 177.00 13.00 + 16.95 159.00 12.70 + 17.00 162.00 12.50 + 17.05 166.00 13.00 + 17.10 167.00 12.70 + 17.15 166.00 13.10 + 17.20 168.00 12.80 + 17.25 188.00 14.00 + 17.30 165.00 12.80 + 17.35 171.00 13.40 + 17.40 171.00 13.10 + 17.45 162.00 13.10 + 17.50 161.00 12.80 + 17.55 177.00 13.80 + 17.60 176.00 13.40 + 17.65 175.00 13.70 + 17.70 140.00 12.00 + 17.75 177.00 13.90 + 17.80 150.00 12.40 + 17.85 154.00 12.90 + 17.90 138.00 11.90 + 17.95 161.00 13.20 + 18.00 171.00 13.30 + 18.05 144.00 12.50 + 18.10 148.00 12.40 + 18.15 169.00 13.50 + 18.20 162.00 12.90 + 18.25 171.00 13.50 + 18.30 155.00 12.60 + 18.35 143.00 12.30 + 18.40 162.00 12.80 + 18.45 177.00 13.60 + 18.50 158.00 12.60 + 18.55 142.00 12.20 + 18.60 153.00 12.40 + 18.65 169.00 13.30 + 18.70 144.00 12.00 + 18.75 171.00 13.30 + 18.80 159.00 12.50 + 18.85 169.00 13.10 + 18.90 163.00 12.60 + 18.95 154.00 12.50 + 19.00 146.00 11.90 + 19.05 154.00 12.50 + 19.10 156.00 12.20 + 19.15 195.00 14.00 + 19.20 154.00 12.10 + 19.25 167.00 12.90 + 19.30 156.00 12.20 + 19.35 148.00 12.10 + 19.40 173.00 12.80 + 19.45 155.00 12.40 + 19.50 146.00 11.70 + 19.55 173.00 13.10 + 19.60 179.00 13.00 + 19.65 152.00 12.30 + 19.70 182.00 13.10 + 19.75 183.00 13.40 + 19.80 150.00 11.90 + 19.85 155.00 12.30 + 19.90 158.00 12.20 + 19.95 161.00 12.60 + 20.00 164.00 12.40 + 20.05 166.00 12.80 + 20.10 172.00 12.70 + 20.15 148.00 12.10 + 20.20 161.00 12.30 + 20.25 160.00 12.60 + 20.30 185.00 13.20 + 20.35 165.00 12.80 + 20.40 155.00 12.10 + 20.45 172.00 13.00 + 20.50 170.00 12.70 + 20.55 180.00 13.40 + 20.60 184.00 13.20 + 20.65 164.00 12.80 + 20.70 177.00 13.00 + 20.75 150.00 12.20 + 20.80 176.00 12.90 + 20.85 174.00 13.20 + 20.90 173.00 12.80 + 20.95 167.00 12.90 + 21.00 158.00 12.20 + 21.05 174.00 13.20 + 21.10 160.00 12.30 + 21.15 174.00 13.20 + 21.20 160.00 12.30 + 21.25 182.00 13.40 + 21.30 155.00 12.10 + 21.35 182.00 13.40 + 21.40 157.00 12.20 + 21.45 174.00 13.20 + 21.50 173.00 12.80 + 21.55 165.00 12.80 + 21.60 182.00 13.10 + 21.65 176.00 13.20 + 21.70 150.00 11.90 + 21.75 162.00 12.60 + 21.80 172.00 12.70 + 21.85 162.00 12.70 + 21.90 171.00 12.70 + 21.95 165.00 12.80 + 22.00 180.00 13.00 + 22.05 167.00 12.80 + 22.10 159.00 12.20 + 22.15 159.00 12.50 + 22.20 160.00 12.30 + 22.25 174.00 13.10 + 22.30 175.00 12.90 + 22.35 172.00 13.10 + 22.40 176.00 12.90 + 22.45 140.00 11.80 + 22.50 163.00 12.40 + 22.55 180.00 13.50 + 22.60 211.00 14.20 + 22.65 190.00 13.90 + 22.70 179.00 13.10 + 22.75 195.00 14.10 + 22.80 198.00 13.90 + 22.85 181.00 13.70 + 22.90 203.00 14.10 + 22.95 193.00 14.10 + 23.00 155.00 12.40 + 23.05 159.00 12.90 + 23.10 184.00 13.50 + 23.15 145.00 12.30 + 23.20 145.00 12.00 + 23.25 179.00 13.70 + 23.30 185.00 13.60 + 23.35 168.00 13.30 + 23.40 185.00 13.60 + 23.45 170.00 13.40 + 23.50 174.00 13.30 + 23.55 164.00 13.20 + 23.60 168.00 13.10 + 23.65 185.00 14.10 + 23.70 183.00 13.70 + 23.75 172.00 13.70 + 23.80 156.00 12.70 + 23.85 182.00 14.00 + 23.90 182.00 13.70 + 23.95 149.00 12.70 + 24.00 160.00 12.80 + 24.05 168.00 13.50 + 24.10 178.00 13.60 + 24.15 169.00 13.60 + 24.20 172.00 13.40 + 24.25 170.00 13.60 + 24.30 161.00 12.90 + 24.35 168.00 13.50 + 24.40 162.00 13.00 + 24.45 157.00 13.00 + 24.50 162.00 12.90 + 24.55 159.00 13.10 + 24.60 168.00 13.20 + 24.65 170.00 13.50 + 24.70 166.00 13.00 + 24.75 146.00 12.50 + 24.80 154.00 12.50 + 24.85 154.00 12.70 + 24.90 198.00 14.10 + 24.95 195.00 14.30 + 25.00 148.00 12.20 + 25.05 161.00 12.90 + 25.10 160.00 12.60 + 25.15 160.00 12.80 + 25.20 149.00 12.10 + 25.25 179.00 13.50 + 25.30 174.00 13.00 + 25.35 168.00 13.00 + 25.40 146.00 11.90 + 25.45 160.00 12.70 + 25.50 145.00 11.80 + 25.55 151.00 12.30 + 25.60 161.00 12.40 + 25.65 187.00 13.60 + 25.70 154.00 12.10 + 25.75 157.00 12.40 + 25.80 169.00 12.60 + 25.85 181.00 13.40 + 25.90 156.00 12.10 + 25.95 185.00 13.40 + 26.00 192.00 13.40 + 26.05 153.00 12.20 + 26.10 149.00 11.80 + 26.15 154.00 12.20 + 26.20 152.00 11.90 + 26.25 179.00 13.20 + 26.30 180.00 12.90 + 26.35 160.00 12.50 + 26.40 174.00 12.60 + 26.45 145.00 11.80 + 26.50 171.00 12.50 + 26.55 162.00 12.50 + 26.60 154.00 11.80 + 26.65 153.00 12.10 + 26.70 162.00 12.10 + 26.75 160.00 12.40 + 26.80 150.00 11.70 + 26.85 189.00 13.40 + 26.90 168.00 12.40 + 26.95 144.00 11.70 + 27.00 147.00 11.60 + 27.05 155.00 12.20 + 27.10 174.00 12.60 + 27.15 169.00 12.70 + 27.20 174.00 12.60 + 27.25 164.00 12.60 + 27.30 146.00 11.60 + 27.35 149.00 12.00 + 27.40 155.00 11.90 + 27.45 155.00 12.20 + 27.50 168.00 12.40 + 27.55 131.00 11.20 + 27.60 159.00 12.10 + 27.65 181.00 13.20 + 27.70 146.00 11.60 + 27.75 188.00 13.50 + 27.80 162.00 12.20 + 27.85 161.00 12.50 + 27.90 176.00 12.70 + 27.95 152.00 12.10 + 28.00 170.00 12.40 + 28.05 152.00 12.00 + 28.10 158.00 12.00 + 28.15 168.00 12.60 + 28.20 161.00 12.10 + 28.25 184.00 13.30 + 28.30 166.00 12.30 + 28.35 193.00 13.60 + 28.40 157.00 12.00 + 28.45 167.00 12.60 + 28.50 158.00 12.00 + 28.55 135.00 11.40 + 28.60 150.00 11.70 + 28.65 167.00 12.70 + 28.70 161.00 12.20 + 28.75 157.00 12.30 + 28.80 153.00 11.80 + 28.85 161.00 12.50 + 28.90 163.00 12.20 + 28.95 133.00 11.40 + 29.00 169.00 12.50 + 29.05 162.00 12.50 + 29.10 161.00 12.20 + 29.15 163.00 12.60 + 29.20 144.00 11.60 + 29.25 178.00 13.20 + 29.30 161.00 12.20 + 29.35 141.00 11.80 + 29.40 169.00 12.50 + 29.45 160.00 12.50 + 29.50 177.00 12.90 + 29.55 174.00 13.10 + 29.60 157.00 12.10 + 29.65 176.00 13.20 + 29.70 179.00 13.00 + 29.75 166.00 12.90 + 29.80 162.00 12.40 + 29.85 147.00 12.20 + 29.90 152.00 12.00 + 29.95 171.00 13.20 + 30.00 178.00 13.10 + 30.05 208.00 14.60 + 30.10 178.00 13.20 + 30.15 149.00 12.40 + 30.20 181.00 13.30 + 30.25 162.00 13.00 + 30.30 177.00 13.20 + 30.35 165.00 13.10 + 30.40 177.00 13.30 + 30.45 158.00 12.90 + 30.50 157.00 12.60 + 30.55 163.00 13.10 + 30.60 144.00 12.00 + 30.65 156.00 12.80 + 30.70 176.00 13.30 + 30.75 179.00 13.70 + 30.80 174.00 13.20 + 30.85 182.00 13.80 + 30.90 161.00 12.70 + 30.95 166.00 13.10 + 31.00 168.00 13.00 + 31.05 153.00 12.60 + 31.10 156.00 12.40 + 31.15 174.00 13.40 + 31.20 167.00 12.80 + 31.25 192.00 14.00 + 31.30 154.00 12.30 + 31.35 166.00 13.00 + 31.40 169.00 12.90 + 31.45 185.00 13.70 + 31.50 165.00 12.60 + 31.55 163.00 12.80 + 31.60 173.00 12.90 + 31.65 169.00 13.00 + 31.70 188.00 13.40 + 31.75 195.00 13.90 + 31.80 195.00 13.60 + 31.85 221.00 14.70 + 31.90 229.00 14.70 + 31.95 302.00 17.20 + 32.00 327.00 17.50 + 32.05 380.00 19.30 + 32.10 358.00 18.30 + 32.15 394.00 19.60 + 32.20 373.00 18.70 + 32.25 362.00 18.70 + 32.30 306.00 16.90 + 32.35 276.00 16.40 + 32.40 237.00 14.80 + 32.45 203.00 14.00 + 32.50 178.00 12.80 + 32.55 199.00 13.90 + 32.60 167.00 12.40 + 32.65 185.00 13.40 + 32.70 180.00 12.90 + 32.75 178.00 13.10 + 32.80 145.00 11.50 + 32.85 176.00 13.00 + 32.90 177.00 12.70 + 32.95 182.00 13.20 + 33.00 167.00 12.40 + 33.05 152.00 12.10 + 33.10 144.00 11.50 + 33.15 170.00 12.80 + 33.20 156.00 11.90 + 33.25 154.00 12.20 + 33.30 180.00 12.80 + 33.35 176.00 13.00 + 33.40 183.00 12.90 + 33.45 162.00 12.40 + 33.50 180.00 12.80 + 33.55 165.00 12.60 + 33.60 174.00 12.50 + 33.65 179.00 13.00 + 33.70 152.00 11.70 + 33.75 182.00 13.10 + 33.80 184.00 12.90 + 33.85 166.00 12.50 + 33.90 182.00 12.80 + 33.95 162.00 12.40 + 34.00 174.00 12.50 + 34.05 153.00 12.00 + 34.10 182.00 12.80 + 34.15 180.00 13.00 + 34.20 167.00 12.20 + 34.25 173.00 12.70 + 34.30 153.00 11.70 + 34.35 160.00 12.30 + 34.40 180.00 12.70 + 34.45 168.00 12.50 + 34.50 167.00 12.20 + 34.55 176.00 12.80 + 34.60 165.00 12.10 + 34.65 174.00 12.80 + 34.70 161.00 12.00 + 34.75 178.00 12.90 + 34.80 170.00 12.30 + 34.85 166.00 12.50 + 34.90 173.00 12.40 + 34.95 158.00 12.20 + 35.00 166.00 12.20 + 35.05 170.00 12.60 + 35.10 162.00 12.00 + 35.15 183.00 13.10 + 35.20 176.00 12.50 + 35.25 171.00 12.60 + 35.30 174.00 12.50 + 35.35 179.00 12.90 + 35.40 176.00 12.50 + 35.45 193.00 13.40 + 35.50 180.00 12.70 + 35.55 188.00 13.30 + 35.60 177.00 12.60 + 35.65 176.00 12.90 + 35.70 171.00 12.40 + 35.75 185.00 13.30 + 35.80 178.00 12.70 + 35.85 152.00 12.10 + 35.90 160.00 12.10 + 35.95 187.00 13.50 + 36.00 167.00 12.40 + 36.05 181.00 13.30 + 36.10 166.00 12.40 + 36.15 165.00 12.80 + 36.20 170.00 12.70 + 36.25 197.00 14.10 + 36.30 179.00 13.10 + 36.35 172.00 13.20 + 36.40 181.00 13.30 + 36.45 174.00 13.40 + 36.50 162.00 12.60 + 36.55 166.00 13.10 + 36.60 158.00 12.50 + 36.65 199.00 14.40 + 36.70 188.00 13.70 + 36.75 177.00 13.70 + 36.80 167.00 12.90 + 36.85 156.00 12.90 + 36.90 174.00 13.20 + 36.95 176.00 13.70 + 37.00 152.00 12.40 + 37.05 191.00 14.40 + 37.10 151.00 12.50 + 37.15 202.00 14.80 + 37.20 191.00 14.00 + 37.25 161.00 13.20 + 37.30 199.00 14.30 + 37.35 175.00 13.70 + 37.40 146.00 12.30 + 37.45 181.00 14.00 + 37.50 221.00 15.00 + 37.55 194.00 14.40 + 37.60 158.00 12.70 + 37.65 171.00 13.50 + 37.70 172.00 13.20 + 37.75 168.00 13.30 + 37.80 192.00 13.90 + 37.85 185.00 13.90 + 37.90 193.00 13.90 + 37.95 178.00 13.60 + 38.00 195.00 13.90 + 38.05 175.00 13.40 + 38.10 178.00 13.20 + 38.15 173.00 13.30 + 38.20 195.00 13.70 + 38.25 194.00 13.90 + 38.30 191.00 13.50 + 38.35 178.00 13.30 + 38.40 184.00 13.30 + 38.45 186.00 13.50 + 38.50 202.00 13.80 + 38.55 200.00 14.00 + 38.60 210.00 14.00 + 38.65 198.00 13.90 + 38.70 225.00 14.50 + 38.75 209.00 14.30 + 38.80 229.00 14.60 + 38.85 197.00 13.90 + 38.90 220.00 14.30 + 38.95 215.00 14.40 + 39.00 242.00 15.00 + 39.05 340.00 18.10 + 39.10 441.00 20.20 + 39.15 654.00 25.10 + 39.20 962.00 29.70 + 39.25 1477.00 37.70 + 39.30 2012.00 43.00 + 39.35 2634.00 50.20 + 39.40 3115.00 53.40 + 39.45 3467.00 57.50 + 39.50 3532.00 56.70 + 39.55 3337.00 56.30 + 39.60 2595.00 48.60 + 39.65 1943.00 42.90 + 39.70 1251.00 33.70 + 39.75 828.00 28.00 + 39.80 525.00 21.80 + 39.85 377.00 18.80 + 39.90 294.00 16.30 + 39.95 233.00 14.80 + 40.00 233.00 14.50 + 40.05 253.00 15.40 + 40.10 253.00 15.10 + 40.15 213.00 14.10 + 40.20 196.00 13.20 + 40.25 222.00 14.40 + 40.30 172.00 12.40 + 40.35 218.00 14.30 + 40.40 206.00 13.60 + 40.45 195.00 13.60 + 40.50 209.00 13.70 + 40.55 192.00 13.50 + 40.60 197.00 13.30 + 40.65 188.00 13.30 + 40.70 202.00 13.50 + 40.75 208.00 14.00 + 40.80 184.00 12.90 + 40.85 177.00 13.00 + 40.90 202.00 13.50 + 40.95 198.00 13.80 + 41.00 203.00 13.60 + 41.05 193.00 13.60 + 41.10 188.00 13.10 + 41.15 211.00 14.20 + 41.20 189.00 13.10 + 41.25 200.00 13.90 + 41.30 198.00 13.50 + 41.35 203.00 14.00 + 41.40 197.00 13.40 + 41.45 190.00 13.60 + 41.50 212.00 14.00 + 41.55 185.00 13.40 + 41.60 228.00 14.50 + 41.65 167.00 12.80 + 41.70 207.00 13.90 + 41.75 187.00 13.60 + 41.80 190.00 13.30 + 41.85 192.00 13.80 + 41.90 185.00 13.20 + 41.95 161.00 12.70 + 42.00 187.00 13.30 + 42.05 191.00 13.80 + 42.10 159.00 12.30 + 42.15 170.00 13.10 + 42.20 182.00 13.20 + 42.25 186.00 13.70 + 42.30 192.00 13.60 + 42.35 178.00 13.50 + 42.40 186.00 13.40 + 42.45 180.00 13.50 + 42.50 178.00 13.10 + 42.55 182.00 13.60 + 42.60 179.00 13.20 + 42.65 203.00 14.50 + 42.70 191.00 13.70 + 42.75 207.00 14.60 + 42.80 183.00 13.40 + 42.85 180.00 13.60 + 42.90 191.00 13.70 + 42.95 187.00 13.90 + 43.00 184.00 13.50 + 43.05 182.00 13.80 + 43.10 178.00 13.30 + 43.15 169.00 13.30 + 43.20 158.00 12.60 + 43.25 180.00 13.70 + 43.30 174.00 13.20 + 43.35 184.00 14.00 + 43.40 178.00 13.40 + 43.45 180.00 13.80 + 43.50 144.00 12.00 + 43.55 169.00 13.40 + 43.60 177.00 13.30 + 43.65 156.00 12.80 + 43.70 148.00 12.20 + 43.75 159.00 12.90 + 43.80 195.00 14.00 + 43.85 186.00 14.00 + 43.90 180.00 13.40 + 43.95 192.00 14.10 + 44.00 186.00 13.50 + 44.05 180.00 13.60 + 44.10 174.00 13.10 + 44.15 181.00 13.60 + 44.20 178.00 13.20 + 44.25 189.00 13.80 + 44.30 206.00 14.10 + 44.35 183.00 13.60 + 44.40 161.00 12.40 + 44.45 170.00 13.00 + 44.50 203.00 13.90 + 44.55 168.00 12.90 + 44.60 199.00 13.70 + 44.65 192.00 13.70 + 44.70 192.00 13.40 + 44.75 200.00 14.00 + 44.80 206.00 13.90 + 44.85 193.00 13.70 + 44.90 188.00 13.20 + 44.95 200.00 13.90 + 45.00 193.00 13.40 + 45.05 203.00 14.00 + 45.10 212.00 14.00 + 45.15 197.00 13.80 + 45.20 219.00 14.20 + 45.25 219.00 14.60 + 45.30 226.00 14.50 + 45.35 282.00 16.50 + 45.40 353.00 18.10 + 45.45 469.00 21.30 + 45.50 741.00 26.20 + 45.55 1176.00 33.70 + 45.60 1577.00 38.10 + 45.65 2122.00 45.30 + 45.70 2726.00 50.10 + 45.75 2990.00 53.70 + 45.80 2991.00 52.50 + 45.85 2796.00 52.00 + 45.90 2372.00 46.80 + 45.95 1752.00 41.20 + 46.00 1209.00 33.40 + 46.05 824.00 28.30 + 46.10 512.00 21.80 + 46.15 353.00 18.60 + 46.20 273.00 15.90 + 46.25 259.00 15.90 + 46.30 233.00 14.80 + 46.35 220.00 14.70 + 46.40 228.00 14.60 + 46.45 231.00 15.10 + 46.50 218.00 14.30 + 46.55 210.00 14.40 + 46.60 212.00 14.20 + 46.65 187.00 13.60 + 46.70 207.00 14.00 + 46.75 212.00 14.50 + 46.80 188.00 13.40 + 46.85 178.00 13.30 + 46.90 186.00 13.30 + 46.95 192.00 13.80 + 47.00 192.00 13.50 + 47.05 186.00 13.60 + 47.10 208.00 14.10 + 47.15 199.00 14.10 + 47.20 165.00 12.50 + 47.25 212.00 14.50 + 47.30 191.00 13.50 + 47.35 185.00 13.60 + 47.40 171.00 12.70 + 47.45 176.00 13.20 + 47.50 179.00 13.00 + 47.55 187.00 13.60 + 47.60 181.00 13.10 + 47.65 173.00 13.10 + 47.70 167.00 12.50 + 47.75 182.00 13.40 + 47.80 171.00 12.70 + 47.85 185.00 13.50 + 47.90 177.00 12.90 + 47.95 154.00 12.40 + 48.00 200.00 13.70 + 48.05 177.00 13.30 + 48.10 184.00 13.20 + 48.15 166.00 12.80 + 48.20 181.00 13.10 + 48.25 208.00 14.40 + 48.30 186.00 13.20 + 48.35 164.00 12.70 + 48.40 196.00 13.60 + 48.45 169.00 12.90 + 48.50 173.00 12.70 + 48.55 200.00 14.10 + 48.60 163.00 12.40 + 48.65 173.00 13.10 + 48.70 187.00 13.30 + 48.75 177.00 13.30 + 48.80 200.00 13.80 + 48.85 171.00 13.00 + 48.90 192.00 13.50 + 48.95 178.00 13.30 + 49.00 169.00 12.70 + 49.05 160.00 12.70 + 49.10 182.00 13.20 + 49.15 173.00 13.20 + 49.20 170.00 12.80 + 49.25 181.00 13.60 + 49.30 170.00 12.90 + 49.35 164.00 13.00 + 49.40 166.00 12.70 + 49.45 174.00 13.40 + 49.50 173.00 13.10 + 49.55 137.00 11.90 + 49.60 166.00 12.80 + 49.65 194.00 14.20 + 49.70 160.00 12.60 + 49.75 152.00 12.50 + 49.80 180.00 13.30 + 49.85 160.00 12.90 + 49.90 149.00 12.20 + 49.95 172.00 13.40 + 50.00 170.00 13.00 + 50.05 175.00 13.50 + 50.10 162.00 12.70 + 50.15 168.00 13.20 + 50.20 186.00 13.60 + 50.25 179.00 13.60 + 50.30 165.00 12.70 + 50.35 155.00 12.60 + 50.40 170.00 12.90 + 50.45 162.00 12.80 + 50.50 157.00 12.30 + 50.55 173.00 13.20 + 50.60 149.00 12.00 + 50.65 167.00 13.00 + 50.70 165.00 12.60 + 50.75 157.00 12.50 + 50.80 177.00 13.00 + 50.85 187.00 13.60 + 50.90 155.00 12.10 + 50.95 194.00 13.70 + 51.00 147.00 11.70 + 51.05 169.00 12.80 + 51.10 166.00 12.40 + 51.15 193.00 13.60 + 51.20 168.00 12.40 + 51.25 188.00 13.40 + 51.30 182.00 12.80 + 51.35 180.00 13.10 + 51.40 177.00 12.70 + 51.45 188.00 13.30 + 51.50 187.00 13.00 + 51.55 178.00 12.90 + 51.60 177.00 12.60 + 51.65 184.00 13.10 + 51.70 172.00 12.40 + 51.75 188.00 13.30 + 51.80 194.00 13.20 + 51.85 179.00 12.90 + 51.90 176.00 12.50 + 51.95 180.00 12.90 + 52.00 169.00 12.20 + 52.05 178.00 12.90 + 52.10 165.00 12.10 + 52.15 149.00 11.70 + 52.20 168.00 12.20 + 52.25 157.00 12.10 + 52.30 151.00 11.60 + 52.35 181.00 13.00 + 52.40 172.00 12.40 + 52.45 178.00 12.90 + 52.50 179.00 12.60 + 52.55 171.00 12.60 + 52.60 129.00 10.70 + 52.65 180.00 13.00 + 52.70 154.00 11.70 + 52.75 182.00 13.10 + 52.80 166.00 12.20 + 52.85 156.00 12.10 + 52.90 164.00 12.10 + 52.95 166.00 12.50 + 53.00 176.00 12.50 + 53.05 182.00 13.10 + 53.10 173.00 12.50 + 53.15 160.00 12.30 + 53.20 169.00 12.30 + 53.25 162.00 12.30 + 53.30 164.00 12.10 + 53.35 165.00 12.40 + 53.40 177.00 12.60 + 53.45 173.00 12.80 + 53.50 158.00 11.90 + 53.55 164.00 12.40 + 53.60 175.00 12.50 + 53.65 166.00 12.50 + 53.70 161.00 12.00 + 53.75 167.00 12.50 + 53.80 136.00 11.00 + 53.85 167.00 12.50 + 53.90 152.00 11.70 + 53.95 159.00 12.20 + 54.00 172.00 12.40 + 54.05 179.00 12.90 + 54.10 169.00 12.20 + 54.15 165.00 12.40 + 54.20 166.00 12.10 + 54.25 162.00 12.30 + 54.30 175.00 12.40 + 54.35 162.00 12.30 + 54.40 145.00 11.40 + 54.45 148.00 11.70 + 54.50 157.00 11.80 + 54.55 176.00 12.80 + 54.60 162.00 12.00 + 54.65 153.00 12.00 + 54.70 178.00 12.60 + 54.75 147.00 11.80 + 54.80 146.00 11.50 + 54.85 170.00 12.70 + 54.90 155.00 11.80 + 54.95 170.00 12.70 + 55.00 142.00 11.30 + 55.05 154.00 12.10 + 55.10 150.00 11.70 + 55.15 145.00 11.80 + 55.20 151.00 11.80 + 55.25 162.00 12.50 + 55.30 153.00 11.90 + 55.35 170.00 12.90 + 55.40 153.00 11.90 + 55.45 156.00 12.40 + 55.50 163.00 12.40 + 55.55 149.00 12.20 + 55.60 135.00 11.30 + 55.65 158.00 12.60 + 55.70 144.00 11.70 + 55.75 152.00 12.40 + 55.80 165.00 12.70 + 55.85 164.00 13.00 + 55.90 175.00 13.10 + 55.95 150.00 12.40 + 56.00 168.00 12.90 + 56.05 159.00 12.90 + 56.10 187.00 13.60 + 56.15 170.00 13.30 + 56.20 159.00 12.60 + 56.25 148.00 12.50 + 56.30 159.00 12.60 + 56.35 174.00 13.50 + 56.40 195.00 14.00 + 56.45 219.00 15.10 + 56.50 216.00 14.70 + 56.55 271.00 16.80 + 56.60 337.00 18.30 + 56.65 417.00 20.80 + 56.70 390.00 19.70 + 56.75 414.00 20.70 + 56.80 388.00 19.60 + 56.85 317.00 18.10 + 56.90 307.00 17.40 + 56.95 250.00 16.00 + 57.00 205.00 14.20 + 57.05 167.00 13.00 + 57.10 179.00 13.20 + 57.15 159.00 12.70 + 57.20 170.00 12.80 + 57.25 168.00 13.00 + 57.30 180.00 13.10 + 57.35 144.00 12.00 + 57.40 178.00 13.00 + 57.45 203.00 14.20 + 57.50 159.00 12.30 + 57.55 165.00 12.80 + 57.60 164.00 12.40 + 57.65 135.00 11.60 + 57.70 157.00 12.20 + 57.75 162.00 12.70 + 57.80 175.00 12.90 + 57.85 161.00 12.60 + 57.90 174.00 12.80 + 57.95 187.00 13.70 + 58.00 164.00 12.50 + 58.05 188.00 13.70 + 58.10 163.00 12.40 + 58.15 177.00 13.30 + 58.20 181.00 13.10 + 58.25 156.00 12.50 + 58.30 163.00 12.40 + 58.35 190.00 13.80 + 58.40 162.00 12.40 + 58.45 186.00 13.70 + 58.50 169.00 12.70 + 58.55 160.00 12.70 + 58.60 171.00 12.80 + 58.65 160.00 12.60 + 58.70 174.00 12.90 + 58.75 163.00 12.70 + 58.80 180.00 13.10 + 58.85 176.00 13.20 + 58.90 174.00 12.80 + 58.95 177.00 13.30 + 59.00 186.00 13.30 + 59.05 157.00 12.40 + 59.10 188.00 13.30 + 59.15 162.00 12.60 + 59.20 160.00 12.20 + 59.25 196.00 13.90 + 59.30 178.00 12.90 + 59.35 188.00 13.50 + 59.40 161.00 12.30 + 59.45 157.00 12.30 + 59.50 183.00 13.00 + 59.55 169.00 12.80 + 59.60 150.00 11.80 + 59.65 195.00 13.70 + 59.70 175.00 12.70 + 59.75 160.00 12.40 + 59.80 168.00 12.40 + 59.85 191.00 13.50 + 59.90 181.00 12.80 + 59.95 168.00 12.70 + 60.00 181.00 12.80 + 60.05 158.00 12.20 + 60.10 160.00 12.00 + 60.15 151.00 12.00 + 60.20 171.00 12.40 + 60.25 167.00 12.60 + 60.30 160.00 12.00 + 60.35 157.00 12.10 + 60.40 172.00 12.40 + 60.45 140.00 11.50 + 60.50 172.00 12.40 + 60.55 150.00 11.90 + 60.60 179.00 12.70 + 60.65 153.00 12.00 + 60.70 170.00 12.40 + 60.75 184.00 13.10 + 60.80 158.00 11.90 + 60.85 177.00 12.90 + 60.90 159.00 12.00 + 60.95 157.00 12.20 + 61.00 168.00 12.30 + 61.05 154.00 12.00 + 61.10 170.00 12.40 + 61.15 147.00 11.80 + 61.20 161.00 12.10 + 61.25 175.00 12.90 + 61.30 170.00 12.40 + 61.35 153.00 12.10 + 61.40 165.00 12.30 + 61.45 164.00 12.50 + 61.50 174.00 12.60 + 61.55 160.00 12.40 + 61.60 188.00 13.20 + 61.65 182.00 13.30 + 61.70 197.00 13.50 + 61.75 163.00 12.60 + 61.80 176.00 12.80 + 61.85 157.00 12.40 + 61.90 166.00 12.40 + 61.95 173.00 13.10 + 62.00 167.00 12.50 + 62.05 175.00 13.20 + 62.10 143.00 11.60 + 62.15 148.00 12.10 + 62.20 178.00 13.00 + 62.25 180.00 13.40 + 62.30 141.00 11.60 + 62.35 202.00 14.30 + 62.40 172.00 12.80 + 62.45 169.00 13.00 + 62.50 143.00 11.80 + 62.55 146.00 12.20 + 62.60 169.00 12.80 + 62.65 146.00 12.30 + 62.70 156.00 12.30 + 62.75 147.00 12.30 + 62.80 158.00 12.40 + 62.85 178.00 13.50 + 62.90 163.00 12.60 + 62.95 168.00 13.10 + 63.00 164.00 12.60 + 63.05 180.00 13.60 + 63.10 189.00 13.60 + 63.15 164.00 12.90 + 63.20 181.00 13.20 + 63.25 179.00 13.50 + 63.30 147.00 11.90 + 63.35 179.00 13.50 + 63.40 150.00 12.00 + 63.45 168.00 12.90 + 63.50 156.00 12.20 + 63.55 181.00 13.40 + 63.60 170.00 12.70 + 63.65 181.00 13.30 + 63.70 184.00 13.10 + 63.75 153.00 12.20 + 63.80 166.00 12.40 + 63.85 166.00 12.60 + 63.90 169.00 12.50 + 63.95 175.00 12.90 + 64.00 157.00 12.00 + 64.05 165.00 12.40 + 64.10 169.00 12.30 + 64.15 164.00 12.40 + 64.20 181.00 12.80 + 64.25 189.00 13.30 + 64.30 179.00 12.60 + 64.35 157.00 12.10 + 64.40 189.00 13.00 + 64.45 167.00 12.50 + 64.50 178.00 12.50 + 64.55 144.00 11.60 + 64.60 180.00 12.60 + 64.65 182.00 12.90 + 64.70 199.00 13.20 + 64.75 172.00 12.60 + 64.80 191.00 12.90 + 64.85 166.00 12.30 + 64.90 157.00 11.70 + 64.95 197.00 13.50 + 65.00 204.00 13.40 + 65.05 183.00 13.00 + 65.10 189.00 12.90 + 65.15 189.00 13.20 + 65.20 170.00 12.20 + 65.25 188.00 13.20 + 65.30 176.00 12.40 + 65.35 172.00 12.60 + 65.40 182.00 12.70 + 65.45 205.00 13.80 + 65.50 191.00 13.00 + 65.55 192.00 13.30 + 65.60 190.00 12.90 + 65.65 194.00 13.40 + 65.70 212.00 13.70 + 65.75 221.00 14.30 + 65.80 227.00 14.20 + 65.85 227.00 14.60 + 65.90 239.00 14.60 + 65.95 261.00 15.60 + 66.00 301.00 16.40 + 66.05 409.00 19.60 + 66.10 559.00 22.30 + 66.15 820.00 27.80 + 66.20 1276.00 33.90 + 66.25 1776.00 41.00 + 66.30 2322.00 45.70 + 66.35 2880.00 52.20 + 66.40 3051.00 52.50 + 66.45 2980.00 53.10 + 66.50 2572.00 48.20 + 66.55 1961.00 43.20 + 66.60 1315.00 34.50 + 66.65 919.00 29.60 + 66.70 548.00 22.40 + 66.75 405.00 19.70 + 66.80 299.00 16.50 + 66.85 309.00 17.20 + 66.90 279.00 15.90 + 66.95 281.00 16.40 + 67.00 235.00 14.70 + 67.05 239.00 15.10 + 67.10 212.00 14.00 + 67.15 228.00 14.80 + 67.20 231.00 14.50 + 67.25 198.00 13.80 + 67.30 223.00 14.30 + 67.35 201.00 13.90 + 67.40 208.00 13.80 + 67.45 207.00 14.10 + 67.50 217.00 14.10 + 67.55 196.00 13.70 + 67.60 182.00 12.90 + 67.65 182.00 13.20 + 67.70 186.00 13.10 + 67.75 176.00 13.00 + 67.80 192.00 13.30 + 67.85 215.00 14.50 + 67.90 178.00 12.90 + 67.95 191.00 13.70 + 68.00 178.00 12.90 + 68.05 185.00 13.50 + 68.10 171.00 12.70 + 68.15 174.00 13.30 + 68.20 193.00 13.60 + 68.25 182.00 13.60 + 68.30 178.00 13.10 + 68.35 196.00 14.10 + 68.40 178.00 13.10 + 68.45 173.00 13.30 + 68.50 175.00 13.10 + 68.55 178.00 13.60 + 68.60 177.00 13.20 + 68.65 176.00 13.60 + 68.70 200.00 14.10 + 68.75 177.00 13.60 + 68.80 185.00 13.60 + 68.85 167.00 13.20 + 68.90 158.00 12.60 + 68.95 176.00 13.60 + 69.00 192.00 13.80 + 69.05 174.00 13.50 + 69.10 154.00 12.40 + 69.15 153.00 12.70 + 69.20 167.00 12.90 + 69.25 168.00 13.30 + 69.30 167.00 12.90 + 69.35 163.00 13.10 + 69.40 157.00 12.50 + 69.45 185.00 13.90 + 69.50 151.00 12.30 + 69.55 176.00 13.50 + 69.60 187.00 13.60 + 69.65 170.00 13.20 + 69.70 164.00 12.70 + 69.75 204.00 14.50 + 69.80 169.00 12.80 + 69.85 191.00 13.90 + 69.90 177.00 13.10 + 69.95 157.00 12.60 + 70.00 173.00 12.80 + 70.05 199.00 14.10 + 70.10 168.00 12.60 + 70.15 191.00 13.70 + 70.20 165.00 12.40 + 70.25 156.00 12.30 + 70.30 163.00 12.30 + 70.35 149.00 12.00 + 70.40 199.00 13.60 + 70.45 158.00 12.30 + 70.50 158.00 12.10 + 70.55 150.00 12.00 + 70.60 197.00 13.50 + 70.65 167.00 12.60 + 70.70 180.00 12.80 + 70.75 187.00 13.40 + 70.80 190.00 13.20 + 70.85 169.00 12.70 + 70.90 214.00 14.00 + 70.95 188.00 13.50 + 71.00 200.00 13.50 + 71.05 186.00 13.30 + 71.10 169.00 12.40 + 71.15 166.00 12.60 + 71.20 175.00 12.60 + 71.25 170.00 12.80 + 71.30 191.00 13.20 + 71.35 185.00 13.30 + 71.40 191.00 13.20 + 71.45 181.00 13.20 + 71.50 188.00 13.10 + 71.55 164.00 12.60 + 71.60 185.00 13.00 + 71.65 168.00 12.70 + 71.70 168.00 12.40 + 71.75 167.00 12.60 + 71.80 158.00 12.00 + 71.85 173.00 12.90 + 71.90 177.00 12.70 + 71.95 193.00 13.60 + 72.00 190.00 13.20 + 72.05 174.00 12.90 + 72.10 161.00 12.10 + 72.15 147.00 11.80 + 72.20 165.00 12.30 + 72.25 188.00 13.40 + 72.30 172.00 12.50 + 72.35 176.00 12.90 + 72.40 167.00 12.30 + 72.45 186.00 13.30 + 72.50 178.00 12.70 + 72.55 158.00 12.20 + 72.60 168.00 12.30 + 72.65 180.00 13.10 + 72.70 154.00 11.80 + 72.75 162.00 12.40 + 72.80 168.00 12.30 + 72.85 194.00 13.50 + 72.90 164.00 12.10 + 72.95 169.00 12.60 + 73.00 160.00 12.00 + 73.05 164.00 12.50 + 73.10 171.00 12.40 + 73.15 169.00 12.60 + 73.20 167.00 12.30 + 73.25 150.00 12.00 + 73.30 173.00 12.50 + 73.35 183.00 13.20 + 73.40 169.00 12.40 + 73.45 180.00 13.10 + 73.50 173.00 12.50 + 73.55 195.00 13.70 + 73.60 178.00 12.80 + 73.65 193.00 13.60 + 73.70 179.00 12.80 + 73.75 153.00 12.20 + 73.80 169.00 12.40 + 73.85 165.00 12.60 + 73.90 172.00 12.60 + 73.95 171.00 12.80 + 74.00 178.00 12.80 + 74.05 180.00 13.20 + 74.10 168.00 12.50 + 74.15 169.00 12.80 + 74.20 190.00 13.20 + 74.25 170.00 12.80 + 74.30 178.00 12.80 + 74.35 158.00 12.40 + 74.40 185.00 13.10 + 74.45 181.00 13.30 + 74.50 173.00 12.70 + 74.55 163.00 12.60 + 74.60 184.00 13.10 + 74.65 181.00 13.40 + 74.70 192.00 13.50 + 74.75 166.00 12.90 + 74.80 168.00 12.60 + 74.85 200.00 14.20 + 74.90 188.00 13.40 + 74.95 190.00 13.90 + 75.00 211.00 14.30 + 75.05 172.00 13.20 + 75.10 198.00 13.90 + 75.15 230.00 15.40 + 75.20 264.00 16.10 + 75.25 227.00 15.20 + 75.30 289.00 16.80 + 75.35 290.00 17.20 + 75.40 284.00 16.70 + 75.45 250.00 16.10 + 75.50 233.00 15.10 + 75.55 239.00 15.70 + 75.60 239.00 15.30 + 75.65 204.00 14.40 + 75.70 178.00 13.20 + 75.75 189.00 13.90 + 75.80 202.00 14.00 + 75.85 181.00 13.50 + 75.90 190.00 13.50 + 75.95 177.00 13.30 + 76.00 199.00 13.80 + 76.05 193.00 13.90 + 76.10 170.00 12.70 + 76.15 170.00 13.00 + 76.20 165.00 12.50 + 76.25 192.00 13.70 + 76.30 171.00 12.70 + 76.35 169.00 12.80 + 76.40 168.00 12.50 + 76.45 183.00 13.30 + 76.50 173.00 12.60 + 76.55 178.00 13.10 + 76.60 175.00 12.70 + 76.65 191.00 13.50 + 76.70 166.00 12.30 + 76.75 187.00 13.40 + 76.80 191.00 13.20 + 76.85 184.00 13.30 + 76.90 168.00 12.40 + 76.95 177.00 13.00 + 77.00 205.00 13.70 + 77.05 188.00 13.40 + 77.10 166.00 12.30 + 77.15 180.00 13.10 + 77.20 179.00 12.80 + 77.25 179.00 13.10 + 77.30 163.00 12.20 + 77.35 188.00 13.40 + 77.40 169.00 12.40 + 77.45 179.00 13.00 + 77.50 169.00 12.40 + 77.55 201.00 13.80 + 77.60 184.00 12.90 + 77.65 187.00 13.30 + 77.70 207.00 13.70 + 77.75 170.00 12.70 + 77.80 193.00 13.20 + 77.85 189.00 13.50 + 77.90 205.00 13.70 + 77.95 183.00 13.20 + 78.00 179.00 12.80 + 78.05 188.00 13.40 + 78.10 194.00 13.30 + 78.15 220.00 14.50 + 78.20 195.00 13.40 + 78.25 176.00 13.00 + 78.30 208.00 13.80 + 78.35 185.00 13.30 + 78.40 217.00 14.10 + 78.45 203.00 14.00 + 78.50 200.00 13.50 + 78.55 196.00 13.70 + 78.60 197.00 13.40 + 78.65 217.00 14.40 + 78.70 179.00 12.80 + 78.75 184.00 13.30 + 78.80 187.00 13.10 + 78.85 219.00 14.40 + 78.90 193.00 13.30 + 78.95 214.00 14.30 + 79.00 207.00 13.70 + 79.05 199.00 13.80 + 79.10 224.00 14.30 + 79.15 244.00 15.20 + 79.20 217.00 14.10 + 79.25 266.00 15.90 + 79.30 281.00 16.00 + 79.35 425.00 20.10 + 79.40 527.00 21.90 + 79.45 735.00 26.50 + 79.50 1057.00 31.10 + 79.55 1483.00 37.70 + 79.60 1955.00 42.20 + 79.65 2315.00 47.10 + 79.70 2552.00 48.30 + 79.75 2506.00 49.00 + 79.80 2261.00 45.50 + 79.85 1842.00 42.10 + 79.90 1328.00 34.90 + 79.95 911.00 29.60 + 80.00 592.00 23.40 + 80.05 430.00 20.40 + 80.10 312.00 17.00 + 80.15 284.00 16.60 + 80.20 285.00 16.20 + 80.25 247.00 15.50 + 80.30 250.00 15.20 + 80.35 231.00 15.00 + 80.40 272.00 15.90 + 80.45 235.00 15.20 + 80.50 188.00 13.20 + 80.55 223.00 14.80 + 80.60 218.00 14.30 + 80.65 221.00 14.80 + 80.70 210.00 14.10 + 80.75 199.00 14.00 + 80.80 207.00 14.00 + 80.85 208.00 14.40 + 80.90 178.00 13.00 + 80.95 194.00 14.00 + 81.00 202.00 13.90 + 81.05 226.00 15.10 + 81.10 209.00 14.20 + 81.15 194.00 14.10 + 81.20 179.00 13.20 + 81.25 183.00 13.70 + 81.30 187.00 13.50 + 81.35 198.00 14.30 + 81.40 198.00 14.00 + 81.45 209.00 14.70 + 81.50 187.00 13.60 + 81.55 211.00 14.90 + 81.60 198.00 14.10 + 81.65 164.00 13.10 + 81.70 200.00 14.10 + 81.75 212.00 14.90 + 81.80 197.00 14.00 + 81.85 191.00 14.20 + 81.90 195.00 14.00 + 81.95 217.00 15.10 + 82.00 189.00 13.80 + 82.05 182.00 13.80 + 82.10 174.00 13.20 + 82.15 182.00 13.80 + 82.20 199.00 14.00 + 82.25 179.00 13.60 + 82.30 197.00 13.90 + 82.35 228.00 15.30 + 82.40 170.00 12.90 + 82.45 203.00 14.40 + 82.50 232.00 15.10 + 82.55 178.00 13.50 + 82.60 216.00 14.50 + 82.65 205.00 14.30 + 82.70 185.00 13.30 + 82.75 212.00 14.60 + 82.80 199.00 13.70 + 82.85 169.00 12.90 + 82.90 165.00 12.50 + 82.95 203.00 14.10 + 83.00 215.00 14.20 + 83.05 199.00 13.90 + 83.10 200.00 13.60 + 83.15 174.00 12.90 + 83.20 192.00 13.30 + 83.25 206.00 14.10 + 83.30 191.00 13.20 + 83.35 203.00 13.90 + 83.40 210.00 13.90 + 83.45 194.00 13.60 + 83.50 245.00 14.90 + 83.55 242.00 15.10 + 83.60 255.00 15.20 + 83.65 310.00 17.10 + 83.70 408.00 19.20 + 83.75 498.00 21.70 + 83.80 729.00 25.60 + 83.85 934.00 29.60 + 83.90 1121.00 31.70 + 83.95 1320.00 35.20 + 84.00 1476.00 36.30 + 84.05 1276.00 34.60 + 84.10 1129.00 31.80 + 84.15 887.00 28.80 + 84.20 643.00 23.90 + 84.25 490.00 21.40 + 84.30 343.00 17.50 + 84.35 284.00 16.30 + 84.40 263.00 15.30 + 84.45 229.00 14.60 + 84.50 235.00 14.50 + 84.55 246.00 15.10 + 84.60 205.00 13.50 + 84.65 217.00 14.20 + 84.70 217.00 13.90 + 84.75 197.00 13.50 + 84.80 195.00 13.10 + 84.85 232.00 14.70 + 84.90 182.00 12.70 + 84.95 192.00 13.40 + 85.00 172.00 12.40 + 85.05 191.00 13.30 + 85.10 200.00 13.30 + 85.15 186.00 13.10 + 85.20 190.00 13.00 + 85.25 211.00 14.00 + 85.30 184.00 12.80 + 85.35 180.00 12.90 + 85.40 182.00 12.70 + 85.45 184.00 13.10 + 85.50 175.00 12.40 + 85.55 176.00 12.80 + 85.60 166.00 12.10 + 85.65 180.00 12.90 + 85.70 195.00 13.10 + 85.75 183.00 13.10 + 85.80 182.00 12.70 + 85.85 168.00 12.50 + 85.90 177.00 12.60 + 85.95 190.00 13.30 + 86.00 178.00 12.60 + 86.05 180.00 13.00 + 86.10 181.00 12.70 + 86.15 177.00 12.90 + 86.20 171.00 12.40 + 86.25 193.00 13.50 + 86.30 181.00 12.70 + 86.35 180.00 13.00 + 86.40 198.00 13.30 + 86.45 177.00 12.90 + 86.50 161.00 12.00 + 86.55 166.00 12.50 + 86.60 176.00 12.60 + 86.65 190.00 13.40 + 86.70 185.00 12.90 + 86.75 173.00 12.90 + 86.80 176.00 12.60 + 86.85 159.00 12.30 + 86.90 188.00 13.10 + 86.95 199.00 13.90 + 87.00 180.00 12.90 + 87.05 164.00 12.60 + 87.10 180.00 12.90 + 87.15 190.00 13.60 + 87.20 179.00 12.90 + 87.25 177.00 13.20 + 87.30 183.00 13.10 + 87.35 174.00 13.20 + 87.40 164.00 12.50 + 87.45 165.00 12.90 + 87.50 185.00 13.30 + 87.55 191.00 13.90 + 87.60 181.00 13.20 + 87.65 143.00 12.10 + 87.70 170.00 12.90 + 87.75 150.00 12.40 + 87.80 187.00 13.50 + 87.85 181.00 13.60 + 87.90 171.00 12.90 + 87.95 179.00 13.60 + 88.00 146.00 12.00 + 88.05 175.00 13.40 + 88.10 182.00 13.40 + 88.15 176.00 13.50 + 88.20 164.00 12.70 + 88.25 152.00 12.60 + 88.30 188.00 13.60 + 88.35 152.00 12.50 + 88.40 172.00 13.00 + 88.45 140.00 12.00 + 88.50 176.00 13.10 + 88.55 168.00 13.10 + 88.60 197.00 13.80 + 88.65 190.00 13.90 + 88.70 176.00 13.10 + 88.75 167.00 13.00 + 88.80 182.00 13.30 + 88.85 175.00 13.20 + 88.90 154.00 12.10 + 88.95 168.00 12.90 + 89.00 187.00 13.30 + 89.05 163.00 12.70 + 89.10 173.00 12.80 + 89.15 161.00 12.50 + 89.20 170.00 12.60 + 89.25 178.00 13.10 + 89.30 174.00 12.70 + 89.35 172.00 12.80 + 89.40 167.00 12.40 + 89.45 168.00 12.60 + 89.50 164.00 12.20 + 89.55 183.00 13.10 + 89.60 141.00 11.30 + 89.65 173.00 12.80 + 89.70 190.00 13.10 + 89.75 180.00 13.00 + 89.80 162.00 12.10 + 89.85 166.00 12.50 + 89.90 164.00 12.10 + 89.95 166.00 12.50 + 90.00 170.00 12.40 + 90.05 176.00 12.90 + 90.10 181.00 12.80 + 90.15 175.00 12.90 + 90.20 161.00 12.10 + 90.25 170.00 12.70 + 90.30 166.00 12.30 + 90.35 175.00 12.90 + 90.40 171.00 12.50 + 90.45 172.00 12.80 + 90.50 183.00 12.90 + 90.55 165.00 12.50 + 90.60 181.00 12.80 + 90.65 168.00 12.70 + 90.70 179.00 12.70 + 90.75 157.00 12.20 + 90.80 172.00 12.50 + 90.85 187.00 13.30 + 90.90 181.00 12.80 + 90.95 163.00 12.40 + 91.00 163.00 12.10 + 91.05 166.00 12.50 + 91.10 161.00 12.00 + 91.15 167.00 12.50 + 91.20 148.00 11.50 + 91.25 175.00 12.80 + 91.30 195.00 13.20 + 91.35 181.00 13.00 + 91.40 173.00 12.50 + 91.45 160.00 12.30 + 91.50 180.00 12.70 + 91.55 183.00 13.10 + 91.60 156.00 11.90 + 91.65 163.00 12.40 + 91.70 175.00 12.50 + 91.75 189.00 13.30 + 91.80 181.00 12.70 + 91.85 186.00 13.20 + 91.90 184.00 12.80 + 91.95 187.00 13.20 + 92.00 191.00 13.10 + 92.05 203.00 13.70 + 92.10 194.00 13.10 + 92.15 237.00 14.80 + 92.20 242.00 14.60 + 92.25 307.00 16.90 + 92.30 299.00 16.30 + 92.35 340.00 17.70 + 92.40 357.00 17.70 + 92.45 354.00 18.10 + 92.50 370.00 18.00 + 92.55 375.00 18.60 + 92.60 303.00 16.30 + 92.65 264.00 15.60 + 92.70 243.00 14.60 + 92.75 207.00 13.90 + 92.80 199.00 13.20 + 92.85 180.00 12.90 + 92.90 202.00 13.30 + 92.95 188.00 13.20 + 93.00 183.00 12.70 + 93.05 170.00 12.60 + 93.10 180.00 12.60 + 93.15 182.00 13.10 + 93.20 186.00 12.90 + 93.25 196.00 13.60 + 93.30 177.00 12.60 + 93.35 198.00 13.70 + 93.40 182.00 12.80 + 93.45 183.00 13.20 + 93.50 184.00 12.90 + 93.55 181.00 13.20 + 93.60 190.00 13.20 + 93.65 176.00 13.10 + 93.70 197.00 13.50 + 93.75 174.00 13.10 + 93.80 159.00 12.20 + 93.85 171.00 13.00 + 93.90 159.00 12.20 + 93.95 170.00 13.00 + 94.00 172.00 12.70 + 94.05 159.00 12.60 + 94.10 160.00 12.30 + 94.15 173.00 13.20 + 94.20 147.00 11.90 + 94.25 143.00 12.00 + 94.30 150.00 12.00 + 94.35 155.00 12.50 + 94.40 160.00 12.40 + 94.45 155.00 12.60 + 94.50 176.00 13.00 + 94.55 198.00 14.20 + 94.60 179.00 13.20 + 94.65 161.00 12.80 + 94.70 175.00 13.10 + 94.75 157.00 12.70 + 94.80 173.00 13.00 + 94.85 168.00 13.10 + 94.90 171.00 12.90 + 94.95 173.00 13.20 + 95.00 183.00 13.30 + 95.05 148.00 12.20 + 95.10 160.00 12.40 + 95.15 171.00 13.10 + 95.20 167.00 12.60 + 95.25 195.00 13.90 + 95.30 175.00 12.90 + 95.35 200.00 14.10 + 95.40 176.00 12.90 + 95.45 175.00 13.10 + 95.50 194.00 13.50 + 95.55 190.00 13.60 + 95.60 154.00 12.00 + 95.65 166.00 12.70 + 95.70 164.00 12.30 + 95.75 166.00 12.60 + 95.80 162.00 12.20 + 95.85 183.00 13.20 + 95.90 149.00 11.60 + 95.95 171.00 12.80 + 96.00 165.00 12.30 + 96.05 181.00 13.10 + 96.10 188.00 13.00 + 96.15 184.00 13.20 + 96.20 162.00 12.10 + 96.25 163.00 12.40 + 96.30 165.00 12.20 + 96.35 183.00 13.10 + 96.40 182.00 12.80 + 96.45 156.00 12.10 + 96.50 159.00 11.90 + 96.55 139.00 11.40 + 96.60 165.00 12.10 + 96.65 164.00 12.40 + 96.70 184.00 12.80 + 96.75 159.00 12.10 + 96.80 159.00 11.90 + 96.85 155.00 12.00 + 96.90 162.00 12.00 + 96.95 157.00 12.00 + 97.00 160.00 11.90 + 97.05 168.00 12.50 + 97.10 168.00 12.20 + 97.15 151.00 11.80 + 97.20 162.00 11.90 + 97.25 163.00 12.20 + 97.30 166.00 12.10 + 97.35 161.00 12.20 + 97.40 158.00 11.80 + 97.45 151.00 11.80 + 97.50 163.00 12.00 + 97.55 179.00 12.80 + 97.60 166.00 12.10 + 97.65 155.00 11.90 + 97.70 160.00 11.80 + 97.75 152.00 11.80 + 97.80 184.00 12.70 + 97.85 175.00 12.60 + 97.90 161.00 11.80 + 97.95 166.00 12.30 + 98.00 150.00 11.40 + 98.05 179.00 12.80 + 98.10 184.00 12.70 + 98.15 151.00 11.80 + 98.20 173.00 12.30 + 98.25 164.00 12.30 + 98.30 178.00 12.50 + 98.35 176.00 12.80 + 98.40 162.00 11.90 + 98.45 173.00 12.70 + 98.50 154.00 11.60 + 98.55 184.00 13.10 + 98.60 142.00 11.20 + 98.65 184.00 13.00 + 98.70 156.00 11.70 + 98.75 177.00 12.80 + 98.80 163.00 12.00 + 98.85 173.00 12.70 + 98.90 180.00 12.70 + 98.95 181.00 13.00 + 99.00 165.00 12.10 + 99.05 177.00 12.90 + 99.10 155.00 11.80 + 99.15 147.00 11.70 + 99.20 163.00 12.10 + 99.25 172.00 12.70 + 99.30 145.00 11.40 + 99.35 156.00 12.10 + 99.40 161.00 12.00 + 99.45 189.00 13.50 + 99.50 182.00 12.90 + 99.55 172.00 12.80 + 99.60 176.00 12.70 + 99.65 166.00 12.60 + 99.70 190.00 13.20 + 99.75 154.00 12.20 + 99.80 198.00 13.50 + 99.85 152.00 12.20 + 99.90 160.00 12.20 + 99.95 174.00 13.00 + 100.00 187.00 13.20 + 100.05 178.00 13.20 + 100.10 149.00 11.80 + 100.15 171.00 13.00 + 100.20 185.00 13.20 + 100.25 207.00 14.40 + 100.30 184.00 13.20 + 100.35 187.00 13.70 + 100.40 231.00 14.90 + 100.45 226.00 15.10 + 100.50 203.00 14.00 + 100.55 214.00 14.80 + 100.60 279.00 16.50 + 100.65 319.00 18.10 + 100.70 397.00 19.70 + 100.75 435.00 21.20 + 100.80 539.00 23.00 + 100.85 665.00 26.30 + 100.90 724.00 26.80 + 100.95 723.00 27.50 + 101.00 783.00 27.90 + 101.05 719.00 27.50 + 101.10 585.00 24.20 + 101.15 465.00 22.10 + 101.20 371.00 19.30 + 101.25 328.00 18.50 + 101.30 277.00 16.70 + 101.35 248.00 16.10 + 101.40 209.00 14.40 + 101.45 221.00 15.10 + 101.50 198.00 14.00 + 101.55 203.00 14.50 + 101.60 188.00 13.60 + 101.65 207.00 14.50 + 101.70 195.00 13.80 + 101.75 170.00 13.10 + 101.80 192.00 13.60 + 101.85 172.00 13.10 + 101.90 185.00 13.30 + 101.95 183.00 13.40 + 102.00 211.00 14.10 + 102.05 147.00 12.00 + 102.10 176.00 12.80 + 102.15 186.00 13.40 + 102.20 171.00 12.60 + 102.25 169.00 12.70 + 102.30 192.00 13.20 + 102.35 215.00 14.30 + 102.40 146.00 11.50 + 102.45 169.00 12.60 + 102.50 188.00 13.10 + 102.55 175.00 12.80 + 102.60 165.00 12.20 + 102.65 184.00 13.10 + 102.70 172.00 12.40 + 102.75 179.00 13.00 + 102.80 163.00 12.10 + 102.85 167.00 12.50 + 102.90 179.00 12.70 + 102.95 171.00 12.70 + 103.00 181.00 12.70 + 103.05 171.00 12.70 + 103.10 180.00 12.70 + 103.15 173.00 12.80 + 103.20 167.00 12.20 + 103.25 186.00 13.20 + 103.30 176.00 12.50 + 103.35 191.00 13.40 + 103.40 170.00 12.30 + 103.45 167.00 12.50 + 103.50 165.00 12.10 + 103.55 182.00 13.00 + 103.60 173.00 12.40 + 103.65 186.00 13.20 + 103.70 161.00 12.00 + 103.75 166.00 12.40 + 103.80 157.00 11.80 + 103.85 170.00 12.50 + 103.90 183.00 12.70 + 103.95 179.00 12.90 + 104.00 164.00 12.00 + 104.05 169.00 12.50 + 104.10 161.00 11.90 + 104.15 156.00 12.00 + 104.20 163.00 12.00 + 104.25 174.00 12.70 + 104.30 161.00 11.90 + 104.35 169.00 12.50 + 104.40 158.00 11.80 + 104.45 180.00 12.90 + 104.50 171.00 12.30 + 104.55 165.00 12.30 + 104.60 163.00 12.00 + 104.65 172.00 12.60 + 104.70 164.00 12.00 + 104.75 174.00 12.60 + 104.80 178.00 12.50 + 104.85 154.00 11.90 + 104.90 176.00 12.40 + 104.95 142.00 11.40 + 105.00 163.00 12.00 + 105.05 177.00 12.80 + 105.10 194.00 13.00 + 105.15 176.00 12.70 + 105.20 207.00 13.50 + 105.25 158.00 12.10 + 105.30 151.00 11.50 + 105.35 183.00 13.00 + 105.40 159.00 11.80 + 105.45 179.00 12.90 + 105.50 170.00 12.20 + 105.55 192.00 13.30 + 105.60 160.00 11.90 + 105.65 168.00 12.40 + 105.70 183.00 12.70 + 105.75 163.00 12.30 + 105.80 162.00 11.90 + 105.85 182.00 12.90 + 105.90 154.00 11.60 + 105.95 180.00 12.90 + 106.00 168.00 12.20 + 106.05 166.00 12.40 + 106.10 155.00 11.70 + 106.15 190.00 13.30 + 106.20 165.00 12.10 + 106.25 163.00 12.30 + 106.30 183.00 12.80 + 106.35 165.00 12.50 + 106.40 173.00 12.50 + 106.45 163.00 12.50 + 106.50 151.00 11.70 + 106.55 198.00 13.80 + 106.60 165.00 12.20 + 106.65 157.00 12.30 + 106.70 159.00 12.10 + 106.75 177.00 13.10 + 106.80 156.00 12.00 + 106.85 182.00 13.40 + 106.90 181.00 13.00 + 106.95 158.00 12.50 + 107.00 176.00 12.80 + 107.05 163.00 12.70 + 107.10 156.00 12.10 + 107.15 213.00 14.60 + 107.20 172.00 12.80 + 107.25 170.00 13.00 + 107.30 168.00 12.60 + 107.35 169.00 13.00 + 107.40 169.00 12.70 + 107.45 168.00 13.00 + 107.50 155.00 12.10 + 107.55 164.00 12.80 + 107.60 168.00 12.70 + 107.65 144.00 12.00 + 107.70 166.00 12.60 + 107.75 172.00 13.10 + 107.80 156.00 12.20 + 107.85 154.00 12.40 + 107.90 143.00 11.60 + 107.95 152.00 12.30 + 108.00 174.00 12.80 + 108.05 168.00 12.80 + 108.10 164.00 12.40 + 108.15 160.00 12.50 + 108.20 176.00 12.80 + 108.25 174.00 13.00 + 108.30 175.00 12.70 + 108.35 163.00 12.60 + 108.40 169.00 12.50 + 108.45 180.00 13.10 + 108.50 159.00 12.00 + 108.55 173.00 12.80 + 108.60 148.00 11.60 + 108.65 169.00 12.60 + 108.70 167.00 12.30 + 108.75 168.00 12.50 + 108.80 175.00 12.50 + 108.85 163.00 12.30 + 108.90 164.00 12.10 + 108.95 189.00 13.30 + 109.00 192.00 13.10 + 109.05 181.00 13.00 + 109.10 202.00 13.40 + 109.15 190.00 13.30 + 109.20 163.00 12.00 + 109.25 216.00 14.10 + 109.30 220.00 14.00 + 109.35 230.00 14.60 + 109.40 255.00 15.00 + 109.45 253.00 15.30 + 109.50 273.00 15.50 + 109.55 296.00 16.50 + 109.60 300.00 16.30 + 109.65 331.00 17.50 + 109.70 347.00 17.50 + 109.75 349.00 18.00 + 109.80 341.00 17.40 + 109.85 332.00 17.50 + 109.90 298.00 16.20 + 109.95 259.00 15.50 + 110.00 227.00 14.10 + 110.05 203.00 13.70 + 110.10 222.00 14.00 + 110.15 175.00 12.70 + 110.20 183.00 12.70 + 110.25 197.00 13.50 + 110.30 176.00 12.40 + 110.35 179.00 12.90 + 110.40 176.00 12.50 + 110.45 178.00 12.80 + 110.50 210.00 13.60 + 110.55 181.00 13.00 + 110.60 167.00 12.20 + 110.65 165.00 12.40 + 110.70 172.00 12.30 + 110.75 175.00 12.80 + 110.80 177.00 12.50 + 110.85 194.00 13.40 + 110.90 171.00 12.30 + 110.95 177.00 12.80 + 111.00 188.00 12.90 + 111.05 175.00 12.80 + 111.10 194.00 13.10 + 111.15 179.00 12.90 + 111.20 171.00 12.30 + 111.25 165.00 12.40 + 111.30 183.00 12.70 + 111.35 184.00 13.00 + 111.40 187.00 12.90 + 111.45 178.00 12.80 + 111.50 172.00 12.30 + 111.55 179.00 12.90 + 111.60 205.00 13.40 + 111.65 168.00 12.50 + 111.70 161.00 11.90 + 111.75 182.00 13.00 + 111.80 167.00 12.20 + 111.85 193.00 13.40 + 111.90 188.00 12.90 + 111.95 204.00 13.80 + 112.00 179.00 12.60 + 112.05 176.00 12.80 + 112.10 185.00 12.80 + 112.15 174.00 12.70 + 112.20 175.00 12.50 + 112.25 198.00 13.60 + 112.30 199.00 13.30 + 112.35 207.00 13.90 + 112.40 204.00 13.50 + 112.45 180.00 13.00 + 112.50 137.00 11.10 + 112.55 179.00 13.00 + 112.60 183.00 12.80 + 112.65 166.00 12.60 + 112.70 166.00 12.30 + 112.75 189.00 13.40 + 112.80 181.00 12.80 + 112.85 194.00 13.60 + 112.90 171.00 12.50 + 112.95 202.00 13.90 + 113.00 216.00 14.10 + 113.05 198.00 14.00 + 113.10 189.00 13.30 + 113.15 170.00 13.00 + 113.20 182.00 13.10 + 113.25 195.00 14.00 + 113.30 177.00 13.00 + 113.35 180.00 13.50 + 113.40 195.00 13.70 + 113.45 201.00 14.30 + 113.50 203.00 14.00 + 113.55 200.00 14.30 + 113.60 209.00 14.20 + 113.65 231.00 15.40 + 113.70 281.00 16.60 + 113.75 287.00 17.20 + 113.80 324.00 17.80 + 113.85 395.00 20.20 + 113.90 457.00 21.20 + 113.95 580.00 24.40 + 114.00 685.00 26.00 + 114.05 873.00 30.00 + 114.10 964.00 30.80 + 114.15 1126.00 34.00 + 114.20 1266.00 35.20 + 114.25 1307.00 36.50 + 114.30 1221.00 34.50 + 114.35 1096.00 33.30 + 114.40 978.00 30.70 + 114.45 792.00 28.20 + 114.50 600.00 24.00 + 114.55 487.00 22.00 + 114.60 358.00 18.50 + 114.65 279.00 16.60 + 114.70 265.00 15.80 + 114.75 258.00 15.90 + 114.80 244.00 15.10 + 114.85 226.00 14.80 + 114.90 227.00 14.50 + 114.95 188.00 13.50 + 115.00 195.00 13.40 + 115.05 211.00 14.20 + 115.10 205.00 13.70 + 115.15 198.00 13.70 + 115.20 218.00 14.00 + 115.25 200.00 13.70 + 115.30 200.00 13.40 + 115.35 188.00 13.30 + 115.40 209.00 13.70 + 115.45 184.00 13.10 + 115.50 186.00 12.90 + 115.55 202.00 13.70 + 115.60 183.00 12.70 + 115.65 187.00 13.10 + 115.70 182.00 12.60 + 115.75 185.00 13.10 + 115.80 213.00 13.70 + 115.85 177.00 12.80 + 115.90 199.00 13.20 + 115.95 185.00 13.00 + 116.00 184.00 12.70 + 116.05 191.00 13.30 + 116.10 173.00 12.30 + 116.15 196.00 13.50 + 116.20 201.00 13.30 + 116.25 173.00 12.70 + 116.30 178.00 12.60 + 116.35 161.00 12.30 + 116.40 208.00 13.60 + 116.45 183.00 13.10 + 116.50 183.00 12.80 + 116.55 173.00 12.80 + 116.60 184.00 12.80 + 116.65 215.00 14.20 + 116.70 201.00 13.40 + 116.75 193.00 13.40 + 116.80 190.00 13.00 + 116.85 216.00 14.20 + 116.90 195.00 13.10 + 116.95 203.00 13.80 + 117.00 183.00 12.80 + 117.05 203.00 13.70 + 117.10 187.00 12.90 + 117.15 216.00 14.20 + 117.20 191.00 13.00 + 117.25 189.00 13.30 + 117.30 189.00 13.00 + 117.35 226.00 14.50 + 117.40 185.00 12.90 + 117.45 194.00 13.50 + 117.50 185.00 12.80 + 117.55 213.00 14.10 + 117.60 197.00 13.30 + 117.65 198.00 14.50 + 117.70 168.00 13.00 + 117.75 209.00 14.90 + 117.80 185.00 13.70 + 117.85 208.00 14.90 + 117.90 213.00 14.70 + 117.95 203.00 14.70 + 118.00 225.00 15.10 + 118.05 214.00 15.10 + 118.10 233.00 15.40 + 118.15 245.00 16.20 + 118.20 236.00 15.50 + 118.25 245.00 16.20 + 118.30 305.00 17.60 + 118.35 287.00 17.10 + 118.40 317.00 17.40 + 118.45 421.00 20.60 + 118.50 422.00 20.10 + 118.55 590.00 24.40 + 118.60 701.00 26.80 + 118.65 861.00 28.60 + 118.70 1054.00 31.00 + 118.75 1232.00 34.30 + 118.80 1483.00 36.80 + 118.85 1694.00 40.30 + 118.90 1819.00 40.80 + 118.95 1845.00 42.30 + 119.00 1866.00 41.50 + 119.05 1726.00 41.00 + 119.10 1492.00 37.20 + 119.15 1232.00 34.80 + 119.20 971.00 30.10 + 119.25 753.00 27.20 + 119.30 626.00 24.20 + 119.35 487.00 21.90 + 119.40 409.00 19.60 + 119.45 342.00 18.50 + 119.50 307.00 17.10 + 119.55 296.00 17.20 + 119.60 231.00 14.90 + 119.65 246.00 15.80 + 119.70 220.00 14.50 + 119.75 255.00 16.10 + 119.80 214.00 14.40 + 119.85 247.00 15.90 + 119.90 238.00 15.20 + 119.95 218.00 15.00 + 120.00 222.00 14.70 + 120.05 218.00 15.00 + 120.10 253.00 15.80 + 120.15 197.00 14.30 + 120.20 190.00 13.60 + 120.25 221.00 15.10 + 120.30 204.00 14.20 + 120.35 206.00 14.60 + 120.40 189.00 13.60 + 120.45 231.00 15.40 + 120.50 190.00 13.60 + 120.55 191.00 13.90 + 120.60 211.00 14.30 + 120.65 204.00 14.30 + 120.70 200.00 13.90 + 120.75 199.00 14.10 + 120.80 190.00 13.50 + 120.85 195.00 13.90 + 120.90 179.00 13.00 + 120.95 189.00 13.60 + 121.00 190.00 13.30 + 121.05 195.00 13.80 + 121.10 193.00 13.40 + 121.15 173.00 12.80 + 121.20 183.00 13.00 + 121.25 181.00 13.10 + 121.30 203.00 13.50 + 121.35 177.00 12.90 + 121.40 201.00 13.40 + 121.45 179.00 12.90 + 121.50 179.00 12.60 + 121.55 194.00 13.40 + 121.60 158.00 11.90 + 121.65 195.00 13.40 + 121.70 201.00 13.40 + 121.75 192.00 13.40 + 121.80 189.00 13.00 + 121.85 186.00 13.10 + 121.90 170.00 12.30 + 121.95 166.00 12.40 + 122.00 185.00 12.80 + 122.05 197.00 13.60 + 122.10 177.00 12.60 + 122.15 198.00 13.60 + 122.20 174.00 12.50 + 122.25 171.00 12.60 + 122.30 190.00 13.00 + 122.35 214.00 14.20 + 122.40 189.00 13.00 + 122.45 174.00 12.80 + 122.50 171.00 12.40 + 122.55 163.00 12.40 + 122.60 174.00 12.40 + 122.65 177.00 12.80 + 122.70 180.00 12.60 + 122.75 186.00 13.10 + 122.80 190.00 13.00 + 122.85 170.00 12.60 + 122.90 175.00 12.50 + 122.95 194.00 13.40 + 123.00 175.00 12.50 + 123.05 194.00 13.40 + 123.10 189.00 12.90 + 123.15 222.00 14.30 + 123.20 178.00 12.50 + 123.25 158.00 12.10 + 123.30 191.00 13.00 + 123.35 184.00 13.00 + 123.40 190.00 12.90 + 123.45 183.00 13.00 + 123.50 178.00 12.50 + 123.55 204.00 13.70 + 123.60 192.00 13.00 + 123.65 200.00 13.50 + 123.70 182.00 12.60 + 123.75 171.00 12.50 + 123.80 186.00 12.70 + 123.85 197.00 13.40 + 123.90 174.00 12.30 + 123.95 167.00 12.30 + 124.00 178.00 12.40 + 124.05 198.00 13.40 + 124.10 205.00 13.30 + 124.15 216.00 14.00 + 124.20 200.00 13.20 + 124.25 204.00 13.60 + 124.30 190.00 12.80 + 124.35 188.00 13.10 + 124.40 191.00 12.90 + 124.45 186.00 13.00 + 124.50 175.00 12.30 + 124.55 175.00 12.60 + 124.60 174.00 12.30 + 124.65 194.00 13.30 + 124.70 181.00 12.50 + 124.75 161.00 12.10 + 124.80 186.00 12.70 + 124.85 200.00 13.50 + 124.90 168.00 12.10 + 124.95 177.00 12.70 + 125.00 188.00 12.80 + 125.05 177.00 12.70 + 125.10 163.00 11.90 + 125.15 175.00 12.70 + 125.20 188.00 12.80 + 125.25 176.00 12.80 + 125.30 172.00 12.30 + 125.35 172.00 12.60 + 125.40 181.00 12.70 + 125.45 186.00 13.20 + 125.50 181.00 12.70 + 125.55 193.00 13.40 + 125.60 177.00 12.60 + 125.65 176.00 12.90 + 125.70 194.00 13.20 + 125.75 179.00 13.00 + 125.80 147.00 11.50 + 125.85 186.00 13.30 + 125.90 182.00 12.90 + 125.95 165.00 12.70 + 126.00 164.00 12.30 + 126.05 199.00 13.90 + 126.10 167.00 12.40 + 126.15 184.00 13.40 + 126.20 203.00 13.80 + 126.25 190.00 13.70 + 126.30 182.00 13.10 + 126.35 180.00 13.40 + 126.40 179.00 13.00 + 126.45 179.00 13.40 + 126.50 170.00 12.70 + 126.55 176.00 13.30 + 126.60 178.00 13.10 + 126.65 185.00 13.70 + 126.70 193.00 13.60 + 126.75 192.00 14.00 + 126.80 198.00 13.80 + 126.85 195.00 14.00 + 126.90 165.00 12.60 + 126.95 189.00 13.80 + 127.00 175.00 13.00 + 127.05 176.00 13.30 + 127.10 184.00 13.30 + 127.15 179.00 13.40 + 127.20 187.00 13.40 + 127.25 176.00 13.20 + 127.30 191.00 13.50 + 127.35 194.00 13.90 + 127.40 177.00 12.90 + 127.45 177.00 13.20 + 127.50 180.00 13.00 + 127.55 158.00 12.40 + 127.60 193.00 13.40 + 127.65 177.00 13.10 + 127.70 185.00 13.10 + 127.75 178.00 13.10 + 127.80 184.00 13.00 + 127.85 188.00 13.40 + 127.90 182.00 12.90 + 127.95 190.00 13.50 + 128.00 191.00 13.20 + 128.05 165.00 12.50 + 128.10 174.00 12.50 + 128.15 158.00 12.20 + 128.20 197.00 13.30 + 128.25 183.00 13.10 + 128.30 196.00 13.30 + 128.35 166.00 12.50 + 128.40 218.00 14.00 + 128.45 206.00 13.80 + 128.50 184.00 12.80 + 128.55 176.00 12.70 + 128.60 198.00 13.20 + 128.65 215.00 14.10 + 128.70 179.00 12.60 + 128.75 192.00 13.30 + 128.80 201.00 13.30 + 128.85 221.00 14.20 + 128.90 227.00 14.10 + 128.95 229.00 14.40 + 129.00 254.00 14.90 + 129.05 256.00 15.30 + 129.10 272.00 15.40 + 129.15 239.00 14.80 + 129.20 228.00 14.10 + 129.25 255.00 15.20 + 129.30 213.00 13.60 + 129.35 203.00 13.60 + 129.40 228.00 14.10 + 129.45 220.00 14.10 + 129.50 185.00 12.60 + 129.55 192.00 13.20 + 129.60 187.00 12.70 + 129.65 182.00 12.80 + 129.70 209.00 13.40 + 129.75 173.00 12.50 + 129.80 202.00 13.20 + 129.85 178.00 12.70 + 129.90 189.00 12.80 + 129.95 177.00 12.60 + 130.00 177.00 12.30 + 130.05 190.00 13.10 + 130.10 178.00 12.40 + 130.15 177.00 12.60 + 130.20 164.00 11.90 + 130.25 185.00 12.90 + 130.30 153.00 11.40 + 130.35 174.00 12.50 + 130.40 197.00 13.00 + 130.45 192.00 13.10 + 130.50 174.00 12.20 + 130.55 177.00 12.60 + 130.60 172.00 12.10 + 130.65 173.00 12.50 + 130.70 178.00 12.40 + 130.75 180.00 12.80 + 130.80 203.00 13.20 + 130.85 192.00 13.20 + 130.90 184.00 12.60 + 130.95 197.00 13.30 + 131.00 169.00 12.10 + 131.05 187.00 13.00 + 131.10 175.00 12.30 + 131.15 177.00 12.60 + 131.20 199.00 13.10 + 131.25 180.00 12.80 + 131.30 203.00 13.20 + 131.35 175.00 12.60 + 131.40 183.00 12.50 + 131.45 192.00 13.20 + 131.50 174.00 12.30 + 131.55 180.00 12.80 + 131.60 179.00 12.50 + 131.65 191.00 13.20 + 131.70 182.00 12.60 + 131.75 174.00 12.60 + 131.80 191.00 12.90 + 131.85 195.00 13.40 + 131.90 171.00 12.30 + 131.95 198.00 13.60 + 132.00 193.00 13.10 + 132.05 175.00 12.80 + 132.10 207.00 13.60 + 132.15 189.00 13.40 + 132.20 174.00 12.50 + 132.25 196.00 13.70 + 132.30 175.00 12.60 + 132.35 196.00 13.80 + 132.40 183.00 13.00 + 132.45 198.00 13.80 + 132.50 196.00 13.40 + 132.55 169.00 12.90 + 132.60 189.00 13.30 + 132.65 171.00 13.00 + 132.70 193.00 13.50 + 132.75 170.00 13.00 + 132.80 175.00 12.90 + 132.85 166.00 12.90 + 132.90 188.00 13.40 + 132.95 186.00 13.70 + 133.00 165.00 12.60 + 133.05 201.00 14.20 + 133.10 182.00 13.20 + 133.15 151.00 12.40 + 133.20 156.00 12.20 + 133.25 187.00 13.70 + 133.30 153.00 12.10 + 133.35 193.00 14.00 + 133.40 200.00 13.90 + 133.45 165.00 12.90 + 133.50 172.00 12.90 + 133.55 162.00 12.70 + 133.60 165.00 12.50 + 133.65 218.00 14.70 + 133.70 197.00 13.60 + 133.75 206.00 14.20 + 133.80 186.00 13.20 + 133.85 162.00 12.50 + 133.90 176.00 12.80 + 133.95 174.00 12.90 + 134.00 196.00 13.40 + 134.05 174.00 12.90 + 134.10 177.00 12.70 + 134.15 183.00 13.10 + 134.20 184.00 12.90 + 134.25 185.00 13.10 + 134.30 200.00 13.40 + 134.35 175.00 12.70 + 134.40 190.00 13.00 + 134.45 195.00 13.40 + 134.50 192.00 13.00 + 134.55 171.00 12.50 + 134.60 194.00 13.00 + 134.65 190.00 13.10 + 134.70 165.00 12.00 + 134.75 192.00 13.20 + 134.80 160.00 11.70 + 134.85 192.00 13.10 + 134.90 181.00 12.50 + 134.95 208.00 13.70 + 135.00 179.00 12.40 + 135.05 172.00 12.40 + 135.10 183.00 12.50 + 135.15 187.00 12.90 + 135.20 185.00 12.50 + 135.25 182.00 12.70 + 135.30 184.00 12.50 + 135.35 163.00 11.90 + 135.40 201.00 13.00 + 135.45 189.00 12.80 + 135.50 204.00 13.10 + 135.55 178.00 12.50 + 135.60 178.00 12.20 + 135.65 193.00 13.00 + 135.70 215.00 13.40 + 135.75 203.00 13.30 + 135.80 216.00 13.40 + 135.85 165.00 12.10 + 135.90 196.00 12.80 + 135.95 178.00 12.50 + 136.00 170.00 11.90 + 136.05 173.00 12.40 + 136.10 188.00 12.60 + 136.15 176.00 12.50 + 136.20 186.00 12.50 + 136.25 189.00 12.90 + 136.30 166.00 11.80 + 136.35 177.00 12.50 + 136.40 169.00 11.90 + 136.45 171.00 12.30 + 136.50 194.00 12.80 + 136.55 187.00 12.90 + 136.60 162.00 11.70 + 136.65 160.00 11.90 + 136.70 183.00 12.40 + 136.75 150.00 11.50 + 136.80 180.00 12.40 + 136.85 194.00 13.20 + 136.90 185.00 12.60 + 136.95 158.00 11.90 + 137.00 193.00 12.90 + 137.05 165.00 12.20 + 137.10 178.00 12.30 + 137.15 183.00 12.90 + 137.20 180.00 12.40 + 137.25 176.00 12.70 + 137.30 183.00 12.60 + 137.35 189.00 13.20 + 137.40 180.00 12.50 + 137.45 160.00 12.20 + 137.50 202.00 13.30 + 137.55 201.00 13.60 + 137.60 173.00 12.30 + 137.65 176.00 12.80 + 137.70 195.00 13.10 + 137.75 197.00 13.50 + 137.80 186.00 12.80 + 137.85 183.00 13.00 + 137.90 175.00 12.40 + 137.95 178.00 12.80 + 138.00 190.00 12.90 + 138.05 174.00 12.70 + 138.10 163.00 12.00 + 138.15 190.00 13.30 + 138.20 169.00 12.20 + 138.25 198.00 13.60 + 138.30 199.00 13.30 + 138.35 184.00 13.10 + 138.40 216.00 13.90 + 138.45 183.00 13.10 + 138.50 200.00 13.40 + 138.55 186.00 13.30 + 138.60 177.00 12.70 + 138.65 186.00 13.40 + 138.70 193.00 13.30 + 138.75 200.00 14.00 + 138.80 180.00 12.90 + 138.85 178.00 13.20 + 138.90 198.00 13.60 + 138.95 236.00 15.30 + 139.00 203.00 13.80 + 139.05 207.00 14.30 + 139.10 190.00 13.40 + 139.15 171.00 13.10 + 139.20 203.00 13.90 + 139.25 203.00 14.20 + 139.30 198.00 13.70 + 139.35 200.00 14.20 + 139.40 187.00 13.30 + 139.45 214.00 14.70 + 139.50 198.00 13.70 + 139.55 220.00 14.80 + 139.60 196.00 13.70 + 139.65 239.00 15.50 + 139.70 212.00 14.20 + 139.75 219.00 14.80 + 139.80 248.00 15.40 + 139.85 220.00 14.80 + 139.90 241.00 15.10 + 139.95 245.00 15.50 + 140.00 269.00 15.90 + 140.05 294.00 17.00 + 140.10 323.00 17.40 + 140.15 302.00 17.20 + 140.20 312.00 17.10 + 140.25 371.00 18.90 + 140.30 420.00 19.70 + 140.35 516.00 22.30 + 140.40 596.00 23.40 + 140.45 644.00 24.70 + 140.50 711.00 25.40 + 140.55 833.00 28.10 + 140.60 895.00 28.40 + 140.65 1010.00 30.70 + 140.70 1058.00 30.80 + 140.75 1183.00 33.10 + 140.80 1278.00 33.70 + 140.85 1298.00 34.60 + 140.90 1419.00 35.40 + 140.95 1381.00 35.60 + 141.00 1299.00 33.80 + 141.05 1371.00 35.40 + 141.10 1273.00 33.30 + 141.15 1131.00 32.10 + 141.20 992.00 29.40 + 141.25 918.00 28.90 + 141.30 832.00 26.90 + 141.35 655.00 24.50 + 141.40 629.00 23.50 + 141.45 522.00 21.90 + 141.50 472.00 20.30 + 141.55 409.00 19.30 + 141.60 371.00 18.00 + 141.65 325.00 17.30 + 141.70 306.00 16.30 + 141.75 270.00 15.70 + 141.80 238.00 14.40 + 141.85 231.00 14.50 + 141.90 232.00 14.20 + 141.95 223.00 14.30 + 142.00 221.00 13.90 + 142.05 244.00 14.90 + 142.10 228.00 14.10 + 142.15 212.00 13.90 + 142.20 226.00 14.00 + 142.25 197.00 13.40 + 142.30 204.00 13.30 + 142.35 189.00 13.10 + 142.40 201.00 13.20 + 142.45 226.00 14.30 + 142.50 210.00 13.50 + 142.55 213.00 13.90 + 142.60 202.00 13.30 + 142.65 206.00 13.70 + 142.70 189.00 12.80 + 142.75 213.00 13.90 + 142.80 193.00 12.90 + 142.85 206.00 13.70 + 142.90 204.00 13.30 + 142.95 188.00 13.10 + 143.00 221.00 13.80 + 143.05 203.00 13.60 + 143.10 192.00 12.90 + 143.15 197.00 13.40 + 143.20 187.00 12.70 + 143.25 206.00 13.70 + 143.30 197.00 13.10 + 143.35 182.00 12.80 + 143.40 186.00 12.70 + 143.45 228.00 14.40 + 143.50 201.00 13.20 + 143.55 176.00 12.60 + 143.60 193.00 12.90 + 143.65 200.00 13.50 + 143.70 189.00 12.80 + 143.75 198.00 13.40 + 143.80 188.00 12.80 + 143.85 169.00 12.40 + 143.90 183.00 12.60 + 143.95 198.00 13.40 + 144.00 156.00 11.60 + 144.05 172.00 12.50 + 144.10 190.00 12.80 + 144.15 166.00 12.30 + 144.20 163.00 11.90 + 144.25 184.00 13.00 + 144.30 182.00 12.60 + 144.35 173.00 12.60 + 144.40 182.00 12.60 + 144.45 183.00 13.00 + 144.50 186.00 12.80 + 144.55 195.00 13.40 + 144.60 204.00 13.40 + 144.65 179.00 13.00 + 144.70 192.00 13.10 + 144.75 213.00 14.10 + 144.80 187.00 12.90 + 144.85 194.00 13.50 + 144.90 185.00 12.90 + 144.95 183.00 13.20 + 145.00 192.00 13.20 + 145.05 201.00 13.90 + 145.10 211.00 13.90 + 145.15 163.00 12.50 + 145.20 202.00 13.60 + 145.25 197.00 13.80 + 145.30 183.00 13.00 + 145.35 177.00 13.20 + 145.40 188.00 13.20 + 145.45 158.00 12.50 + 145.50 184.00 13.20 + 145.55 162.00 12.70 + 145.60 169.00 12.70 + 145.65 171.00 13.10 + 145.70 188.00 13.40 + 145.75 167.00 13.00 + 145.80 182.00 13.20 + 145.85 197.00 14.10 + 145.90 179.00 13.10 + 145.95 172.00 13.20 + 146.00 163.00 12.50 + 146.05 172.00 13.10 + 146.10 178.00 13.00 + 146.15 179.00 13.40 + 146.20 171.00 12.80 + 146.25 189.00 13.70 + 146.30 190.00 13.40 + 146.35 185.00 13.50 + 146.40 169.00 12.60 + 146.45 165.00 12.70 + 146.50 185.00 13.10 + 146.55 158.00 12.40 + 146.60 190.00 13.30 + 146.65 165.00 12.60 + 146.70 173.00 12.60 + 146.75 206.00 14.10 + 146.80 170.00 12.50 + 146.85 193.00 13.60 + 146.90 167.00 12.30 + 146.95 182.00 13.10 + 147.00 191.00 13.20 + 147.05 175.00 12.90 + 147.10 184.00 12.90 + 147.15 163.00 12.40 + 147.20 174.00 12.50 + 147.25 176.00 12.90 + 147.30 163.00 12.10 + 147.35 174.00 12.80 + 147.40 155.00 11.80 + 147.45 153.00 12.00 + 147.50 190.00 13.00 + 147.55 190.00 13.30 + 147.60 169.00 12.30 + 147.65 189.00 13.30 + 147.70 177.00 12.60 + 147.75 167.00 12.50 + 147.80 163.00 12.00 + 147.85 196.00 13.50 + 147.90 175.00 12.50 + 147.95 146.00 11.60 + 148.00 170.00 12.20 + 148.05 179.00 12.90 + 148.10 182.00 12.60 + 148.15 175.00 12.70 + 148.20 171.00 12.30 + 148.25 201.00 13.60 + 148.30 181.00 12.60 + 148.35 152.00 11.80 + 148.40 194.00 13.00 + 148.45 160.00 12.20 + 148.50 179.00 12.50 + 148.55 181.00 12.90 + 148.60 175.00 12.40 + 148.65 178.00 12.80 + 148.70 186.00 12.80 + 148.75 195.00 13.40 + 148.80 166.00 12.00 + 148.85 184.00 13.00 + 148.90 215.00 13.70 + 148.95 183.00 12.90 + 149.00 184.00 12.60 + 149.05 174.00 12.60 + 149.10 175.00 12.30 + 149.15 171.00 12.50 + 149.20 166.00 12.00 + 149.25 188.00 13.00 + 149.30 165.00 11.90 + 149.35 184.00 12.90 + 149.40 181.00 12.60 + 149.45 174.00 12.60 + 149.50 178.00 12.40 + 149.55 191.00 13.20 + 149.60 181.00 12.50 + 149.65 174.00 12.60 + 149.70 180.00 12.50 + 149.75 177.00 12.70 + 149.80 164.00 11.90 + 149.85 203.00 13.60 + 149.90 178.00 12.40 + 149.95 162.00 12.20 + 150.00 192.00 12.90 + 150.05 164.00 12.20 + 150.10 151.00 11.40 + 150.15 170.00 12.50 + 150.20 166.00 12.00 + 150.25 194.00 13.30 + 150.30 168.00 12.10 + 150.35 173.00 12.50 + 150.40 175.00 12.30 + 150.45 193.00 13.30 + 150.50 177.00 12.40 + 150.55 185.00 13.00 + 150.60 178.00 12.40 + 150.65 178.00 12.70 + 150.70 179.00 12.50 + 150.75 180.00 12.90 + 150.80 169.00 12.20 + 150.85 177.00 12.80 + 150.90 159.00 11.80 + 150.95 167.00 12.40 + 151.00 180.00 12.60 + 151.05 158.00 12.20 + 151.10 173.00 12.40 + 151.15 172.00 12.70 + 151.20 163.00 12.10 + 151.25 168.00 12.60 + 151.30 166.00 12.20 + 151.35 179.00 13.00 + 151.40 159.00 12.00 + 151.45 173.00 12.90 + 151.50 170.00 12.40 + 151.55 151.00 12.10 + 151.60 174.00 12.60 + 151.65 182.00 13.20 + 151.70 182.00 12.90 + 151.75 172.00 12.90 + 151.80 157.00 12.00 + 151.85 156.00 12.30 + 151.90 168.00 12.50 + 151.95 194.00 13.80 + 152.00 177.00 12.80 + 152.05 170.00 12.90 + 152.10 169.00 12.60 + 152.15 173.00 13.00 + 152.20 161.00 12.30 + 152.25 169.00 12.90 + 152.30 167.00 12.50 + 152.35 194.00 13.80 + 152.40 150.00 11.90 + 152.45 159.00 12.50 + 152.50 181.00 13.10 + 152.55 180.00 13.30 + 152.60 193.00 13.40 + 152.65 192.00 13.70 + 152.70 152.00 11.90 + 152.75 159.00 12.50 + 152.80 147.00 11.70 + 152.85 190.00 13.60 + 152.90 167.00 12.40 + 152.95 193.00 13.60 + 153.00 159.00 12.10 + 153.05 195.00 13.60 + 153.10 172.00 12.50 + 153.15 148.00 11.90 + 153.20 174.00 12.50 + 153.25 194.00 13.50 + 153.30 159.00 11.90 + 153.35 190.00 13.30 + 153.40 181.00 12.70 + 153.45 159.00 12.10 + 153.50 168.00 12.20 + 153.55 175.00 12.70 + 153.60 184.00 12.70 + 153.65 200.00 13.50 + 153.70 161.00 11.90 + 153.75 162.00 12.10 + 153.80 152.00 11.50 + 153.85 177.00 12.70 + 153.90 173.00 12.20 + 153.95 184.00 12.90 + 154.00 169.00 12.10 + 154.05 163.00 12.10 + 154.10 177.00 12.40 + 154.15 171.00 12.50 + 154.20 180.00 12.50 + 154.25 201.00 13.40 + 154.30 206.00 13.30 + 154.35 181.00 12.70 + 154.40 170.00 12.00 + 154.45 177.00 12.60 + 154.50 196.00 12.90 + 154.55 201.00 13.40 + 154.60 161.00 11.70 + 154.65 179.00 12.60 + 154.70 185.00 12.50 + 154.75 167.00 12.10 + 154.80 162.00 11.70 + 154.85 178.00 12.60 + 154.90 203.00 13.10 + 154.95 193.00 13.10 + 155.00 164.00 11.70 + 155.05 191.00 13.00 + 155.10 173.00 12.10 + 155.15 165.00 12.00 + 155.20 178.00 12.20 + 155.25 196.00 13.20 + 155.30 188.00 12.50 + 155.35 183.00 12.70 + 155.40 188.00 12.60 + 155.45 166.00 12.10 + 155.50 189.00 12.60 + 155.55 175.00 12.40 + 155.60 173.00 12.00 + 155.65 201.00 13.30 + 155.70 177.00 12.20 + 155.75 202.00 13.30 + 155.80 169.00 11.90 + 155.85 198.00 13.20 + 155.90 191.00 12.70 + 155.95 207.00 13.50 + 156.00 226.00 13.80 + 156.05 184.00 12.80 + 156.10 218.00 13.50 + 156.15 215.00 13.80 + 156.20 239.00 14.20 + 156.25 292.00 16.10 + 156.30 251.00 14.60 + 156.35 255.00 15.10 + 156.40 244.00 14.40 + 156.45 259.00 15.20 + 156.50 260.00 14.90 + 156.55 294.00 16.30 + 156.60 303.00 16.10 + 156.65 282.00 15.90 + 156.70 312.00 16.40 + 156.75 317.00 16.90 + 156.80 342.00 17.20 + 156.85 338.00 17.50 + 156.90 351.00 17.40 + 156.95 359.00 18.10 + 157.00 394.00 18.50 + 157.05 316.00 17.00 + 157.10 379.00 18.20 + 157.15 359.00 18.20 + 157.20 404.00 18.80 + 157.25 381.00 18.80 + 157.30 359.00 17.80 + 157.35 364.00 18.40 + 157.40 347.00 17.60 + 157.45 328.00 17.50 + 157.50 344.00 17.50 + 157.55 320.00 17.40 + 157.60 333.00 17.40 + 157.65 319.00 17.50 + 157.70 289.00 16.30 + 157.75 284.00 16.60 + 157.80 283.00 16.20 + 157.85 305.00 17.20 + 157.90 281.00 16.20 + 157.95 244.00 15.60 + 158.00 253.00 15.40 + 158.05 245.00 15.60 + 158.10 210.00 14.10 + 158.15 201.00 14.20 + 158.20 226.00 14.70 + 158.25 206.00 14.40 + 158.30 218.00 14.40 + 158.35 201.00 14.30 + 158.40 226.00 14.70 + 158.45 201.00 14.20 + 158.50 210.00 14.20 + 158.55 207.00 14.40 + 158.60 176.00 13.00 + 158.65 172.00 13.10 + 158.70 173.00 12.90 + 158.75 195.00 13.90 + 158.80 168.00 12.70 + 158.85 177.00 13.30 + 158.90 186.00 13.30 + 158.95 170.00 13.00 + 159.00 190.00 13.40 + 159.05 175.00 13.10 + 159.10 191.00 13.40 + 159.15 164.00 12.70 + 159.20 189.00 13.30 + 159.25 176.00 13.10 + 159.30 175.00 12.80 + 159.35 162.00 12.50 + 159.40 184.00 13.00 + 159.45 163.00 12.50 + 159.50 179.00 12.80 + 159.55 194.00 13.60 + 159.60 165.00 12.20 + 159.65 180.00 13.00 + 159.70 174.00 12.60 + 159.75 180.00 13.00 + 159.80 179.00 12.60 + 159.85 189.00 13.30 + 159.90 185.00 12.90 + 159.95 151.00 11.80 + 160.00 176.00 12.50 + 160.05 165.00 12.30 + 160.10 163.00 12.00 + 160.15 184.00 13.00 + 160.20 157.00 11.70 + 160.25 166.00 12.30 + 160.30 160.00 11.80 + 160.35 183.00 12.90 + 160.40 167.00 12.10 + 160.45 180.00 12.80 + 160.50 183.00 12.60 + 160.55 163.00 12.20 + 160.60 178.00 12.40 + 160.65 179.00 12.80 + 160.70 161.00 11.80 + 160.75 168.00 12.40 + 160.80 173.00 12.30 + 160.85 202.00 13.60 + 160.90 145.00 11.30 + 160.95 162.00 12.20 + 161.00 180.00 12.50 + 161.05 186.00 13.10 + 161.10 166.00 12.10 + 161.15 177.00 12.70 + 161.20 194.00 13.10 + 161.25 177.00 12.80 + 161.30 178.00 12.50 + 161.35 190.00 13.20 + 161.40 160.00 11.90 + 161.45 173.00 12.60 + 161.50 191.00 12.90 + 161.55 161.00 12.20 + 161.60 181.00 12.60 + 161.65 152.00 11.80 + 161.70 195.00 13.00 + 161.75 171.00 12.50 + 161.80 188.00 12.80 + 161.85 164.00 12.20 + 161.90 185.00 12.70 + 161.95 173.00 12.60 + 162.00 162.00 11.90 + 162.05 166.00 12.30 + 162.10 201.00 13.20 + 162.15 173.00 12.60 + 162.20 172.00 12.20 + 162.25 181.00 12.80 + 162.30 159.00 11.70 + 162.35 185.00 13.00 + 162.40 170.00 12.10 + 162.45 200.00 13.50 + 162.50 196.00 13.00 + 162.55 176.00 12.60 + 162.60 197.00 13.00 + 162.65 176.00 12.60 + 162.70 181.00 12.50 + 162.75 176.00 12.60 + 162.80 184.00 12.60 + 162.85 179.00 12.70 + 162.90 165.00 11.90 + 162.95 146.00 11.50 + 163.00 165.00 11.90 + 163.05 151.00 11.70 + 163.10 164.00 11.90 + 163.15 179.00 12.80 + 163.20 186.00 12.70 + 163.25 182.00 13.00 + 163.30 168.00 12.20 + 163.35 193.00 13.50 + 163.40 177.00 12.60 + 163.45 180.00 13.10 + 163.50 171.00 12.40 + 163.55 207.00 14.10 + 163.60 180.00 12.90 + 163.65 159.00 12.40 + 163.70 165.00 12.40 + 163.75 178.00 13.20 + 163.80 150.00 11.80 + 163.85 177.00 13.20 + 163.90 174.00 12.80 + 163.95 180.00 13.40 + 164.00 184.00 13.20 + 164.05 166.00 13.60 + 164.10 182.00 13.90 + 164.15 188.00 15.60 + 164.20 186.00 15.00 + 164.25 152.00 15.20 + 164.30 200.00 16.90 + 164.35 177.00 18.00 + 164.40 202.00 18.50 + 164.45 178.00 20.40 + 164.50 153.00 18.00 + 164.55 197.00 25.30 + 164.60 153.00 20.70 + 164.65 173.00 30.10 + 164.70 187.00 27.90 + 164.75 175.00 38.20 + 164.80 168.00 30.90 + 164.85 109.00 41.20 diff --git a/src/easydiffraction/analysis/minimizers/minimizer_lmfit.py b/src/easydiffraction/analysis/minimizers/minimizer_lmfit.py index d440f58c..5d3ba35a 100644 --- a/src/easydiffraction/analysis/minimizers/minimizer_lmfit.py +++ b/src/easydiffraction/analysis/minimizers/minimizer_lmfit.py @@ -9,14 +9,18 @@ class LmfitMinimizer(MinimizerBase): Minimizer using the lmfit package. """ - def __init__(self, name='lmfit', method=DEFAULT_METHOD, max_iterations=DEFAULT_MAX_ITERATIONS): - super().__init__(name=name, method=method, max_iterations=max_iterations) + def __init__(self, name='lmfit', + method=DEFAULT_METHOD, + max_iterations=DEFAULT_MAX_ITERATIONS): + super().__init__(name=name, + method=method, + max_iterations=max_iterations) def _prepare_solver_args(self, parameters): engine_parameters = lmfit.Parameters() for param in parameters: engine_parameters.add( - name=param.id, + name=param.uid, value=param.value, vary=param.free, min=param.min, @@ -41,7 +45,7 @@ def _sync_result_to_parameters(self, parameters, raw_result): param_values = raw_result # fallback if params attribute is not present for param in parameters: - param_result = param_values.get(param.id) + param_result = param_values.get(param.uid) if param_result is not None: param.value = param_result.value param.error = getattr(param_result, 'stderr', None) diff --git a/src/easydiffraction/core/collection.py b/src/easydiffraction/core/collection.py index e578d4ec..71c056e1 100644 --- a/src/easydiffraction/core/collection.py +++ b/src/easydiffraction/core/collection.py @@ -123,7 +123,8 @@ def get_free_params(self): if getattr(attr, 'is_parameter', False) and attr.free: # Set the block_name for the parameter to generate its unique id attr.block_name = item_id - attr.id = attr._generate_unique_id() + # TODO: Refactor this method. Check if we need generate unique id here + #attr.uid = attr._generate_unique_id() free_params.append(attr) return free_params diff --git a/src/easydiffraction/core/component.py b/src/easydiffraction/core/component.py index 2bd52128..deb4001d 100644 --- a/src/easydiffraction/core/component.py +++ b/src/easydiffraction/core/component.py @@ -98,6 +98,15 @@ def as_cif(self): class IterableComponentRow(ABC): + # TODO: Implement this in all derived classes + #@property + #@abstractmethod + #def id(self): + # """ + # Must be implemented in subclasses to return the ID of the row. + # ID is used to access the row in the iterable component. + # """ + # pass def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self._ordered_attrs = [] diff --git a/src/easydiffraction/core/parameter.py b/src/easydiffraction/core/parameter.py index 7bee0ae2..08d85c16 100644 --- a/src/easydiffraction/core/parameter.py +++ b/src/easydiffraction/core/parameter.py @@ -1,3 +1,5 @@ +import random +import string from easydiffraction.utils.formatting import warning @@ -22,9 +24,28 @@ def __init__(self, self.units = units self.is_parameter = False # Differentiates from Parameter class self.block_name = block_name - self.id = self._generate_unique_id() + self.uid = self._generate_unique_id() def _generate_unique_id(self): + # TODO: Instead of generating a random string, we can use the + # name of the parameter and the block name to create a unique id. + # E.g.: + # - "block-id__category-name__parameter-name": "lbco__cell__length_a" + # - "block-id__category-name__row-id__parameter-name": "lbco__atom_site__ba__fract_x" + length = 12 + letters = random.choices(string.ascii_lowercase, k=length) + uid = ''.join(letters) + return uid + # self.uid is needed to make a list of free parameters for the + # minimization engine, and then to be able to update the sample + # models and experiments with the new values. + # TODO: It is used in collection.py to generate a unique id for + # the parameter. Check if it is needed here. When called from + # __init__, block_name is not set yet? + # TODO: Check if it works for the iterable components, such as + # atoms_sites, background, etc. + # TODO: Check if we need to replace "-" with "_" + # TODO: Check if we need make it lowercase raw_name = self.cif_name sanitized = ( raw_name.replace("[", "_") @@ -33,7 +54,7 @@ def _generate_unique_id(self): .replace("'", "") ) if self.block_name: - return f"{self.block_name}_{sanitized}" + sanitized = f"{self.block_name}_{sanitized}" return sanitized @property diff --git a/src/easydiffraction/experiments/iterable_components/background.py b/src/easydiffraction/experiments/iterable_components/background.py index 01e936a2..b5cd6628 100644 --- a/src/easydiffraction/experiments/iterable_components/background.py +++ b/src/easydiffraction/experiments/iterable_components/background.py @@ -31,6 +31,12 @@ def __init__(self, x: float, y: float): self._locked = True # Lock further attribute additions + # TODO: Temporary workaround for getting str type for id.value + # TODO: Switch to str type for id? + @property + def id(self): + return Descriptor(f"{self.x.value}", cif_name="blablabla") + class PolynomialTerm(IterableComponentRow): def __init__(self, order, coef): @@ -49,6 +55,12 @@ def __init__(self, order, coef): self._locked = True # Lock further attribute additions + # TODO: Temporary workaround for getting str type for id.value + # TODO: Switch to str type for id? + @property + def id(self): + return Descriptor(f"{self.order.value}", cif_name="blablabla") + class BackgroundBase(IterableComponent): @property diff --git a/src/easydiffraction/sample_models/iterable_components/atom_sites.py b/src/easydiffraction/sample_models/iterable_components/atom_sites.py index 8bf48e6b..846f0b2e 100644 --- a/src/easydiffraction/sample_models/iterable_components/atom_sites.py +++ b/src/easydiffraction/sample_models/iterable_components/atom_sites.py @@ -52,6 +52,11 @@ def __init__(self, cif_name="B_iso_or_equiv" ) + # TODO: Switch to str type for id? + @property + def id(self): + return self.label + class AtomSites(IterableComponent): """ diff --git a/tests/functional_test/fitting/test_fitting.py b/tests/functional_test/fitting/test_joint-fit.py similarity index 100% rename from tests/functional_test/fitting/test_fitting.py rename to tests/functional_test/fitting/test_joint-fit.py diff --git a/tests/functional_test/fitting/test_single-fit.py b/tests/functional_test/fitting/test_single-fit.py new file mode 100644 index 00000000..f410fe75 --- /dev/null +++ b/tests/functional_test/fitting/test_single-fit.py @@ -0,0 +1,103 @@ +from numpy.testing import assert_almost_equal + +from easydiffraction import ( + Project, + SampleModel, + Experiment +) + + +def test_single_fit_neutron_pd_cwl_lbco() -> None: + # Create and configure sample model + model = SampleModel("lbco") + model.space_group.name = "P m -3 m" + model.cell.length_a = 3.88 + model.cell.length_b = 3.88 + model.cell.length_c = 3.88 + model.atom_sites.add("La", "La", 0, 0, 0, occupancy=0.5, b_iso=0.1) + model.atom_sites.add("Ba", "Ba", 0, 0, 0, occupancy=0.5, b_iso=0.1) + model.atom_sites.add("Co", "Co", 0.5, 0.5, 0.5, b_iso=0.1) + model.atom_sites.add("O", "O", 0, 0.5, 0.5, b_iso=0.1) + model.show_as_cif() + + # Create and configure experiment + expt = Experiment("npd", data_path="examples/data/hrpt.xye") + expt.instrument.setup_wavelength = 1.494 + expt.instrument.calib_twotheta_offset = 0 + expt.peak.broad_gauss_u = 0.1 + expt.peak.broad_gauss_v = -0.1 + expt.peak.broad_gauss_w = 0.2 + expt.peak.broad_lorentz_x = 0 + expt.peak.broad_lorentz_y = 0 + expt.linked_phases.add("lbco", scale=5.0) + expt.background.add(x=10, y=170) + expt.background.add(x=165, y=170) + #expt.background.add(x=10, y=168.345) + #expt.background.add(x=165, y=175.688) + expt.show_as_cif() + + # Create project and add sample model and experiments + project = Project() + project.sample_models.add(model) + project.experiments.add(expt) + + # Set calculator, minimizer and refinement strategy + project.analysis.current_calculator = "cryspy" + #project.analysis.current_calculator = "crysfml" + project.analysis.current_minimizer = "lmfit (leastsq)" + + # Compare measured and calculated patterns + project.analysis.show_meas_vs_calc_chart('npd', 65, 68) + + # ------------ 1st fitting ------------ + + # Define free parameters + model.cell.length_a.free = True + expt.linked_phases["lbco"].scale.free = True + expt.instrument.calib_twotheta_offset.free = True + expt.background["10"].y.free = True + expt.background["165"].y.free = True + project.analysis.show_free_params() + + # Start fitting + project.analysis.fit() + project.analysis.show_meas_vs_calc_chart('npd', 65, 68) + + # Compare fit quality + assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 5.79, decimal=1) + + # ------------ 2nd fitting ------------ + + # Define free parameters + expt.peak.broad_gauss_u.free = True + expt.peak.broad_gauss_v.free = True + expt.peak.broad_gauss_w.free = True + expt.peak.broad_lorentz_y.free = True + project.analysis.show_free_params() + + # Start fitting + project.analysis.fit() + project.analysis.show_meas_vs_calc_chart('npd', 65, 68) + + # Compare fit quality + assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 4.41, decimal=1) + + # ------------ 3rd fitting ------------ + + # Define free parameters + model.atom_sites['La'].b_iso.free = True + model.atom_sites['Ba'].b_iso.free = True + model.atom_sites['Co'].b_iso.free = True + model.atom_sites['O'].b_iso.free = True + project.analysis.show_free_params() + + # Start fitting + project.analysis.fit() + project.analysis.show_meas_vs_calc_chart('npd', 65, 68, show_residual=True) + project.analysis.show_meas_vs_calc_chart('npd', 38, 41, show_residual=True) + + # Compare fit quality + assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 1.3, decimal=1) + +if __name__ == '__main__': + single_fit_neutron_pd_cwl_lbco() From 3c85d42f3f85829ca123129a39f6a3b8e8f922a7 Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Wed, 2 Apr 2025 23:13:18 +0200 Subject: [PATCH 02/17] Updates CI to run functional tests only --- .github/workflows/ci-testing.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci-testing.yaml b/.github/workflows/ci-testing.yaml index 2eb12bfc..0c4b400c 100644 --- a/.github/workflows/ci-testing.yaml +++ b/.github/workflows/ci-testing.yaml @@ -51,6 +51,6 @@ jobs: shell: bash run: python -m pip install -r requirements.txt - - name: Run Python tests + - name: Run Python functional tests shell: bash - run: PYTHONPATH=$(pwd)/src python -m pytest tests/ --color=yes + run: PYTHONPATH=$(pwd)/src python -m pytest tests/functional_tests/ --color=yes From c2794d12e464e112a7ee58356f6b39275e8c7351 Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Wed, 2 Apr 2025 23:22:46 +0200 Subject: [PATCH 03/17] Removes unused `__init__` and `__setattr__` methods --- .../experiments/standard_components/peak.py | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/src/easydiffraction/experiments/standard_components/peak.py b/src/easydiffraction/experiments/standard_components/peak.py index a0ec855d..9ad5ebc0 100644 --- a/src/easydiffraction/experiments/standard_components/peak.py +++ b/src/easydiffraction/experiments/standard_components/peak.py @@ -151,26 +151,13 @@ def _add_ikeda_carpenter_asymmetry(self): description="Ikeda-Carpenter asymmetry parameter α₁" ) + # --- Base peak class --- class PeakBase(StandardComponent): @property def cif_category_name(self): return "_peak" - def __init__(self): - super().__init__() - - def __setattr__(self, name, value): - if hasattr(self, "_locked") and self._locked: - if not hasattr(self, name): - raise AttributeError(f"Cannot add new attribute '{name}' to locked instance of '{self.__class__.__name__}'") - - current = getattr(self, name, None) - if isinstance(current, (Descriptor, Parameter)): - current.value = value - else: - super().__setattr__(name, value) - # --- Derived peak classes --- class ConstantWavelengthPseudoVoigt(PeakBase, From a9c776a96e571e0065e489e9316399deee316717 Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Wed, 2 Apr 2025 23:23:02 +0200 Subject: [PATCH 04/17] Adds space group setting --- .../sample_models/standard_components/space_group.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/easydiffraction/sample_models/standard_components/space_group.py b/src/easydiffraction/sample_models/standard_components/space_group.py index 1c1866c6..acdc751e 100644 --- a/src/easydiffraction/sample_models/standard_components/space_group.py +++ b/src/easydiffraction/sample_models/standard_components/space_group.py @@ -10,11 +10,15 @@ class SpaceGroup(StandardComponent): def cif_category_name(self): return "_space_group" - def __init__(self, name="P1"): + def __init__(self, name="P1", setting=None): super().__init__() self.name = Descriptor( value=name, cif_name="name_H-M_alt" ) + self.setting = Descriptor( + value=setting, + cif_name="IT_coordinate_system_code" + ) From 065172d6e811bcb482c4197091c3253ef546b46b Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Wed, 2 Apr 2025 23:23:41 +0200 Subject: [PATCH 05/17] Adds time-of-flight support using Cryspy calculator --- .../analysis/calculators/calculator_cryspy.py | 99 ++++++++++++++----- 1 file changed, 77 insertions(+), 22 deletions(-) diff --git a/src/easydiffraction/analysis/calculators/calculator_cryspy.py b/src/easydiffraction/analysis/calculators/calculator_cryspy.py index e4baaebf..f14da374 100644 --- a/src/easydiffraction/analysis/calculators/calculator_cryspy.py +++ b/src/easydiffraction/analysis/calculators/calculator_cryspy.py @@ -34,7 +34,8 @@ def _calculate_single_model_pattern(self, sample_model, experiment): cryspy_obj.add_items(cryspy_sample_model_obj.items) # Add single experiment to cryspy_obj - cryspy_experiment_cif = self._convert_experiment_to_cif(experiment, linked_phase=sample_model) + cryspy_experiment_cif = self._convert_experiment_to_cif(experiment, + linked_phase=sample_model) cryspy_experiment_obj = str_to_globaln(cryspy_experiment_cif) cryspy_obj.add_items(cryspy_experiment_obj.items) @@ -54,15 +55,23 @@ def _calculate_single_model_pattern(self, sample_model, experiment): flag_calc_analytical_derivatives=False ) + # Get cryspy block name based on experiment type + if experiment.type.beam_mode.value == "constant wavelength": + cryspy_block_name = f"pd_{experiment.id}" + elif experiment.type.beam_mode.value == "time-of-flight": + cryspy_block_name = f"tof_{experiment.id}" + else: + print(f"[CryspyCalculator] Error: Unknown beam mode {experiment.type.beam_mode.value}") + return [] + # Extract calculated pattern from cryspy_in_out_dict - cryspy_block_name = f"pd_{experiment.id}" try: signal_plus = cryspy_in_out_dict[cryspy_block_name]['signal_plus'] signal_minus = cryspy_in_out_dict[cryspy_block_name]['signal_minus'] y_calc_total = signal_plus + signal_minus except KeyError: print(f"[CryspyCalculator] Error: No calculated data for {cryspy_block_name}") - y_calc_total = [] + return [] return y_calc_total @@ -85,16 +94,45 @@ def _convert_experiment_to_cif(self, experiment, linked_phase): # Instrument category if instrument: - cif_lines.append(f"_setup_wavelength {instrument.setup_wavelength.value}") - cif_lines.append(f"_setup_offset_2theta {instrument.calib_twotheta_offset.value}") + instrument_mapping = { + # Constant wavelength + "setup_wavelength": "_setup_wavelength", + "calib_twotheta_offset": "_setup_offset_2theta", + # Time-of-flight + "setup_twotheta_bank": "_tof_parameters_2theta_bank", + "calib_d_to_tof_offset": "_tof_parameters_Zero", + "calib_d_to_tof_linear": "_tof_parameters_Dtt1", + "calib_d_to_tof_quad": "_tof_parameters_dtt2", + } + for local_attr_name, engine_key_name in instrument_mapping.items(): + if hasattr(instrument, local_attr_name): + attr_value = getattr(instrument, local_attr_name).value + cif_lines.append(f"{engine_key_name} {attr_value}") # Peak category if peak: - cif_lines.append(f"_pd_instr_resolution_U {peak.broad_gauss_u.value}") - cif_lines.append(f"_pd_instr_resolution_V {peak.broad_gauss_v.value}") - cif_lines.append(f"_pd_instr_resolution_W {peak.broad_gauss_w.value}") - cif_lines.append(f"_pd_instr_resolution_X {peak.broad_lorentz_x.value}") - cif_lines.append(f"_pd_instr_resolution_Y {peak.broad_lorentz_y.value}") + peak_mapping = { + # Constant wavelength + "broad_gauss_u": "_pd_instr_resolution_U", + "broad_gauss_v": "_pd_instr_resolution_V", + "broad_gauss_w": "_pd_instr_resolution_W", + "broad_lorentz_x": "_pd_instr_resolution_X", + "broad_lorentz_y": "_pd_instr_resolution_Y", + # Time-of-flight + "broad_gauss_sigma_0": "_tof_profile_sigma0", + "broad_gauss_sigma_1": "_tof_profile_sigma1", + "broad_gauss_sigma_2": "_tof_profile_sigma2", + "broad_mix_beta_0": "_tof_profile_beta0", + "broad_mix_beta_1": "_tof_profile_beta1", + "asym_alpha_0": "_tof_profile_alpha0", + "asym_alpha_1": "_tof_profile_alpha1", + } + if expt_type.beam_mode.value == "time-of-flight": + cif_lines.append(f"_tof_profile_peak_shape Gauss") + for local_attr_name, engine_key_name in peak_mapping.items(): + if hasattr(peak, local_attr_name): + attr_value = getattr(peak, local_attr_name).value + cif_lines.append(f"{engine_key_name} {attr_value}") # Linked phases category # Force single linked phase to be used, as we handle multiple phases @@ -104,28 +142,45 @@ def _convert_experiment_to_cif(self, experiment, linked_phase): cif_lines.append("_phase_scale") cif_lines.append(f"{linked_phase.model_id} 1.0") + # Experiment range category # Extract measurement range dynamically x_data = experiment.datastore.pattern.x two_theta_min = float(x_data.min()) two_theta_max = float(x_data.max()) - - cif_lines.append(f"_range_2theta_min {two_theta_min}") - cif_lines.append(f"_range_2theta_max {two_theta_max}\n") + if expt_type.beam_mode.value == "constant wavelength": + cif_lines.append(f"_range_2theta_min {two_theta_min}") + cif_lines.append(f"_range_2theta_max {two_theta_max}") + elif expt_type.beam_mode.value == "time-of-flight": + cif_lines.append(f"_range_time_min {two_theta_min}") + cif_lines.append(f"_range_time_max {two_theta_max}") # Background category # Force background to be zero, as we handle it independently of the # calculation engines - cif_lines.append("loop_") - cif_lines.append("_pd_background_2theta") - cif_lines.append("_pd_background_intensity") - cif_lines.append(f"{two_theta_min} 0.0") - cif_lines.append(f"{two_theta_max} 0.0") + if expt_type.beam_mode.value == "constant wavelength": + cif_lines.append("loop_") + cif_lines.append("_pd_background_2theta") + cif_lines.append("_pd_background_intensity") + cif_lines.append(f"{two_theta_min} 0.0") + cif_lines.append(f"{two_theta_max} 0.0") + elif expt_type.beam_mode.value == "time-of-flight": + cif_lines.append("loop_") + cif_lines.append("_tof_backgroundpoint_time") + cif_lines.append("_tof_backgroundpoint_intensity") + cif_lines.append(f"{two_theta_min} 0.0") + cif_lines.append(f"{two_theta_max} 0.0") # Measured data category - cif_lines.append("loop_") - cif_lines.append("_pd_meas_2theta") - cif_lines.append("_pd_meas_intensity") - cif_lines.append("_pd_meas_intensity_sigma") + if expt_type.beam_mode.value == "constant wavelength": + cif_lines.append("loop_") + cif_lines.append("_pd_meas_2theta") + cif_lines.append("_pd_meas_intensity") + cif_lines.append("_pd_meas_intensity_sigma") + elif expt_type.beam_mode.value == "time-of-flight": + cif_lines.append("loop_") + cif_lines.append("_tof_meas_time") + cif_lines.append("_tof_meas_intensity") + cif_lines.append("_tof_meas_intensity_sigma") y_data = experiment.datastore.pattern.meas sy_data = experiment.datastore.pattern.meas_su From dd5117b350c460d2f6fc81cc2024a0efa758218c Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Wed, 2 Apr 2025 23:25:33 +0200 Subject: [PATCH 06/17] Adds functional tests for single fits --- examples/data/sepd.xye | 5600 +++++++++++++++++ .../fitting/test_single-fit.py | 204 + 2 files changed, 5804 insertions(+) create mode 100644 examples/data/sepd.xye create mode 100644 tests/functional_tests/fitting/test_single-fit.py diff --git a/examples/data/sepd.xye b/examples/data/sepd.xye new file mode 100644 index 00000000..e2328beb --- /dev/null +++ b/examples/data/sepd.xye @@ -0,0 +1,5600 @@ +2000.0 213.8 3.3 +2005.0 213.8 3.3 +2010.0 210.1 3.3 +2015.0 213.3 3.3 +2020.0 211.9 3.3 +2025.0 212.8 3.3 +2030.0 208.3 3.3 +2035.0 214.4 3.3 +2040.0 217.0 3.3 +2045.0 220.6 3.4 +2050.0 216.2 3.3 +2055.0 214.3 3.3 +2060.0 218.5 3.4 +2065.0 217.8 3.4 +2070.0 214.5 3.3 +2075.0 214.9 3.3 +2080.0 215.1 3.3 +2085.0 220.2 3.4 +2090.0 221.8 3.4 +2095.0 220.5 3.4 +2100.0 224.8 3.4 +2105.0 227.5 3.5 +2110.0 216.7 3.4 +2115.0 213.3 3.4 +2120.0 215.6 3.4 +2125.0 224.9 3.4 +2130.0 226.4 3.5 +2135.0 235.6 3.5 +2140.0 218.7 3.4 +2145.0 220.7 3.4 +2150.0 225.7 3.5 +2155.0 221.0 3.4 +2160.0 215.9 3.4 +2165.0 216.0 3.4 +2170.0 218.5 3.4 +2175.0 226.7 3.5 +2180.0 226.1 3.5 +2185.0 229.0 3.5 +2190.0 220.4 3.4 +2195.0 219.7 3.4 +2200.0 224.6 3.5 +2205.0 216.0 3.4 +2210.0 221.4 3.5 +2215.0 214.5 3.4 +2220.0 209.0 3.4 +2225.0 220.7 3.5 +2230.0 215.0 3.4 +2235.0 216.3 3.4 +2240.0 207.5 3.4 +2245.0 206.8 3.4 +2250.0 216.7 3.5 +2255.0 202.1 3.3 +2260.0 208.9 3.4 +2265.0 216.0 3.5 +2270.0 210.7 3.4 +2275.0 206.2 3.4 +2280.0 225.4 3.5 +2285.0 222.2 3.5 +2290.0 219.0 3.5 +2295.0 217.0 3.5 +2300.0 216.1 3.5 +2305.0 208.8 3.4 +2310.0 223.2 3.5 +2315.0 216.5 3.5 +2320.0 221.3 3.5 +2325.0 216.1 3.5 +2330.0 209.5 3.4 +2335.0 218.1 3.5 +2340.0 245.6 3.7 +2345.0 244.2 3.7 +2350.0 241.4 3.7 +2355.0 259.1 3.8 +2360.0 232.9 3.6 +2365.0 227.8 3.6 +2370.0 226.8 3.6 +2375.0 230.4 3.6 +2380.0 224.0 3.6 +2385.0 226.3 3.6 +2390.0 218.9 3.6 +2395.0 214.4 3.5 +2400.0 216.1 3.5 +2405.0 218.6 3.6 +2410.0 228.0 3.6 +2415.0 221.5 3.6 +2420.0 236.4 3.7 +2425.0 223.8 3.6 +2430.0 214.3 3.5 +2435.0 212.4 3.5 +2440.0 236.3 3.7 +2445.0 229.4 3.7 +2450.0 216.4 3.6 +2455.0 236.0 3.7 +2460.0 228.8 3.7 +2465.0 220.3 3.6 +2470.0 215.2 3.6 +2475.0 215.3 3.6 +2480.0 221.5 3.6 +2485.0 215.9 3.6 +2490.0 247.2 3.8 +2495.0 252.4 3.9 +2500.0 223.3 3.7 +2505.0 219.3 3.6 +2510.0 213.1 3.6 +2515.0 235.9 3.8 +2520.0 228.2 3.7 +2525.0 209.0 3.6 +2530.0 217.8 3.6 +2535.0 205.4 3.5 +2540.0 208.3 3.6 +2545.0 207.1 3.5 +2550.0 219.5 3.7 +2555.0 257.3 4.0 +2560.0 243.2 3.9 +2565.0 232.1 3.8 +2570.0 270.4 4.1 +2575.0 257.0 4.0 +2580.0 218.6 3.7 +2585.0 212.7 3.6 +2590.0 209.4 3.6 +2595.0 231.1 3.8 +2600.0 233.1 3.8 +2605.0 220.4 3.7 +2610.0 205.6 3.6 +2615.0 205.0 3.6 +2620.0 200.0 3.5 +2625.0 199.7 3.5 +2630.0 200.1 3.5 +2635.0 197.0 3.5 +2640.0 213.2 3.7 +2645.0 212.0 3.7 +2650.0 204.6 3.6 +2655.0 213.4 3.7 +2660.0 223.5 3.8 +2665.0 206.0 3.6 +2670.0 203.4 3.6 +2675.0 204.3 3.6 +2680.0 202.3 3.6 +2685.0 237.1 3.9 +2690.0 253.6 4.0 +2695.0 229.2 3.8 +2700.0 221.1 3.8 +2705.0 260.0 4.1 +2710.0 242.1 4.0 +2715.0 221.9 3.8 +2720.0 214.0 3.7 +2725.0 212.8 3.7 +2730.0 211.6 3.7 +2735.0 249.5 4.0 +2740.0 251.7 4.1 +2745.0 226.2 3.9 +2750.0 234.5 3.9 +2755.0 307.1 4.5 +2760.0 284.1 4.3 +2765.0 237.4 4.0 +2770.0 221.3 3.8 +2775.0 221.7 3.8 +2780.0 216.5 3.8 +2785.0 233.3 3.9 +2790.0 248.6 4.1 +2795.0 223.2 3.9 +2800.0 212.5 3.8 +2805.0 223.2 3.9 +2810.0 239.4 4.0 +2815.0 218.4 3.8 +2820.0 203.6 3.7 +2825.0 205.0 3.7 +2830.0 201.5 3.7 +2835.0 206.2 3.7 +2840.0 236.5 4.0 +2845.0 266.1 4.3 +2850.0 235.3 4.0 +2855.0 217.4 3.9 +2860.0 262.3 4.2 +2865.0 326.7 4.7 +2870.0 255.4 4.2 +2875.0 223.3 3.9 +2880.0 218.3 3.9 +2885.0 201.4 3.7 +2890.0 200.4 3.7 +2895.0 209.0 3.8 +2900.0 264.3 4.3 +2905.0 248.2 4.2 +2910.0 218.4 3.9 +2915.0 205.8 3.8 +2920.0 207.5 3.8 +2925.0 206.7 3.8 +2930.0 202.8 3.8 +2935.0 197.1 3.7 +2940.0 192.9 3.7 +2945.0 192.2 3.7 +2950.0 188.6 3.7 +2955.0 192.8 3.7 +2960.0 211.1 3.9 +2965.0 219.2 4.0 +2970.0 198.2 3.8 +2975.0 194.0 3.8 +2980.0 205.1 3.9 +2985.0 264.1 4.4 +2990.0 253.2 4.3 +2995.0 219.6 4.0 +3000.0 200.5 3.8 +3005.0 197.4 3.8 +3010.0 191.2 3.8 +3015.0 194.6 3.8 +3020.0 190.5 3.8 +3025.0 266.0 4.4 +3030.0 294.6 4.7 +3035.0 241.3 4.2 +3040.0 216.7 4.0 +3045.0 202.3 3.9 +3050.0 222.1 4.1 +3055.0 244.1 4.3 +3060.0 216.2 4.0 +3065.0 203.6 3.9 +3070.0 201.3 3.9 +3075.0 196.0 3.9 +3080.0 196.2 3.9 +3085.0 190.7 3.8 +3090.0 199.8 3.9 +3095.0 280.0 4.6 +3100.0 313.2 4.9 +3105.0 250.5 4.4 +3110.0 227.4 4.2 +3115.0 209.2 4.0 +3120.0 222.8 4.1 +3125.0 297.9 4.8 +3130.0 277.9 4.6 +3135.0 227.6 4.2 +3140.0 208.0 4.0 +3145.0 201.1 4.0 +3150.0 193.2 3.9 +3155.0 189.0 3.8 +3160.0 187.4 3.8 +3165.0 182.4 3.8 +3170.0 208.8 4.1 +3175.0 212.6 4.1 +3180.0 203.9 4.0 +3185.0 189.5 3.9 +3190.0 186.8 3.9 +3195.0 190.7 3.9 +3200.0 230.1 4.3 +3205.0 244.8 4.4 +3210.0 226.3 4.3 +3215.0 204.9 4.1 +3220.0 196.7 4.0 +3225.0 189.3 3.9 +3230.0 187.3 3.9 +3235.0 193.4 4.0 +3240.0 192.2 4.0 +3245.0 199.1 4.0 +3250.0 259.8 4.6 +3255.0 334.0 5.2 +3260.0 284.9 4.8 +3265.0 226.9 4.3 +3270.0 203.4 4.1 +3275.0 201.0 4.1 +3280.0 240.9 4.5 +3285.0 389.1 5.7 +3290.0 382.5 5.6 +3295.0 261.6 4.7 +3300.0 224.2 4.3 +3305.0 210.3 4.2 +3310.0 206.5 4.2 +3315.0 197.3 4.1 +3320.0 190.9 4.0 +3325.0 188.6 4.0 +3330.0 188.7 4.0 +3335.0 209.7 4.2 +3340.0 267.4 4.8 +3345.0 264.1 4.7 +3350.0 218.0 4.3 +3355.0 200.1 4.1 +3360.0 195.7 4.1 +3365.0 193.3 4.1 +3370.0 203.8 4.2 +3375.0 271.5 4.8 +3380.0 280.8 4.9 +3385.0 229.9 4.5 +3390.0 199.1 4.1 +3395.0 195.0 4.1 +3400.0 188.9 4.1 +3405.0 185.3 4.0 +3410.0 187.3 4.0 +3415.0 179.2 3.9 +3420.0 180.1 4.0 +3425.0 190.5 4.1 +3430.0 211.5 4.3 +3435.0 305.2 5.2 +3440.0 313.1 5.3 +3445.0 241.7 4.6 +3450.0 202.9 4.2 +3455.0 201.9 4.2 +3460.0 195.7 4.2 +3465.0 192.7 4.1 +3470.0 277.4 5.0 +3475.0 387.0 5.9 +3480.0 317.1 5.3 +3485.0 236.8 4.6 +3490.0 212.9 4.4 +3495.0 198.3 4.2 +3500.0 192.7 4.2 +3505.0 188.6 4.1 +3510.0 180.1 4.0 +3515.0 187.2 4.1 +3520.0 180.1 4.0 +3525.0 178.3 4.0 +3530.0 179.4 4.0 +3535.0 274.8 5.0 +3540.0 442.3 6.4 +3545.0 383.1 5.9 +3550.0 275.5 5.0 +3555.0 222.3 4.5 +3560.0 200.5 4.3 +3565.0 187.8 4.2 +3570.0 179.6 4.1 +3575.0 198.2 4.3 +3580.0 227.5 4.6 +3585.0 227.4 4.6 +3590.0 197.8 4.3 +3595.0 185.8 4.2 +3600.0 179.8 4.1 +3605.0 173.9 4.0 +3610.0 170.3 4.0 +3615.0 167.9 4.0 +3620.0 166.6 4.0 +3625.0 161.1 3.9 +3630.0 160.6 3.9 +3635.0 161.0 3.9 +3640.0 169.9 4.0 +3645.0 178.0 4.1 +3650.0 236.4 4.7 +3655.0 313.8 5.5 +3660.0 255.7 4.9 +3665.0 209.4 4.5 +3670.0 189.1 4.3 +3675.0 183.0 4.2 +3680.0 177.8 4.1 +3685.0 176.5 4.1 +3690.0 196.1 4.3 +3695.0 322.6 5.6 +3700.0 452.4 6.6 +3705.0 358.6 5.9 +3710.0 258.8 5.0 +3715.0 224.3 4.7 +3720.0 198.0 4.4 +3725.0 196.3 4.4 +3730.0 180.6 4.2 +3735.0 172.6 4.1 +3740.0 172.4 4.1 +3745.0 169.3 4.1 +3750.0 179.0 4.2 +3755.0 171.2 4.1 +3760.0 172.3 4.1 +3765.0 167.1 4.1 +3770.0 174.0 4.2 +3775.0 257.3 5.1 +3780.0 337.1 5.8 +3785.0 264.5 5.1 +3790.0 212.7 4.6 +3795.0 197.3 4.4 +3800.0 179.8 4.2 +3805.0 175.5 4.2 +3810.0 185.0 4.3 +3815.0 171.8 4.2 +3820.0 158.9 4.0 +3825.0 166.8 4.1 +3830.0 173.2 4.2 +3835.0 176.7 4.2 +3840.0 174.9 4.2 +3845.0 165.9 4.1 +3850.0 165.9 4.1 +3855.0 168.5 4.1 +3860.0 173.8 4.2 +3865.0 168.9 4.1 +3870.0 172.5 4.2 +3875.0 169.5 4.2 +3880.0 167.2 4.1 +3885.0 179.8 4.3 +3890.0 173.0 4.2 +3895.0 171.3 4.2 +3900.0 170.0 4.2 +3905.0 180.0 4.3 +3910.0 215.9 4.7 +3915.0 375.6 6.2 +3920.0 446.9 6.8 +3925.0 338.4 5.9 +3930.0 249.9 5.1 +3935.0 216.7 4.7 +3940.0 195.8 4.5 +3945.0 191.2 4.5 +3950.0 182.3 4.4 +3955.0 176.7 4.3 +3960.0 183.7 4.4 +3965.0 231.9 4.9 +3970.0 501.1 7.3 +3975.0 778.7 9.1 +3980.0 596.7 7.9 +3985.0 383.4 6.4 +3990.0 283.9 5.5 +3995.0 240.9 5.0 +4000.0 221.4 4.8 +4005.0 201.9 4.6 +4010.0 196.7 4.6 +4015.0 185.7 4.4 +4020.0 179.8 4.4 +4025.0 185.2 4.4 +4030.0 161.5 4.2 +4035.0 165.2 4.2 +4040.0 173.0 4.3 +4045.0 167.5 4.2 +4050.0 167.5 4.2 +4055.0 163.6 4.2 +4060.0 162.3 4.2 +4065.0 203.3 4.7 +4070.0 381.5 6.4 +4075.0 505.4 7.4 +4080.0 386.5 6.4 +4085.0 281.4 5.5 +4090.0 233.8 5.0 +4095.0 210.8 4.8 +4100.0 195.0 4.6 +4105.0 184.2 4.5 +4110.0 176.4 4.4 +4115.0 180.7 4.4 +4120.0 176.3 4.4 +4125.0 176.1 4.4 +4130.0 235.1 5.1 +4135.0 377.9 6.4 +4140.0 386.7 6.5 +4145.0 294.7 5.7 +4150.0 229.4 5.0 +4155.0 204.8 4.7 +4160.0 189.2 4.5 +4165.0 187.7 4.5 +4170.0 171.1 4.3 +4175.0 175.7 4.4 +4180.0 169.8 4.3 +4185.0 162.9 4.2 +4190.0 175.8 4.4 +4195.0 161.7 4.2 +4200.0 162.2 4.2 +4205.0 166.0 4.3 +4210.0 157.0 4.2 +4215.0 154.9 4.1 +4220.0 163.4 4.3 +4225.0 159.6 4.2 +4230.0 160.0 4.2 +4235.0 171.7 4.4 +4240.0 188.6 4.6 +4245.0 327.3 6.0 +4250.0 434.5 7.0 +4255.0 357.0 6.3 +4260.0 265.5 5.4 +4265.0 212.7 4.9 +4270.0 200.0 4.7 +4275.0 180.4 4.5 +4280.0 176.3 4.4 +4285.0 175.8 4.4 +4290.0 157.0 4.2 +4295.0 159.0 4.2 +4300.0 165.2 4.3 +4305.0 162.6 4.3 +4310.0 176.2 4.4 +4315.0 266.7 5.5 +4320.0 437.0 7.0 +4325.0 429.9 7.0 +4330.0 295.7 5.8 +4335.0 239.1 5.2 +4340.0 202.8 4.8 +4345.0 180.4 4.5 +4350.0 179.0 4.5 +4355.0 171.2 4.4 +4360.0 161.7 4.3 +4365.0 165.4 4.3 +4370.0 156.6 4.2 +4375.0 160.0 4.3 +4380.0 162.1 4.3 +4385.0 147.9 4.1 +4390.0 158.9 4.2 +4395.0 151.0 4.1 +4400.0 162.5 4.3 +4405.0 150.5 4.1 +4410.0 153.1 4.2 +4415.0 148.4 4.1 +4420.0 159.8 4.3 +4425.0 165.6 4.3 +4430.0 167.1 4.4 +4435.0 166.0 4.4 +4440.0 214.5 5.0 +4445.0 453.8 7.2 +4450.0 648.9 8.6 +4455.0 551.9 8.0 +4460.0 380.4 6.6 +4465.0 284.7 5.7 +4470.0 231.5 5.2 +4475.0 210.0 4.9 +4480.0 191.9 4.7 +4485.0 190.3 4.7 +4490.0 177.7 4.5 +4495.0 168.4 4.4 +4500.0 162.1 4.3 +4505.0 162.0 4.3 +4510.0 162.1 4.3 +4515.0 162.1 4.3 +4520.0 170.1 4.4 +4525.0 245.9 5.3 +4530.0 452.3 7.2 +4535.0 512.4 7.7 +4540.0 372.4 6.6 +4545.0 275.5 5.6 +4550.0 222.0 5.1 +4555.0 205.7 4.9 +4560.0 187.2 4.7 +4565.0 180.2 4.6 +4570.0 176.6 4.5 +4575.0 162.2 4.3 +4580.0 152.7 4.2 +4585.0 156.7 4.3 +4590.0 156.4 4.3 +4595.0 154.4 4.2 +4600.0 148.9 4.2 +4605.0 151.0 4.2 +4610.0 157.3 4.3 +4615.0 155.1 4.3 +4620.0 147.4 4.2 +4625.0 147.6 4.2 +4630.0 153.4 4.2 +4635.0 145.8 4.1 +4640.0 148.0 4.2 +4645.0 156.1 4.3 +4650.0 154.0 4.3 +4655.0 152.7 4.2 +4660.0 156.1 4.3 +4665.0 147.2 4.2 +4670.0 188.7 4.7 +4675.0 345.8 6.4 +4680.0 585.9 8.3 +4685.0 607.8 8.5 +4690.0 414.3 7.0 +4695.0 309.2 6.0 +4700.0 247.3 5.4 +4705.0 218.5 5.1 +4710.0 196.1 4.8 +4715.0 181.1 4.6 +4720.0 177.2 4.6 +4725.0 156.1 4.3 +4730.0 164.1 4.4 +4735.0 148.0 4.2 +4740.0 154.6 4.3 +4745.0 151.3 4.2 +4750.0 157.2 4.3 +4755.0 154.0 4.3 +4760.0 155.7 4.3 +4765.0 175.8 4.6 +4770.0 314.3 6.1 +4775.0 680.9 9.0 +4780.0 812.7 9.8 +4785.0 614.2 8.5 +4790.0 412.7 7.0 +4795.0 317.0 6.1 +4800.0 257.1 5.5 +4805.0 220.8 5.1 +4810.0 202.4 4.9 +4815.0 188.9 4.7 +4820.0 186.1 4.7 +4825.0 179.5 4.6 +4830.0 157.5 4.3 +4835.0 159.9 4.4 +4840.0 159.2 4.4 +4845.0 155.1 4.3 +4850.0 148.0 4.2 +4855.0 151.0 4.2 +4860.0 146.0 4.2 +4865.0 149.9 4.2 +4870.0 143.4 4.1 +4875.0 147.4 4.2 +4880.0 152.3 4.3 +4885.0 150.0 4.2 +4890.0 148.4 4.2 +4895.0 147.4 4.2 +4900.0 146.6 4.2 +4905.0 140.0 4.1 +4910.0 148.6 4.2 +4915.0 141.0 4.1 +4920.0 140.2 4.1 +4925.0 152.0 4.3 +4930.0 143.9 4.1 +4935.0 141.3 4.1 +4940.0 155.6 4.3 +4945.0 203.6 4.9 +4950.0 334.4 6.3 +4955.0 397.3 6.9 +4960.0 327.1 6.3 +4965.0 254.5 5.5 +4970.0 221.9 5.2 +4975.0 197.5 4.9 +4980.0 168.8 4.5 +4985.0 174.3 4.6 +4990.0 173.5 4.6 +4995.0 158.5 4.4 +5000.0 156.7 4.3 +5005.0 156.8 4.3 +5010.0 148.9 4.2 +5015.0 158.0 4.4 +5020.0 145.7 4.2 +5025.0 154.9 4.3 +5030.0 143.2 4.1 +5035.0 148.4 4.2 +5040.0 150.0 4.2 +5045.0 155.4 4.3 +5050.0 142.2 4.1 +5055.0 158.0 4.4 +5060.0 192.7 4.8 +5065.0 252.4 5.5 +5070.0 296.7 6.0 +5075.0 259.9 5.6 +5080.0 220.0 5.1 +5085.0 194.2 4.8 +5090.0 174.5 4.6 +5095.0 171.5 4.5 +5100.0 160.3 4.4 +5105.0 160.0 4.4 +5110.0 167.5 4.5 +5115.0 151.6 4.3 +5120.0 157.4 4.4 +5125.0 150.9 4.3 +5130.0 150.9 4.3 +5135.0 145.5 4.2 +5140.0 147.3 4.2 +5145.0 149.0 4.2 +5150.0 149.1 4.2 +5155.0 151.2 4.3 +5160.0 146.6 4.2 +5165.0 152.0 4.3 +5170.0 141.3 4.1 +5175.0 141.9 4.1 +5180.0 145.3 4.2 +5185.0 146.8 4.2 +5190.0 137.9 4.1 +5195.0 146.6 4.2 +5200.0 146.0 4.2 +5205.0 146.5 4.2 +5210.0 145.9 4.2 +5215.0 141.2 4.1 +5220.0 144.6 4.2 +5225.0 142.7 4.1 +5230.0 146.3 4.2 +5235.0 144.2 4.2 +5240.0 151.5 4.3 +5245.0 147.7 4.2 +5250.0 152.5 4.3 +5255.0 154.1 4.3 +5260.0 161.9 4.4 +5265.0 175.9 4.6 +5270.0 363.7 6.6 +5275.0 814.7 9.9 +5280.0 1137.7 11.7 +5285.0 957.3 10.7 +5290.0 665.7 9.0 +5295.0 490.7 7.7 +5300.0 377.6 6.7 +5305.0 321.0 6.2 +5310.0 267.7 5.7 +5315.0 238.6 5.4 +5320.0 215.3 5.1 +5325.0 194.4 4.8 +5330.0 176.5 4.6 +5335.0 175.9 4.6 +5340.0 169.6 4.5 +5345.0 162.4 4.4 +5350.0 155.8 4.3 +5355.0 160.8 4.4 +5360.0 155.3 4.3 +5365.0 145.4 4.2 +5370.0 151.7 4.3 +5375.0 149.6 4.2 +5380.0 144.2 4.2 +5385.0 145.2 4.2 +5390.0 159.1 4.4 +5395.0 146.8 4.2 +5400.0 167.3 4.5 +5405.0 206.8 5.0 +5410.0 497.0 7.7 +5415.0 1148.0 11.7 +5420.0 1541.8 13.6 +5425.0 1333.8 12.7 +5430.0 924.9 10.5 +5435.0 673.8 9.0 +5440.0 501.6 7.8 +5445.0 411.6 7.0 +5450.0 345.3 6.4 +5455.0 281.8 5.8 +5460.0 252.4 5.5 +5465.0 220.3 5.1 +5470.0 205.8 5.0 +5475.0 185.0 4.7 +5480.0 180.5 4.7 +5485.0 168.2 4.5 +5490.0 159.4 4.4 +5495.0 153.9 4.3 +5500.0 160.2 4.4 +5505.0 152.0 4.3 +5510.0 151.3 4.3 +5515.0 152.1 4.3 +5520.0 152.8 4.3 +5525.0 139.7 4.1 +5530.0 147.5 4.2 +5535.0 143.8 4.1 +5540.0 142.3 4.1 +5545.0 149.8 4.2 +5550.0 144.8 4.2 +5555.0 141.8 4.1 +5560.0 141.4 4.1 +5565.0 143.9 4.1 +5570.0 143.8 4.1 +5575.0 141.3 4.1 +5580.0 139.3 4.1 +5585.0 139.5 4.1 +5590.0 143.8 4.1 +5595.0 143.6 4.1 +5600.0 144.5 4.2 +5605.0 139.8 4.1 +5610.0 128.7 3.9 +5615.0 138.2 4.1 +5620.0 140.1 4.1 +5625.0 136.4 4.0 +5630.0 138.3 4.1 +5635.0 142.0 4.1 +5640.0 142.6 4.1 +5645.0 137.5 4.0 +5650.0 147.2 4.2 +5655.0 144.0 4.1 +5660.0 155.1 4.3 +5665.0 198.5 4.9 +5670.0 381.0 6.7 +5675.0 737.6 9.4 +5680.0 982.4 10.8 +5685.0 852.7 10.1 +5690.0 629.4 8.7 +5695.0 459.6 7.4 +5700.0 375.4 6.7 +5705.0 316.3 6.1 +5710.0 268.7 5.7 +5715.0 245.9 5.4 +5720.0 218.5 5.1 +5725.0 204.8 4.9 +5730.0 180.0 4.6 +5735.0 180.6 4.6 +5740.0 171.4 4.5 +5745.0 160.9 4.4 +5750.0 163.2 4.4 +5755.0 161.6 4.4 +5760.0 148.9 4.2 +5765.0 150.1 4.2 +5770.0 148.3 4.2 +5775.0 145.1 4.2 +5780.0 145.0 4.2 +5785.0 141.4 4.1 +5790.0 146.5 4.2 +5795.0 141.4 4.1 +5800.0 135.4 4.0 +5805.0 139.0 4.1 +5810.0 138.8 4.1 +5815.0 135.1 4.0 +5820.0 134.3 4.0 +5825.0 137.7 4.0 +5830.0 143.1 4.1 +5835.0 139.4 4.1 +5840.0 153.8 4.3 +5845.0 232.3 5.3 +5850.0 355.1 6.5 +5855.0 439.6 7.2 +5860.0 409.8 7.0 +5865.0 322.7 6.2 +5870.0 267.0 5.6 +5875.0 233.8 5.3 +5880.0 203.2 4.9 +5885.0 181.5 4.6 +5890.0 182.3 4.7 +5895.0 172.2 4.5 +5900.0 156.7 4.3 +5905.0 149.0 4.2 +5910.0 150.2 4.2 +5915.0 148.3 4.2 +5920.0 146.5 4.2 +5925.0 133.6 4.0 +5930.0 140.5 4.1 +5935.0 131.4 4.0 +5940.0 130.6 3.9 +5945.0 142.0 4.1 +5950.0 131.1 3.9 +5955.0 135.9 4.0 +5960.0 138.1 4.1 +5965.0 142.7 4.1 +5970.0 136.0 4.0 +5975.0 127.7 3.9 +5980.0 130.3 3.9 +5985.0 128.3 3.9 +5990.0 136.3 4.0 +5995.0 132.9 4.0 +6000.0 137.2 4.0 +6005.0 134.0 4.0 +6010.0 133.7 4.0 +6015.0 133.1 4.0 +6020.0 132.9 4.0 +6025.0 140.3 4.1 +6030.0 131.7 4.0 +6035.0 137.4 4.0 +6040.0 134.1 4.0 +6045.0 134.6 4.0 +6050.0 132.8 4.0 +6055.0 140.9 4.1 +6060.0 143.9 4.1 +6065.0 133.2 4.0 +6070.0 135.6 4.0 +6075.0 137.8 4.0 +6080.0 139.6 4.1 +6085.0 133.1 4.0 +6090.0 136.4 4.0 +6095.0 139.2 4.1 +6100.0 130.1 3.9 +6105.0 129.4 3.9 +6110.0 131.9 4.0 +6115.0 144.3 4.1 +6120.0 137.5 4.0 +6125.0 135.3 4.0 +6130.0 140.0 4.1 +6135.0 137.7 4.0 +6140.0 135.7 4.0 +6145.0 135.8 4.0 +6150.0 135.0 4.0 +6155.0 139.2 4.1 +6160.0 139.0 4.1 +6165.0 148.8 4.2 +6170.0 162.4 4.4 +6175.0 272.7 5.7 +6180.0 478.6 7.5 +6185.0 651.9 8.8 +6190.0 662.0 8.9 +6195.0 539.9 8.0 +6200.0 421.9 7.1 +6205.0 344.5 6.4 +6210.0 302.2 6.0 +6215.0 264.8 5.6 +6220.0 228.6 5.2 +6225.0 217.1 5.1 +6230.0 192.4 4.8 +6235.0 176.5 4.6 +6240.0 172.5 4.5 +6245.0 158.1 4.3 +6250.0 156.4 4.3 +6255.0 151.8 4.2 +6260.0 144.7 4.1 +6265.0 139.7 4.1 +6270.0 155.7 4.3 +6275.0 139.1 4.1 +6280.0 138.5 4.1 +6285.0 137.9 4.0 +6290.0 131.2 3.9 +6295.0 131.5 4.0 +6300.0 128.5 3.9 +6305.0 129.6 3.9 +6310.0 138.0 4.1 +6315.0 134.6 4.0 +6320.0 127.8 3.9 +6325.0 139.0 4.1 +6330.0 128.3 3.9 +6335.0 136.8 4.0 +6340.0 128.0 3.9 +6345.0 130.5 3.9 +6350.0 141.8 4.1 +6355.0 130.4 3.9 +6360.0 137.4 4.0 +6365.0 137.4 4.0 +6370.0 135.8 4.0 +6375.0 143.6 4.1 +6380.0 134.6 4.0 +6385.0 147.7 4.2 +6390.0 158.0 4.3 +6395.0 177.4 4.6 +6400.0 289.0 5.9 +6405.0 637.6 8.7 +6410.0 1135.5 11.6 +6415.0 1368.3 12.8 +6420.0 1250.7 12.2 +6425.0 988.7 10.9 +6430.0 756.9 9.5 +6435.0 621.9 8.6 +6440.0 503.1 7.8 +6445.0 417.2 7.1 +6450.0 346.5 6.4 +6455.0 312.4 6.1 +6460.0 271.4 5.7 +6465.0 238.2 5.3 +6470.0 223.0 5.2 +6475.0 192.2 4.8 +6480.0 187.5 4.7 +6485.0 160.0 4.4 +6490.0 164.0 4.4 +6495.0 161.8 4.4 +6500.0 147.3 4.2 +6505.0 150.3 4.2 +6510.0 138.1 4.1 +6515.0 143.8 4.2 +6520.0 137.1 4.1 +6525.0 143.9 4.2 +6530.0 143.2 4.1 +6535.0 138.4 4.1 +6540.0 140.2 4.1 +6545.0 130.7 4.0 +6550.0 132.1 4.0 +6555.0 139.2 4.1 +6560.0 132.6 4.0 +6565.0 139.0 4.1 +6570.0 125.2 3.9 +6575.0 136.9 4.1 +6580.0 137.8 4.1 +6585.0 142.9 4.2 +6590.0 129.2 3.9 +6595.0 128.6 3.9 +6600.0 125.3 3.9 +6605.0 131.3 4.0 +6610.0 131.3 4.0 +6615.0 122.1 3.8 +6620.0 132.1 4.0 +6625.0 137.4 4.1 +6630.0 123.9 3.9 +6635.0 133.2 4.0 +6640.0 129.3 4.0 +6645.0 131.6 4.0 +6650.0 134.4 4.0 +6655.0 128.9 4.0 +6660.0 130.4 4.0 +6665.0 129.7 4.0 +6670.0 121.4 3.8 +6675.0 133.3 4.0 +6680.0 118.6 3.8 +6685.0 125.5 3.9 +6690.0 134.0 4.0 +6695.0 123.5 3.9 +6700.0 130.8 4.0 +6705.0 125.3 3.9 +6710.0 131.2 4.0 +6715.0 118.7 3.8 +6720.0 126.6 3.9 +6725.0 124.4 3.9 +6730.0 124.8 3.9 +6735.0 124.2 3.9 +6740.0 131.2 4.0 +6745.0 123.2 3.9 +6750.0 124.8 3.9 +6755.0 132.0 4.0 +6760.0 131.5 4.0 +6765.0 122.4 3.9 +6770.0 132.0 4.0 +6775.0 129.3 4.0 +6780.0 124.5 3.9 +6785.0 127.1 4.0 +6790.0 130.6 4.0 +6795.0 129.8 4.0 +6800.0 122.0 3.9 +6805.0 135.9 4.1 +6810.0 133.8 4.1 +6815.0 136.5 4.1 +6820.0 134.0 4.1 +6825.0 133.2 4.1 +6830.0 145.5 4.2 +6835.0 157.5 4.4 +6840.0 221.0 5.2 +6845.0 481.0 7.7 +6850.0 994.4 11.1 +6855.0 1504.4 13.6 +6860.0 1678.1 14.4 +6865.0 1479.6 13.5 +6870.0 1156.1 12.0 +6875.0 922.4 10.7 +6880.0 739.2 9.6 +6885.0 625.9 8.8 +6890.0 517.5 8.0 +6895.0 431.7 7.3 +6900.0 353.4 6.6 +6905.0 295.9 6.1 +6910.0 260.1 5.7 +6915.0 237.4 5.4 +6920.0 212.9 5.2 +6925.0 191.9 4.9 +6930.0 176.8 4.7 +6935.0 169.5 4.6 +6940.0 152.5 4.4 +6945.0 154.6 4.4 +6950.0 154.1 4.4 +6955.0 133.7 4.1 +6960.0 140.7 4.2 +6965.0 131.4 4.1 +6970.0 133.0 4.1 +6975.0 133.7 4.1 +6980.0 132.6 4.1 +6985.0 130.0 4.0 +6990.0 131.0 4.1 +6995.0 136.9 4.1 +7000.0 137.5 4.2 +7005.0 129.5 4.0 +7010.0 129.9 4.0 +7015.0 125.8 4.0 +7020.0 132.1 4.1 +7025.0 134.2 4.1 +7030.0 124.4 4.0 +7035.0 131.6 4.1 +7040.0 132.6 4.1 +7045.0 123.5 3.9 +7050.0 127.9 4.0 +7055.0 127.8 4.0 +7060.0 129.8 4.0 +7065.0 125.9 4.0 +7070.0 130.3 4.1 +7075.0 129.6 4.0 +7080.0 130.4 4.1 +7085.0 132.6 4.1 +7090.0 130.6 4.1 +7095.0 124.3 4.0 +7100.0 136.5 4.1 +7105.0 127.3 4.0 +7110.0 125.1 4.0 +7115.0 129.3 4.0 +7120.0 133.8 4.1 +7125.0 130.4 4.1 +7130.0 131.0 4.1 +7135.0 133.7 4.1 +7140.0 133.1 4.1 +7145.0 149.0 4.3 +7150.0 159.2 4.5 +7155.0 201.3 5.0 +7160.0 356.7 6.7 +7165.0 693.0 9.4 +7170.0 972.6 11.1 +7175.0 1045.9 11.5 +7180.0 933.3 10.9 +7185.0 751.5 9.7 +7190.0 629.8 8.9 +7195.0 525.0 8.1 +7200.0 423.8 7.3 +7205.0 363.6 6.8 +7210.0 315.4 6.3 +7215.0 274.6 5.9 +7220.0 235.3 5.5 +7225.0 224.2 5.3 +7230.0 195.3 5.0 +7235.0 192.8 4.9 +7240.0 180.6 4.8 +7245.0 162.7 4.5 +7250.0 153.6 4.4 +7255.0 144.1 4.3 +7260.0 146.7 4.3 +7265.0 142.5 4.2 +7270.0 141.0 4.2 +7275.0 143.5 4.3 +7280.0 140.6 4.2 +7285.0 139.2 4.2 +7290.0 126.4 4.0 +7295.0 138.7 4.2 +7300.0 137.1 4.2 +7305.0 118.9 3.9 +7310.0 134.9 4.1 +7315.0 130.7 4.1 +7320.0 126.2 4.0 +7325.0 125.3 4.0 +7330.0 133.8 4.1 +7335.0 128.5 4.0 +7340.0 125.7 4.0 +7345.0 128.6 4.0 +7350.0 121.4 3.9 +7355.0 128.0 4.0 +7360.0 125.3 4.0 +7365.0 130.1 4.1 +7370.0 130.7 4.1 +7375.0 128.1 4.0 +7380.0 129.1 4.1 +7385.0 128.6 4.1 +7390.0 125.0 4.0 +7395.0 130.2 4.1 +7400.0 124.4 4.0 +7405.0 126.7 4.0 +7410.0 119.5 3.9 +7415.0 123.6 4.0 +7420.0 121.4 3.9 +7425.0 127.7 4.0 +7430.0 126.5 4.0 +7435.0 123.0 4.0 +7440.0 123.1 4.0 +7445.0 124.4 4.0 +7450.0 123.4 4.0 +7455.0 126.3 4.0 +7460.0 127.5 4.1 +7465.0 120.3 3.9 +7470.0 126.7 4.0 +7475.0 122.6 4.0 +7480.0 133.5 4.2 +7485.0 121.3 4.0 +7490.0 125.8 4.0 +7495.0 127.3 4.1 +7500.0 125.5 4.0 +7505.0 120.6 3.9 +7510.0 123.7 4.0 +7515.0 122.3 4.0 +7520.0 119.8 3.9 +7525.0 121.5 4.0 +7530.0 124.3 4.0 +7535.0 120.0 4.0 +7540.0 120.4 4.0 +7545.0 116.3 3.9 +7550.0 122.3 4.0 +7555.0 120.2 4.0 +7560.0 123.6 4.0 +7565.0 122.9 4.0 +7570.0 115.3 3.9 +7575.0 126.2 4.1 +7580.0 125.8 4.1 +7585.0 122.9 4.0 +7590.0 130.4 4.1 +7595.0 124.9 4.1 +7600.0 124.8 4.1 +7605.0 127.8 4.1 +7610.0 118.6 4.0 +7615.0 132.3 4.2 +7620.0 126.5 4.1 +7625.0 115.8 3.9 +7630.0 129.1 4.1 +7635.0 126.0 4.1 +7640.0 121.0 4.0 +7645.0 127.0 4.1 +7650.0 121.9 4.0 +7655.0 127.2 4.1 +7660.0 116.4 3.9 +7665.0 120.1 4.0 +7670.0 121.3 4.0 +7675.0 122.9 4.1 +7680.0 128.5 4.1 +7685.0 125.8 4.1 +7690.0 115.6 3.9 +7695.0 114.8 3.9 +7700.0 121.1 4.0 +7705.0 125.3 4.1 +7710.0 128.0 4.1 +7715.0 119.9 4.0 +7720.0 123.8 4.1 +7725.0 130.2 4.2 +7730.0 127.1 4.1 +7735.0 120.9 4.0 +7740.0 124.8 4.1 +7745.0 124.7 4.1 +7750.0 131.9 4.2 +7755.0 126.7 4.1 +7760.0 129.8 4.2 +7765.0 128.3 4.2 +7770.0 141.9 4.4 +7775.0 139.0 4.4 +7780.0 146.0 4.5 +7785.0 173.0 4.9 +7790.0 245.2 5.8 +7795.0 482.6 8.1 +7800.0 971.6 11.5 +7805.0 1503.9 14.4 +7810.0 1736.8 15.5 +7815.0 1636.6 15.0 +7820.0 1415.7 14.0 +7825.0 1148.6 12.6 +7830.0 938.5 11.4 +7835.0 777.5 10.4 +7840.0 642.2 9.4 +7845.0 533.0 8.6 +7850.0 448.1 7.9 +7855.0 374.8 7.2 +7860.0 311.3 6.6 +7865.0 279.9 6.2 +7870.0 243.5 5.8 +7875.0 225.7 5.6 +7880.0 203.9 5.3 +7885.0 186.3 5.1 +7890.0 175.9 5.0 +7895.0 163.0 4.8 +7900.0 148.7 4.6 +7905.0 152.5 4.6 +7910.0 148.5 4.6 +7915.0 146.0 4.5 +7920.0 143.8 4.5 +7925.0 140.2 4.4 +7930.0 141.6 4.5 +7935.0 134.7 4.4 +7940.0 138.9 4.4 +7945.0 130.0 4.3 +7950.0 126.9 4.2 +7955.0 130.4 4.3 +7960.0 130.9 4.3 +7965.0 134.1 4.4 +7970.0 132.4 4.3 +7975.0 129.8 4.3 +7980.0 130.4 4.3 +7985.0 125.7 4.2 +7990.0 126.8 4.3 +7995.0 135.9 4.4 +8000.0 133.2 4.4 +8005.0 127.5 4.3 +8010.0 135.6 4.4 +8015.0 123.3 4.2 +8020.0 135.6 4.4 +8025.0 135.6 4.4 +8030.0 126.8 4.3 +8035.0 131.1 4.3 +8040.0 126.2 4.3 +8045.0 131.4 4.4 +8050.0 125.4 4.3 +8055.0 130.9 4.4 +8060.0 126.0 4.3 +8065.0 135.2 4.4 +8070.0 126.3 4.3 +8075.0 128.0 4.3 +8080.0 125.6 4.3 +8085.0 129.8 4.3 +8090.0 123.4 4.2 +8095.0 120.5 4.2 +8100.0 125.1 4.3 +8105.0 127.0 4.3 +8110.0 131.3 4.4 +8115.0 123.6 4.3 +8120.0 130.0 4.4 +8125.0 131.9 4.4 +8130.0 123.7 4.3 +8135.0 123.6 4.3 +8140.0 132.5 4.4 +8145.0 122.9 4.2 +8150.0 132.0 4.4 +8155.0 125.9 4.3 +8160.0 127.3 4.3 +8165.0 133.9 4.4 +8170.0 131.1 4.4 +8175.0 123.4 4.3 +8180.0 129.6 4.4 +8185.0 132.4 4.4 +8190.0 135.5 4.5 +8195.0 133.4 4.4 +8200.0 127.5 4.3 +8205.0 139.0 4.5 +8210.0 142.9 4.6 +8215.0 137.8 4.5 +8220.0 155.0 4.8 +8225.0 151.7 4.7 +8230.0 153.6 4.8 +8235.0 153.4 4.8 +8240.0 160.1 4.9 +8245.0 165.2 5.0 +8250.0 170.4 5.0 +8255.0 182.5 5.2 +8260.0 250.3 6.1 +8265.0 477.6 8.5 +8270.0 1056.5 12.6 +8275.0 1920.9 17.0 +8280.0 2772.5 20.4 +8285.0 3102.0 21.6 +8290.0 2898.2 20.9 +8295.0 2478.8 19.3 +8300.0 2080.7 17.7 +8305.0 1657.0 15.8 +8310.0 1379.7 14.4 +8315.0 1118.0 13.0 +8320.0 899.4 11.7 +8325.0 727.2 10.5 +8330.0 609.5 9.6 +8335.0 530.7 9.0 +8340.0 434.5 8.1 +8345.0 366.9 7.5 +8350.0 318.5 7.0 +8355.0 282.6 6.6 +8360.0 240.9 6.1 +8365.0 216.6 5.7 +8370.0 208.3 5.6 +8375.0 199.2 5.5 +8380.0 178.0 5.2 +8385.0 169.8 5.1 +8390.0 164.1 5.0 +8395.0 157.2 4.9 +8400.0 137.3 4.6 +8405.0 151.7 4.8 +8410.0 141.7 4.7 +8415.0 145.7 4.7 +8420.0 135.6 4.6 +8425.0 132.7 4.5 +8430.0 134.1 4.5 +8435.0 135.2 4.6 +8440.0 122.0 4.3 +8445.0 141.8 4.7 +8450.0 129.3 4.5 +8455.0 134.0 4.5 +8460.0 132.0 4.5 +8465.0 128.1 4.4 +8470.0 128.5 4.5 +8475.0 134.8 4.6 +8480.0 120.0 4.3 +8485.0 134.4 4.6 +8490.0 122.9 4.4 +8495.0 130.9 4.5 +8500.0 123.3 4.4 +8505.0 123.6 4.4 +8510.0 126.9 4.4 +8515.0 126.6 4.4 +8520.0 125.6 4.4 +8525.0 126.3 4.4 +8530.0 123.0 4.4 +8535.0 126.0 4.4 +8540.0 116.0 4.3 +8545.0 124.8 4.4 +8550.0 128.1 4.5 +8555.0 122.5 4.4 +8560.0 121.7 4.4 +8565.0 122.4 4.4 +8570.0 124.0 4.4 +8575.0 112.5 4.2 +8580.0 120.7 4.4 +8585.0 121.7 4.4 +8590.0 127.0 4.5 +8595.0 118.1 4.3 +8600.0 135.3 4.6 +8605.0 121.1 4.4 +8610.0 128.7 4.5 +8615.0 125.5 4.5 +8620.0 129.4 4.5 +8625.0 121.2 4.4 +8630.0 130.8 4.6 +8635.0 115.1 4.3 +8640.0 122.3 4.4 +8645.0 126.5 4.5 +8650.0 119.3 4.4 +8655.0 121.0 4.4 +8660.0 123.8 4.4 +8665.0 116.5 4.3 +8670.0 124.2 4.4 +8675.0 119.3 4.4 +8680.0 117.9 4.3 +8685.0 114.9 4.3 +8690.0 117.1 4.3 +8695.0 115.1 4.3 +8700.0 128.4 4.5 +8705.0 118.9 4.4 +8710.0 122.9 4.4 +8715.0 123.2 4.5 +8720.0 119.0 4.4 +8725.0 122.7 4.4 +8730.0 135.9 4.7 +8735.0 116.9 4.3 +8740.0 110.1 4.2 +8745.0 122.4 4.4 +8750.0 126.8 4.5 +8755.0 125.1 4.5 +8760.0 123.5 4.5 +8765.0 124.2 4.5 +8770.0 120.7 4.4 +8775.0 120.0 4.4 +8780.0 134.6 4.7 +8785.0 127.0 4.6 +8790.0 124.3 4.5 +8795.0 127.0 4.6 +8800.0 116.3 4.4 +8805.0 127.2 4.6 +8810.0 117.2 4.4 +8815.0 129.2 4.6 +8820.0 125.6 4.5 +8825.0 133.0 4.7 +8830.0 124.9 4.5 +8835.0 122.0 4.5 +8840.0 130.0 4.6 +8845.0 132.0 4.7 +8850.0 127.7 4.6 +8855.0 124.1 4.5 +8860.0 132.9 4.7 +8865.0 126.5 4.6 +8870.0 121.0 4.5 +8875.0 122.3 4.5 +8880.0 124.4 4.6 +8885.0 113.2 4.3 +8890.0 131.4 4.7 +8895.0 117.9 4.4 +8900.0 118.7 4.5 +8905.0 122.0 4.5 +8910.0 120.7 4.5 +8915.0 110.1 4.3 +8920.0 120.2 4.5 +8925.0 119.6 4.5 +8930.0 115.5 4.4 +8935.0 117.7 4.5 +8940.0 119.2 4.5 +8945.0 120.9 4.5 +8950.0 130.5 4.7 +8955.0 119.4 4.5 +8960.0 121.6 4.5 +8965.0 117.0 4.5 +8970.0 114.6 4.4 +8975.0 115.6 4.4 +8980.0 120.1 4.5 +8985.0 124.2 4.6 +8990.0 107.3 4.3 +8995.0 111.2 4.4 +9000.0 110.0 4.3 +9005.0 123.1 4.6 +9010.0 124.8 4.6 +9015.0 113.9 4.4 +9020.0 124.0 4.6 +9025.0 123.9 4.6 +9030.0 120.3 4.6 +9035.0 120.6 4.6 +9040.0 121.3 4.6 +9045.0 121.6 4.6 +9050.0 111.2 4.4 +9055.0 116.8 4.5 +9060.0 126.0 4.7 +9065.0 117.3 4.5 +9070.0 112.7 4.4 +9075.0 114.9 4.5 +9080.0 117.8 4.5 +9085.0 120.4 4.6 +9090.0 114.8 4.5 +9095.0 120.1 4.6 +9100.0 116.3 4.5 +9105.0 124.2 4.7 +9110.0 115.6 4.5 +9115.0 116.4 4.5 +9120.0 121.6 4.6 +9125.0 116.2 4.5 +9130.0 122.8 4.6 +9135.0 119.4 4.6 +9140.0 123.2 4.7 +9145.0 125.4 4.7 +9150.0 115.8 4.5 +9155.0 124.9 4.7 +9160.0 124.0 4.7 +9165.0 116.0 4.5 +9170.0 116.8 4.6 +9175.0 122.6 4.7 +9180.0 117.8 4.6 +9185.0 123.0 4.7 +9190.0 124.9 4.7 +9195.0 121.2 4.7 +9200.0 119.6 4.6 +9205.0 120.3 4.6 +9210.0 130.7 4.9 +9215.0 129.8 4.8 +9220.0 137.7 5.0 +9225.0 134.4 4.9 +9230.0 139.2 5.0 +9235.0 148.1 5.2 +9240.0 140.7 5.0 +9245.0 152.1 5.2 +9250.0 148.1 5.2 +9255.0 153.0 5.3 +9260.0 154.3 5.3 +9265.0 150.2 5.2 +9270.0 145.6 5.2 +9275.0 163.5 5.5 +9280.0 168.8 5.6 +9285.0 233.9 6.6 +9290.0 389.1 8.5 +9295.0 776.8 12.0 +9300.0 1338.8 15.7 +9305.0 1935.2 18.9 +9310.0 2338.9 20.8 +9315.0 2323.5 20.7 +9320.0 2169.9 20.0 +9325.0 1854.1 18.5 +9330.0 1505.1 16.7 +9335.0 1321.8 15.7 +9340.0 1028.1 13.8 +9345.0 856.8 12.6 +9350.0 704.8 11.5 +9355.0 591.2 10.5 +9360.0 493.0 9.6 +9365.0 408.6 8.7 +9370.0 357.5 8.2 +9375.0 307.9 7.6 +9380.0 261.8 7.0 +9385.0 235.5 6.7 +9390.0 233.1 6.6 +9395.0 183.7 5.9 +9400.0 189.6 6.0 +9405.0 172.1 5.7 +9410.0 168.1 5.6 +9415.0 151.1 5.3 +9420.0 158.1 5.5 +9425.0 142.3 5.2 +9430.0 138.9 5.1 +9435.0 148.9 5.3 +9440.0 138.7 5.1 +9445.0 133.8 5.0 +9450.0 138.7 5.1 +9455.0 137.2 5.1 +9460.0 130.1 5.0 +9465.0 128.4 4.9 +9470.0 137.8 5.1 +9475.0 133.1 5.0 +9480.0 118.8 4.8 +9485.0 129.7 5.0 +9490.0 118.7 4.8 +9495.0 122.0 4.8 +9500.0 126.6 4.9 +9505.0 121.1 4.8 +9510.0 129.9 5.0 +9515.0 123.9 4.9 +9520.0 129.3 5.0 +9525.0 128.0 5.0 +9530.0 128.0 5.0 +9535.0 135.5 5.1 +9540.0 127.1 4.9 +9545.0 124.2 4.9 +9550.0 127.7 5.0 +9555.0 127.1 5.0 +9560.0 120.7 4.8 +9565.0 126.9 5.0 +9570.0 131.0 5.0 +9575.0 118.8 4.8 +9580.0 124.0 4.9 +9585.0 121.1 4.9 +9590.0 121.9 4.9 +9595.0 123.7 4.9 +9600.0 128.3 5.0 +9605.0 137.4 5.2 +9610.0 142.8 5.3 +9615.0 129.5 5.0 +9620.0 136.8 5.2 +9625.0 128.4 5.0 +9630.0 133.9 5.1 +9635.0 128.2 5.0 +9640.0 126.1 5.0 +9645.0 131.8 5.1 +9650.0 126.4 5.0 +9655.0 125.1 5.0 +9660.0 127.7 5.0 +9665.0 122.5 4.9 +9670.0 132.2 5.1 +9675.0 132.8 5.1 +9680.0 132.1 5.1 +9685.0 126.2 5.0 +9690.0 116.5 4.8 +9695.0 116.2 4.8 +9700.0 121.0 4.9 +9705.0 119.4 4.9 +9710.0 118.2 4.8 +9715.0 121.6 4.9 +9720.0 125.5 5.0 +9725.0 124.3 5.0 +9730.0 134.1 5.2 +9735.0 136.1 5.2 +9740.0 125.1 5.0 +9745.0 124.3 5.0 +9750.0 133.4 5.2 +9755.0 124.8 5.0 +9760.0 129.3 5.1 +9765.0 132.8 5.2 +9770.0 129.0 5.1 +9775.0 124.8 5.0 +9780.0 130.8 5.1 +9785.0 130.9 5.1 +9790.0 124.0 5.0 +9795.0 129.7 5.1 +9800.0 122.9 5.0 +9805.0 122.0 5.0 +9810.0 133.1 5.2 +9815.0 134.1 5.2 +9820.0 130.8 5.2 +9825.0 133.5 5.2 +9830.0 117.7 4.9 +9835.0 123.5 5.0 +9840.0 128.1 5.1 +9845.0 130.8 5.2 +9850.0 130.6 5.2 +9855.0 130.0 5.1 +9860.0 122.3 5.0 +9865.0 126.2 5.1 +9870.0 114.2 4.8 +9875.0 124.3 5.0 +9880.0 125.6 5.1 +9885.0 125.4 5.1 +9890.0 125.0 5.1 +9895.0 120.0 5.0 +9900.0 115.3 4.9 +9905.0 116.9 4.9 +9910.0 129.6 5.2 +9915.0 120.9 5.0 +9920.0 130.0 5.2 +9925.0 129.8 5.2 +9930.0 127.7 5.1 +9935.0 130.6 5.2 +9940.0 118.8 5.0 +9945.0 119.8 5.0 +9950.0 122.4 5.0 +9955.0 117.9 5.0 +9960.0 123.1 5.1 +9965.0 122.7 5.1 +9970.0 129.2 5.2 +9975.0 114.7 4.9 +9980.0 118.5 5.0 +9985.0 125.8 5.1 +9990.0 130.3 5.2 +9995.0 122.0 5.1 +10000.0 120.6 5.0 +10005.0 127.9 5.2 +10010.0 125.7 5.1 +10015.0 119.3 5.0 +10020.0 116.3 5.0 +10025.0 124.5 5.1 +10030.0 110.3 4.8 +10035.0 129.3 5.2 +10040.0 122.9 5.1 +10045.0 120.5 5.1 +10050.0 121.1 5.1 +10055.0 123.4 5.1 +10060.0 123.4 5.1 +10065.0 124.1 5.2 +10070.0 126.2 5.2 +10075.0 126.8 5.2 +10080.0 134.5 5.4 +10085.0 123.9 5.2 +10090.0 137.0 5.4 +10095.0 140.0 5.5 +10100.0 134.3 5.4 +10105.0 137.6 5.5 +10110.0 159.4 5.9 +10115.0 168.8 6.1 +10120.0 217.5 6.9 +10125.0 339.5 8.6 +10130.0 582.1 11.3 +10135.0 974.1 14.6 +10140.0 1360.7 17.2 +10145.0 1623.1 18.8 +10150.0 1663.4 19.1 +10155.0 1555.4 18.5 +10160.0 1380.7 17.4 +10165.0 1188.1 16.2 +10170.0 993.8 14.8 +10175.0 828.2 13.5 +10180.0 666.7 12.1 +10185.0 572.6 11.2 +10190.0 490.6 10.4 +10195.0 419.8 9.7 +10200.0 355.4 8.9 +10205.0 287.9 8.0 +10210.0 268.4 7.7 +10215.0 241.4 7.3 +10220.0 216.9 7.0 +10225.0 192.7 6.6 +10230.0 181.4 6.4 +10235.0 181.2 6.4 +10240.0 164.1 6.1 +10245.0 162.1 6.0 +10250.0 152.8 5.9 +10255.0 138.1 5.6 +10260.0 148.3 5.8 +10265.0 137.6 5.6 +10270.0 140.9 5.7 +10275.0 135.7 5.5 +10280.0 129.8 5.4 +10285.0 120.1 5.2 +10290.0 129.4 5.4 +10295.0 129.1 5.4 +10300.0 127.6 5.4 +10305.0 125.5 5.4 +10310.0 123.2 5.3 +10315.0 126.4 5.4 +10320.0 111.4 5.1 +10325.0 115.6 5.2 +10330.0 121.6 5.3 +10335.0 121.6 5.3 +10340.0 121.2 5.3 +10345.0 129.9 5.5 +10350.0 126.2 5.4 +10355.0 127.6 5.4 +10360.0 131.9 5.5 +10365.0 123.6 5.4 +10370.0 111.7 5.1 +10375.0 119.0 5.3 +10380.0 121.4 5.3 +10385.0 129.9 5.5 +10390.0 120.3 5.3 +10395.0 119.7 5.3 +10400.0 119.0 5.3 +10405.0 116.5 5.2 +10410.0 123.6 5.4 +10415.0 116.1 5.2 +10420.0 121.1 5.4 +10425.0 121.2 5.4 +10430.0 118.8 5.3 +10435.0 120.6 5.4 +10440.0 121.3 5.4 +10445.0 118.8 5.3 +10450.0 126.5 5.5 +10455.0 106.2 5.0 +10460.0 123.2 5.4 +10465.0 117.6 5.3 +10470.0 119.3 5.4 +10475.0 121.2 5.4 +10480.0 123.6 5.5 +10485.0 109.8 5.1 +10490.0 123.4 5.5 +10495.0 125.1 5.5 +10500.0 110.1 5.2 +10505.0 116.8 5.3 +10510.0 115.3 5.3 +10515.0 117.5 5.3 +10520.0 120.0 5.4 +10525.0 122.3 5.5 +10530.0 119.9 5.4 +10535.0 109.1 5.2 +10540.0 128.3 5.6 +10545.0 126.7 5.6 +10550.0 121.3 5.5 +10555.0 118.9 5.4 +10560.0 111.6 5.2 +10565.0 123.5 5.5 +10570.0 110.2 5.2 +10575.0 119.3 5.4 +10580.0 121.3 5.5 +10585.0 110.6 5.2 +10590.0 113.8 5.3 +10595.0 118.0 5.4 +10600.0 119.0 5.5 +10605.0 118.5 5.4 +10610.0 138.6 5.9 +10615.0 114.5 5.4 +10620.0 124.9 5.6 +10625.0 119.9 5.5 +10630.0 112.1 5.3 +10635.0 124.3 5.6 +10640.0 125.4 5.6 +10645.0 116.0 5.4 +10650.0 119.6 5.5 +10655.0 111.0 5.3 +10660.0 118.0 5.5 +10665.0 111.6 5.3 +10670.0 118.3 5.5 +10675.0 125.0 5.7 +10680.0 115.9 5.5 +10685.0 122.5 5.6 +10690.0 121.9 5.6 +10695.0 133.4 5.9 +10700.0 110.4 5.3 +10705.0 125.1 5.7 +10710.0 131.6 5.8 +10715.0 121.6 5.6 +10720.0 117.8 5.5 +10725.0 119.6 5.6 +10730.0 116.6 5.5 +10735.0 114.2 5.5 +10740.0 123.9 5.7 +10745.0 129.7 5.8 +10750.0 122.7 5.7 +10755.0 111.6 5.4 +10760.0 122.6 5.7 +10765.0 129.0 5.8 +10770.0 112.9 5.5 +10775.0 130.7 5.9 +10780.0 118.3 5.6 +10785.0 121.6 5.7 +10790.0 119.2 5.6 +10795.0 121.7 5.7 +10800.0 117.2 5.6 +10805.0 125.0 5.8 +10810.0 121.6 5.7 +10815.0 117.2 5.6 +10820.0 115.4 5.6 +10825.0 110.8 5.5 +10830.0 114.8 5.6 +10835.0 119.8 5.7 +10840.0 131.5 6.0 +10845.0 119.4 5.7 +10850.0 114.5 5.6 +10855.0 119.7 5.7 +10860.0 119.8 5.7 +10865.0 117.7 5.7 +10870.0 120.9 5.7 +10875.0 117.9 5.7 +10880.0 124.8 5.8 +10885.0 117.7 5.7 +10890.0 122.9 5.8 +10895.0 129.8 6.0 +10900.0 120.2 5.8 +10905.0 137.3 6.2 +10910.0 121.8 5.8 +10915.0 125.5 5.9 +10920.0 122.1 5.8 +10925.0 108.2 5.5 +10930.0 123.2 5.8 +10935.0 116.6 5.7 +10940.0 104.6 5.4 +10945.0 117.4 5.7 +10950.0 120.9 5.8 +10955.0 125.6 5.9 +10960.0 114.3 5.7 +10965.0 128.7 6.0 +10970.0 120.7 5.8 +10975.0 109.4 5.6 +10980.0 117.9 5.8 +10985.0 125.2 6.0 +10990.0 124.5 6.0 +10995.0 114.8 5.7 +11000.0 119.1 5.8 +11005.0 121.3 5.9 +11010.0 133.2 6.2 +11015.0 126.9 6.0 +11020.0 112.3 5.7 +11025.0 115.6 5.8 +11030.0 118.9 5.8 +11035.0 125.5 6.0 +11040.0 121.5 5.9 +11045.0 115.6 5.8 +11050.0 118.9 5.9 +11055.0 121.2 5.9 +11060.0 121.9 5.9 +11065.0 119.0 5.9 +11070.0 135.7 6.3 +11075.0 131.0 6.2 +11080.0 123.9 6.0 +11085.0 122.8 6.0 +11090.0 127.6 6.1 +11095.0 134.3 6.3 +11100.0 115.8 5.8 +11105.0 128.3 6.1 +11110.0 119.9 5.9 +11115.0 119.3 5.9 +11120.0 121.9 6.0 +11125.0 130.7 6.2 +11130.0 114.6 5.8 +11135.0 116.6 5.9 +11140.0 124.0 6.0 +11145.0 121.6 6.0 +11150.0 120.8 6.0 +11155.0 121.5 6.0 +11160.0 131.3 6.2 +11165.0 121.2 6.0 +11170.0 126.3 6.1 +11175.0 124.5 6.1 +11180.0 127.2 6.2 +11185.0 119.4 6.0 +11190.0 119.6 6.0 +11195.0 107.6 5.7 +11200.0 119.0 6.0 +11205.0 135.2 6.4 +11210.0 127.0 6.2 +11215.0 121.0 6.0 +11220.0 131.0 6.3 +11225.0 120.5 6.0 +11230.0 121.6 6.1 +11235.0 119.5 6.0 +11240.0 115.8 5.9 +11245.0 122.1 6.1 +11250.0 117.0 6.0 +11255.0 123.6 6.1 +11260.0 123.6 6.1 +11265.0 122.4 6.1 +11270.0 120.3 6.1 +11275.0 127.0 6.2 +11280.0 117.2 6.0 +11285.0 128.1 6.3 +11290.0 129.4 6.3 +11295.0 129.4 6.3 +11300.0 130.6 6.3 +11305.0 126.8 6.2 +11310.0 142.2 6.6 +11315.0 144.4 6.7 +11320.0 129.9 6.3 +11325.0 139.1 6.6 +11330.0 137.9 6.5 +11335.0 137.0 6.5 +11340.0 129.5 6.3 +11345.0 135.4 6.5 +11350.0 129.5 6.3 +11355.0 128.2 6.3 +11360.0 138.5 6.6 +11365.0 124.2 6.2 +11370.0 132.3 6.4 +11375.0 129.1 6.3 +11380.0 117.2 6.0 +11385.0 114.1 6.0 +11390.0 116.9 6.0 +11395.0 122.4 6.2 +11400.0 126.5 6.3 +11405.0 116.1 6.0 +11410.0 124.0 6.2 +11415.0 118.0 6.1 +11420.0 120.7 6.2 +11425.0 121.7 6.2 +11430.0 122.9 6.2 +11435.0 118.1 6.1 +11440.0 116.8 6.1 +11445.0 113.6 6.0 +11450.0 122.8 6.2 +11455.0 134.2 6.5 +11460.0 119.5 6.2 +11465.0 117.3 6.1 +11470.0 118.8 6.2 +11475.0 121.7 6.2 +11480.0 116.5 6.1 +11485.0 125.1 6.3 +11490.0 117.4 6.1 +11495.0 131.1 6.5 +11500.0 132.6 6.5 +11505.0 130.0 6.5 +11510.0 124.9 6.3 +11515.0 133.6 6.5 +11520.0 132.7 6.5 +11525.0 128.2 6.4 +11530.0 136.9 6.6 +11535.0 131.5 6.5 +11540.0 131.6 6.5 +11545.0 129.3 6.5 +11550.0 127.1 6.4 +11555.0 130.9 6.5 +11560.0 125.5 6.4 +11565.0 124.9 6.4 +11570.0 119.3 6.2 +11575.0 106.4 5.9 +11580.0 107.0 5.9 +11585.0 123.9 6.3 +11590.0 111.6 6.0 +11595.0 128.2 6.5 +11600.0 125.3 6.4 +11605.0 128.6 6.5 +11610.0 122.7 6.3 +11615.0 125.0 6.4 +11620.0 117.3 6.2 +11625.0 117.6 6.2 +11630.0 113.0 6.1 +11635.0 126.2 6.4 +11640.0 116.9 6.2 +11645.0 123.8 6.4 +11650.0 135.6 6.7 +11655.0 119.8 6.3 +11660.0 127.4 6.5 +11665.0 119.5 6.3 +11670.0 123.4 6.4 +11675.0 119.4 6.3 +11680.0 116.8 6.2 +11685.0 117.4 6.3 +11690.0 118.1 6.3 +11695.0 119.4 6.3 +11700.0 126.8 6.5 +11705.0 123.1 6.4 +11710.0 136.5 6.8 +11715.0 120.5 6.4 +11720.0 130.2 6.6 +11725.0 111.0 6.1 +11730.0 120.1 6.4 +11735.0 121.5 6.4 +11740.0 127.9 6.6 +11745.0 122.2 6.4 +11750.0 121.8 6.4 +11755.0 119.1 6.4 +11760.0 115.4 6.3 +11765.0 123.6 6.5 +11770.0 123.3 6.5 +11775.0 120.2 6.4 +11780.0 133.2 6.8 +11785.0 118.1 6.4 +11790.0 127.0 6.6 +11795.0 123.3 6.5 +11800.0 125.3 6.6 +11805.0 131.6 6.7 +11810.0 109.8 6.2 +11815.0 133.4 6.8 +11820.0 112.6 6.3 +11825.0 117.5 6.4 +11830.0 130.7 6.7 +11835.0 110.5 6.2 +11840.0 130.4 6.8 +11845.0 115.0 6.3 +11850.0 126.9 6.7 +11855.0 128.4 6.7 +11860.0 127.3 6.7 +11865.0 121.0 6.5 +11870.0 125.2 6.6 +11875.0 131.9 6.8 +11880.0 130.5 6.8 +11885.0 114.2 6.4 +11890.0 120.3 6.5 +11895.0 129.5 6.8 +11900.0 115.3 6.4 +11905.0 113.1 6.3 +11910.0 118.1 6.5 +11915.0 122.7 6.6 +11920.0 118.1 6.5 +11925.0 117.4 6.5 +11930.0 128.5 6.8 +11935.0 121.6 6.6 +11940.0 115.1 6.4 +11945.0 123.8 6.7 +11950.0 123.4 6.7 +11955.0 119.1 6.6 +11960.0 126.7 6.8 +11965.0 128.1 6.8 +11970.0 129.6 6.9 +11975.0 112.8 6.4 +11980.0 130.0 6.9 +11985.0 132.1 6.9 +11990.0 127.4 6.8 +11995.0 120.8 6.7 +12000.0 125.6 6.8 +12005.0 131.4 6.9 +12010.0 134.8 7.0 +12015.0 130.4 6.9 +12020.0 125.6 6.8 +12025.0 129.3 6.9 +12030.0 126.0 6.8 +12035.0 110.8 6.4 +12040.0 109.7 6.4 +12045.0 137.1 7.1 +12050.0 128.3 6.9 +12055.0 132.0 7.0 +12060.0 134.2 7.1 +12065.0 138.3 7.2 +12070.0 128.6 6.9 +12075.0 137.6 7.2 +12080.0 121.9 6.8 +12085.0 127.1 6.9 +12090.0 132.4 7.1 +12095.0 135.8 7.2 +12100.0 133.6 7.1 +12105.0 126.0 6.9 +12110.0 136.3 7.2 +12115.0 142.7 7.4 +12120.0 140.4 7.3 +12125.0 138.6 7.3 +12130.0 125.6 6.9 +12135.0 130.5 7.1 +12140.0 136.3 7.2 +12145.0 146.7 7.5 +12150.0 146.3 7.5 +12155.0 143.2 7.4 +12160.0 165.2 8.0 +12165.0 157.2 7.8 +12170.0 168.4 8.1 +12175.0 175.0 8.2 +12180.0 194.8 8.7 +12185.0 201.6 8.8 +12190.0 211.2 9.1 +12195.0 239.6 9.7 +12200.0 303.9 10.9 +12205.0 431.8 13.0 +12210.0 784.9 17.5 +12215.0 1416.5 23.6 +12220.0 2419.7 30.8 +12225.0 3735.2 38.3 +12230.0 4897.6 43.9 +12235.0 5864.7 48.1 +12240.0 6271.0 49.7 +12245.0 6009.8 48.8 +12250.0 5411.3 46.3 +12255.0 4765.3 43.5 +12260.0 3981.7 39.7 +12265.0 3327.2 36.4 +12270.0 2723.1 33.0 +12275.0 2219.9 29.8 +12280.0 1840.2 27.1 +12285.0 1480.2 24.4 +12290.0 1221.1 22.1 +12295.0 988.0 19.9 +12300.0 819.3 18.2 +12305.0 680.2 16.6 +12310.0 602.3 15.6 +12315.0 500.3 14.2 +12320.0 402.6 12.8 +12325.0 355.6 12.0 +12330.0 317.9 11.4 +12335.0 283.8 10.7 +12340.0 272.0 10.5 +12345.0 225.4 9.6 +12350.0 210.3 9.3 +12355.0 211.5 9.3 +12360.0 221.4 9.5 +12365.0 202.1 9.1 +12370.0 186.1 8.7 +12375.0 191.2 8.9 +12380.0 171.5 8.4 +12385.0 157.9 8.1 +12390.0 168.2 8.3 +12395.0 167.9 8.3 +12400.0 151.0 7.9 +12405.0 155.1 8.0 +12410.0 167.6 8.3 +12415.0 157.7 8.1 +12420.0 163.2 8.3 +12425.0 141.5 7.7 +12430.0 147.3 7.9 +12435.0 149.0 7.9 +12440.0 156.6 8.1 +12445.0 144.4 7.8 +12450.0 153.6 8.1 +12455.0 141.4 7.7 +12460.0 140.5 7.7 +12465.0 126.1 7.3 +12470.0 137.5 7.6 +12475.0 153.2 8.1 +12480.0 130.3 7.5 +12485.0 139.3 7.7 +12490.0 139.7 7.7 +12495.0 143.6 7.8 +12500.0 137.1 7.7 +12505.0 131.4 7.5 +12510.0 143.9 7.9 +12515.0 140.9 7.8 +12520.0 140.5 7.8 +12525.0 143.4 7.9 +12530.0 126.2 7.4 +12535.0 138.7 7.7 +12540.0 132.2 7.6 +12545.0 127.8 7.5 +12550.0 122.1 7.3 +12555.0 133.4 7.6 +12560.0 145.6 8.0 +12565.0 132.1 7.6 +12570.0 121.1 7.3 +12575.0 132.5 7.6 +12580.0 140.8 7.9 +12585.0 121.0 7.3 +12590.0 130.7 7.6 +12595.0 124.9 7.4 +12600.0 139.9 7.9 +12605.0 143.4 8.0 +12610.0 128.8 7.6 +12615.0 120.7 7.3 +12620.0 127.9 7.5 +12625.0 128.3 7.6 +12630.0 107.4 6.9 +12635.0 146.6 8.1 +12640.0 138.5 7.9 +12645.0 121.5 7.4 +12650.0 116.1 7.2 +12655.0 135.3 7.8 +12660.0 128.6 7.6 +12665.0 118.6 7.3 +12670.0 128.5 7.6 +12675.0 118.5 7.3 +12680.0 126.2 7.6 +12685.0 137.1 7.9 +12690.0 123.8 7.5 +12695.0 125.1 7.6 +12700.0 118.3 7.4 +12705.0 124.2 7.5 +12710.0 126.0 7.6 +12715.0 120.9 7.5 +12720.0 125.9 7.6 +12725.0 113.1 7.2 +12730.0 134.2 7.9 +12735.0 116.5 7.3 +12740.0 116.5 7.3 +12745.0 124.7 7.6 +12750.0 113.1 7.2 +12755.0 120.9 7.5 +12760.0 127.9 7.7 +12765.0 112.4 7.2 +12770.0 137.6 8.0 +12775.0 139.0 8.1 +12780.0 117.9 7.4 +12785.0 132.8 7.9 +12790.0 122.8 7.6 +12795.0 119.1 7.5 +12800.0 136.4 8.0 +12805.0 114.2 7.3 +12810.0 124.0 7.7 +12815.0 136.3 8.0 +12820.0 125.3 7.7 +12825.0 123.9 7.7 +12830.0 125.7 7.7 +12835.0 116.2 7.4 +12840.0 126.2 7.8 +12845.0 115.2 7.4 +12850.0 117.0 7.5 +12855.0 124.5 7.7 +12860.0 117.3 7.5 +12865.0 118.7 7.6 +12870.0 126.3 7.8 +12875.0 128.2 7.9 +12880.0 118.0 7.6 +12885.0 119.5 7.6 +12890.0 122.3 7.7 +12895.0 126.6 7.8 +12900.0 124.6 7.8 +12905.0 130.5 8.0 +12910.0 127.5 7.9 +12915.0 122.4 7.7 +12920.0 107.3 7.2 +12925.0 128.3 7.9 +12930.0 116.8 7.6 +12935.0 129.6 8.0 +12940.0 116.8 7.6 +12945.0 118.3 7.6 +12950.0 140.8 8.4 +12955.0 126.9 7.9 +12960.0 129.4 8.0 +12965.0 123.0 7.8 +12970.0 108.3 7.3 +12975.0 124.7 7.9 +12980.0 118.7 7.7 +12985.0 109.6 7.4 +12990.0 112.4 7.5 +12995.0 122.0 7.8 +13000.0 115.9 7.6 +13005.0 117.7 7.7 +13010.0 122.2 7.9 +13015.0 121.7 7.8 +13020.0 126.3 8.0 +13025.0 118.9 7.8 +13030.0 108.8 7.4 +13035.0 122.5 7.9 +13040.0 107.8 7.4 +13045.0 117.1 7.7 +13050.0 119.2 7.8 +13055.0 102.8 7.3 +13060.0 108.7 7.5 +13065.0 123.5 8.0 +13070.0 135.3 8.3 +13075.0 116.3 7.7 +13080.0 115.6 7.7 +13085.0 118.6 7.8 +13090.0 118.0 7.8 +13095.0 116.5 7.8 +13100.0 125.1 8.1 +13105.0 107.8 7.5 +13110.0 125.0 8.1 +13115.0 108.1 7.5 +13120.0 125.9 8.1 +13125.0 118.9 7.9 +13130.0 129.4 8.2 +13135.0 115.6 7.8 +13140.0 117.2 7.8 +13145.0 123.3 8.1 +13150.0 131.2 8.3 +13155.0 109.4 7.6 +13160.0 116.8 7.9 +13165.0 125.7 8.2 +13170.0 118.1 7.9 +13175.0 118.1 7.9 +13180.0 133.5 8.4 +13185.0 121.2 8.0 +13190.0 119.9 8.0 +13195.0 123.1 8.1 +13200.0 109.7 7.7 +13205.0 110.0 7.7 +13210.0 140.0 8.7 +13215.0 120.1 8.0 +13220.0 131.9 8.4 +13225.0 121.5 8.1 +13230.0 116.4 7.9 +13235.0 127.8 8.3 +13240.0 115.8 7.9 +13245.0 102.5 7.5 +13250.0 113.4 7.9 +13255.0 119.4 8.1 +13260.0 124.2 8.2 +13265.0 115.8 8.0 +13270.0 113.6 7.9 +13275.0 110.9 7.8 +13280.0 126.6 8.3 +13285.0 116.0 8.0 +13290.0 117.1 8.0 +13295.0 129.2 8.4 +13300.0 121.7 8.2 +13305.0 128.9 8.5 +13310.0 125.6 8.4 +13315.0 111.7 7.9 +13320.0 127.0 8.4 +13325.0 115.2 8.0 +13330.0 120.8 8.2 +13335.0 130.3 8.5 +13340.0 136.2 8.8 +13345.0 110.8 7.9 +13350.0 108.0 7.8 +13355.0 130.9 8.6 +13360.0 119.5 8.2 +13365.0 118.3 8.2 +13370.0 108.1 7.8 +13375.0 120.3 8.3 +13380.0 126.4 8.5 +13385.0 107.0 7.8 +13390.0 128.7 8.6 +13395.0 101.6 7.6 +13400.0 127.7 8.6 +13405.0 137.4 8.9 +13410.0 122.5 8.4 +13415.0 125.8 8.5 +13420.0 116.9 8.2 +13425.0 130.2 8.7 +13430.0 134.0 8.8 +13435.0 107.5 7.9 +13440.0 134.5 8.8 +13445.0 136.8 8.9 +13450.0 130.2 8.7 +13455.0 112.5 8.1 +13460.0 116.6 8.2 +13465.0 110.8 8.0 +13470.0 131.6 8.8 +13475.0 132.5 8.8 +13480.0 140.2 9.1 +13485.0 113.5 8.2 +13490.0 130.6 8.8 +13495.0 130.4 8.8 +13500.0 125.7 8.6 +13505.0 145.0 9.3 +13510.0 121.9 8.5 +13515.0 131.2 8.8 +13520.0 118.2 8.4 +13525.0 116.7 8.3 +13530.0 116.1 8.3 +13535.0 124.3 8.6 +13540.0 129.5 8.8 +13545.0 109.1 8.1 +13550.0 118.7 8.4 +13555.0 115.5 8.3 +13560.0 124.8 8.7 +13565.0 122.4 8.6 +13570.0 121.8 8.6 +13575.0 127.6 8.8 +13580.0 122.5 8.6 +13585.0 132.2 9.0 +13590.0 141.3 9.3 +13595.0 125.3 8.7 +13600.0 120.7 8.6 +13605.0 121.3 8.6 +13610.0 121.3 8.6 +13615.0 130.1 8.9 +13620.0 118.4 8.5 +13625.0 116.6 8.5 +13630.0 114.7 8.4 +13635.0 120.3 8.6 +13640.0 125.8 8.8 +13645.0 98.7 7.8 +13650.0 104.2 8.0 +13655.0 130.3 9.0 +13660.0 137.7 9.2 +13665.0 121.6 8.7 +13670.0 121.9 8.7 +13675.0 131.0 9.0 +13680.0 127.9 8.9 +13685.0 116.0 8.5 +13690.0 129.3 9.0 +13695.0 126.8 8.9 +13700.0 119.2 8.7 +13705.0 113.6 8.4 +13710.0 126.9 8.9 +13715.0 125.0 8.9 +13720.0 114.2 8.5 +13725.0 115.2 8.5 +13730.0 115.6 8.6 +13735.0 121.3 8.8 +13740.0 115.6 8.6 +13745.0 121.0 8.8 +13750.0 120.7 8.8 +13755.0 131.5 9.2 +13760.0 113.0 8.5 +13765.0 108.8 8.3 +13770.0 120.1 8.8 +13775.0 124.6 8.9 +13780.0 111.7 8.5 +13785.0 106.2 8.3 +13790.0 131.1 9.2 +13795.0 123.3 8.9 +13800.0 117.2 8.7 +13805.0 138.6 9.5 +13810.0 122.7 8.9 +13815.0 117.5 8.7 +13820.0 124.3 9.0 +13825.0 117.1 8.7 +13830.0 131.2 9.3 +13835.0 131.9 9.3 +13840.0 119.1 8.8 +13845.0 140.1 9.6 +13850.0 139.9 9.6 +13855.0 114.5 8.7 +13860.0 134.9 9.4 +13865.0 115.2 8.7 +13870.0 124.1 9.1 +13875.0 129.0 9.2 +13880.0 111.2 8.6 +13885.0 133.7 9.4 +13890.0 122.1 9.0 +13895.0 123.1 9.1 +13900.0 135.1 9.5 +13905.0 137.5 9.6 +13910.0 129.1 9.3 +13915.0 131.2 9.4 +13920.0 127.1 9.2 +13925.0 130.9 9.4 +13930.0 152.1 10.1 +13935.0 137.3 9.6 +13940.0 121.8 9.1 +13945.0 122.8 9.1 +13950.0 144.1 9.9 +13955.0 132.6 9.5 +13960.0 134.6 9.5 +13965.0 130.3 9.4 +13970.0 151.0 10.1 +13975.0 135.4 9.6 +13980.0 149.0 10.1 +13985.0 139.5 9.8 +13990.0 139.5 9.8 +13995.0 151.8 10.2 +14000.0 153.2 10.2 +14005.0 146.5 10.0 +14010.0 169.2 10.8 +14015.0 145.8 10.0 +14020.0 149.2 10.1 +14025.0 154.8 10.3 +14030.0 167.3 10.8 +14035.0 185.3 11.3 +14040.0 170.5 10.9 +14045.0 168.2 10.8 +14050.0 166.1 10.7 +14055.0 176.5 11.1 +14060.0 174.1 11.0 +14065.0 167.6 10.8 +14070.0 155.0 10.4 +14075.0 173.2 11.0 +14080.0 161.7 10.6 +14085.0 156.5 10.5 +14090.0 149.5 10.2 +14095.0 152.0 10.3 +14100.0 122.4 9.3 +14105.0 141.1 10.0 +14110.0 128.4 9.5 +14115.0 151.3 10.3 +14120.0 144.3 10.1 +14125.0 142.5 10.1 +14130.0 129.8 9.6 +14135.0 136.5 9.9 +14140.0 146.8 10.2 +14145.0 141.8 10.1 +14150.0 146.8 10.2 +14155.0 134.3 9.8 +14160.0 132.6 9.7 +14165.0 137.6 9.9 +14170.0 159.6 10.7 +14175.0 140.1 10.0 +14180.0 133.3 9.8 +14185.0 147.8 10.3 +14190.0 167.7 11.0 +14195.0 159.0 10.7 +14200.0 163.8 10.9 +14205.0 142.8 10.2 +14210.0 149.7 10.4 +14215.0 159.1 10.8 +14220.0 147.9 10.4 +14225.0 153.4 10.6 +14230.0 175.3 11.3 +14235.0 189.9 11.8 +14240.0 173.6 11.3 +14245.0 166.0 11.0 +14250.0 175.6 11.4 +14255.0 195.4 12.0 +14260.0 197.4 12.1 +14265.0 180.9 11.6 +14270.0 195.6 12.0 +14275.0 211.1 12.5 +14280.0 219.6 12.8 +14285.0 230.8 13.1 +14290.0 250.8 13.6 +14295.0 310.9 15.2 +14300.0 322.8 15.5 +14305.0 425.7 17.8 +14310.0 576.3 20.7 +14315.0 885.7 25.7 +14320.0 1605.7 34.7 +14325.0 2746.0 45.4 +14330.0 4328.5 56.9 +14335.0 6457.9 69.6 +14340.0 8315.8 79.1 +14345.0 9857.0 86.1 +14350.0 10655.8 89.6 +14355.0 10851.4 90.5 +14360.0 10203.8 87.9 +14365.0 9031.3 82.7 +14370.0 7806.5 76.9 +14375.0 6590.3 70.8 +14380.0 5612.3 65.3 +14385.0 4644.3 59.4 +14390.0 3759.1 53.5 +14395.0 2955.4 47.5 +14400.0 2398.1 42.8 +14405.0 2079.3 39.9 +14410.0 1630.2 35.3 +14415.0 1382.8 32.6 +14420.0 1103.0 29.1 +14425.0 950.1 27.0 +14430.0 771.7 24.4 +14435.0 678.7 22.9 +14440.0 610.7 21.7 +14445.0 507.1 19.8 +14450.0 415.4 17.9 +14455.0 391.6 17.4 +14460.0 406.3 17.8 +14465.0 318.6 15.8 +14470.0 303.0 15.4 +14475.0 283.5 14.9 +14480.0 265.6 14.4 +14485.0 253.7 14.1 +14490.0 220.8 13.1 +14495.0 193.1 12.3 +14500.0 226.9 13.3 +14505.0 215.7 13.0 +14510.0 203.9 12.7 +14515.0 175.3 11.8 +14520.0 199.7 12.6 +14525.0 190.0 12.3 +14530.0 184.5 12.1 +14535.0 167.4 11.5 +14540.0 182.2 12.0 +14545.0 166.3 11.5 +14550.0 186.9 12.2 +14555.0 159.6 11.3 +14560.0 175.2 11.8 +14565.0 177.6 11.9 +14570.0 155.2 11.1 +14575.0 152.5 11.1 +14580.0 140.0 10.6 +14585.0 150.5 11.0 +14590.0 150.1 11.0 +14595.0 136.7 10.5 +14600.0 182.9 12.2 +14605.0 155.4 11.2 +14610.0 173.6 11.9 +14615.0 143.2 10.8 +14620.0 151.4 11.1 +14625.0 138.3 10.6 +14630.0 177.1 12.0 +14635.0 161.2 11.5 +14640.0 173.5 11.9 +14645.0 166.1 11.7 +14650.0 151.8 11.2 +14655.0 163.7 11.6 +14660.0 132.4 10.4 +14665.0 177.7 12.1 +14670.0 158.8 11.5 +14675.0 146.4 11.0 +14680.0 148.1 11.1 +14685.0 134.0 10.5 +14690.0 147.2 11.1 +14695.0 169.7 11.9 +14700.0 148.1 11.1 +14705.0 144.7 11.0 +14710.0 150.6 11.2 +14715.0 147.2 11.1 +14720.0 128.8 10.4 +14725.0 138.4 10.8 +14730.0 134.6 10.6 +14735.0 142.1 10.9 +14740.0 132.9 10.6 +14745.0 150.1 11.3 +14750.0 159.8 11.6 +14755.0 152.2 11.3 +14760.0 139.5 10.9 +14765.0 154.4 11.4 +14770.0 155.7 11.5 +14775.0 148.0 11.2 +14780.0 138.2 10.9 +14785.0 143.3 11.1 +14790.0 148.9 11.3 +14795.0 142.9 11.1 +14800.0 156.2 11.6 +14805.0 127.0 10.4 +14810.0 135.1 10.8 +14815.0 138.5 10.9 +14820.0 162.2 11.8 +14825.0 142.8 11.1 +14830.0 137.6 10.9 +14835.0 129.8 10.6 +14840.0 121.5 10.3 +14845.0 146.2 11.3 +14850.0 120.1 10.2 +14855.0 132.7 10.8 +14860.0 136.2 10.9 +14865.0 128.7 10.6 +14870.0 121.7 10.3 +14875.0 133.4 10.8 +14880.0 129.1 10.6 +14885.0 123.3 10.4 +14890.0 138.3 11.0 +14895.0 131.7 10.8 +14900.0 133.4 10.9 +14905.0 127.6 10.6 +14910.0 121.8 10.4 +14915.0 136.0 11.0 +14920.0 127.1 10.6 +14925.0 126.6 10.6 +14930.0 127.0 10.7 +14935.0 157.4 11.9 +14940.0 140.4 11.2 +14945.0 122.0 10.5 +14950.0 119.6 10.4 +14955.0 136.7 11.1 +14960.0 135.8 11.1 +14965.0 137.5 11.2 +14970.0 135.7 11.1 +14975.0 141.1 11.3 +14980.0 134.8 11.0 +14985.0 144.7 11.5 +14990.0 129.2 10.8 +14995.0 119.2 10.4 +15000.0 130.1 10.9 +15005.0 144.6 11.5 +15010.0 122.6 10.6 +15015.0 128.1 10.8 +15020.0 126.3 10.7 +15025.0 155.5 12.0 +15030.0 132.5 11.0 +15035.0 148.2 11.7 +15040.0 137.9 11.3 +15045.0 140.7 11.4 +15050.0 126.8 10.8 +15055.0 137.9 11.3 +15060.0 149.0 11.8 +15065.0 129.5 11.0 +15070.0 115.5 10.4 +15075.0 122.9 10.7 +15080.0 135.0 11.2 +15085.0 134.0 11.2 +15090.0 113.4 10.3 +15095.0 142.0 11.6 +15100.0 152.8 12.0 +15105.0 118.9 10.6 +15110.0 142.4 11.6 +15115.0 111.7 10.3 +15120.0 124.4 10.9 +15125.0 136.7 11.4 +15130.0 134.8 11.3 +15135.0 136.2 11.4 +15140.0 145.3 11.8 +15145.0 150.1 12.0 +15150.0 121.8 10.8 +15155.0 129.5 11.1 +15160.0 147.2 11.9 +15165.0 149.1 12.0 +15170.0 143.8 11.8 +15175.0 142.9 11.7 +15180.0 121.1 10.8 +15185.0 148.2 12.0 +15190.0 126.4 11.1 +15195.0 141.9 11.7 +15200.0 171.7 12.9 +15205.0 142.4 11.8 +15210.0 143.9 11.9 +15215.0 141.0 11.7 +15220.0 128.7 11.2 +15225.0 135.1 11.5 +15230.0 146.9 12.0 +15235.0 156.8 12.4 +15240.0 151.4 12.2 +15245.0 139.0 11.7 +15250.0 121.1 11.0 +15255.0 125.1 11.1 +15260.0 138.5 11.7 +15265.0 118.0 10.9 +15270.0 123.0 11.1 +15275.0 135.4 11.7 +15280.0 123.9 11.2 +15285.0 120.9 11.0 +15290.0 127.9 11.3 +15295.0 137.5 11.8 +15300.0 120.7 11.1 +15305.0 122.7 11.2 +15310.0 117.7 10.9 +15315.0 129.3 11.5 +15320.0 126.7 11.4 +15325.0 145.0 12.2 +15330.0 114.4 10.8 +15335.0 133.7 11.7 +15340.0 137.8 11.9 +15345.0 127.6 11.5 +15350.0 134.8 11.8 +15355.0 120.2 11.2 +15360.0 129.6 11.6 +15365.0 123.3 11.3 +15370.0 137.9 12.0 +15375.0 110.7 10.8 +15380.0 120.1 11.2 +15385.0 157.7 12.8 +15390.0 131.6 11.7 +15395.0 121.1 11.3 +15400.0 117.9 11.1 +15405.0 122.1 11.3 +15410.0 146.9 12.5 +15415.0 110.3 10.8 +15420.0 107.1 10.7 +15425.0 124.0 11.5 +15430.0 121.3 11.4 +15435.0 116.4 11.1 +15440.0 132.4 11.9 +15445.0 119.6 11.3 +15450.0 137.2 12.1 +15455.0 131.3 11.9 +15460.0 123.7 11.5 +15465.0 117.7 11.3 +15470.0 122.0 11.5 +15475.0 121.4 11.5 +15480.0 131.1 11.9 +15485.0 117.4 11.3 +15490.0 120.1 11.4 +15495.0 128.8 11.9 +15500.0 123.3 11.6 +15505.0 141.3 12.4 +15510.0 123.2 11.6 +15515.0 140.7 12.4 +15520.0 138.9 12.4 +15525.0 131.2 12.0 +15530.0 123.9 11.7 +15535.0 122.8 11.7 +15540.0 108.7 11.0 +15545.0 151.9 13.0 +15550.0 133.6 12.2 +15555.0 110.2 11.1 +15560.0 109.3 11.0 +15565.0 146.1 12.8 +15570.0 123.1 11.7 +15575.0 128.7 12.0 +15580.0 138.9 12.5 +15585.0 105.3 10.9 +15590.0 119.2 11.6 +15595.0 126.1 11.9 +15600.0 132.9 12.2 +15605.0 120.5 11.7 +15610.0 121.0 11.7 +15615.0 132.4 12.2 +15620.0 119.9 11.6 +15625.0 115.4 11.4 +15630.0 129.4 12.1 +15635.0 117.1 11.5 +15640.0 125.0 11.9 +15645.0 125.0 11.9 +15650.0 138.3 12.6 +15655.0 116.6 11.5 +15660.0 108.6 11.1 +15665.0 118.8 11.7 +15670.0 127.5 12.1 +15675.0 125.2 12.0 +15680.0 148.2 13.0 +15685.0 96.5 10.5 +15690.0 113.2 11.4 +15695.0 110.9 11.3 +15700.0 121.3 11.8 +15705.0 138.9 12.7 +15710.0 105.7 11.1 +15715.0 116.1 11.6 +15720.0 133.5 12.5 +15725.0 128.4 12.2 +15730.0 123.7 12.0 +15735.0 122.6 12.0 +15740.0 152.9 13.4 +15745.0 126.7 12.2 +15750.0 140.7 12.8 +15755.0 119.6 11.8 +15760.0 114.9 11.6 +15765.0 147.3 13.2 +15770.0 124.9 12.1 +15775.0 126.1 12.2 +15780.0 125.1 12.2 +15785.0 113.7 11.6 +15790.0 150.5 13.4 +15795.0 99.5 10.9 +15800.0 149.6 13.3 +15805.0 104.8 11.2 +15810.0 142.9 13.0 +15815.0 136.9 12.8 +15820.0 122.9 12.1 +15825.0 116.1 11.8 +15830.0 122.1 12.1 +15835.0 128.4 12.4 +15840.0 121.2 12.1 +15845.0 139.6 13.0 +15850.0 133.6 12.7 +15855.0 130.2 12.5 +15860.0 153.1 13.6 +15865.0 127.0 12.4 +15870.0 124.6 12.3 +15875.0 123.6 12.2 +15880.0 111.5 11.6 +15885.0 124.0 12.3 +15890.0 129.1 12.5 +15895.0 124.3 12.3 +15900.0 125.5 12.4 +15905.0 128.3 12.5 +15910.0 121.3 12.2 +15915.0 150.7 13.6 +15920.0 120.0 12.1 +15925.0 120.4 12.2 +15930.0 123.1 12.3 +15935.0 137.8 13.0 +15940.0 164.1 14.2 +15945.0 109.8 11.6 +15950.0 142.2 13.3 +15955.0 131.1 12.7 +15960.0 159.9 14.1 +15965.0 150.3 13.7 +15970.0 180.1 15.0 +15975.0 200.0 15.8 +15980.0 189.4 15.4 +15985.0 179.7 15.0 +15990.0 172.2 14.7 +15995.0 208.4 16.1 +16000.0 201.5 15.9 +16005.0 203.1 16.0 +16010.0 186.8 15.3 +16015.0 200.5 15.9 +16020.0 180.1 15.1 +16025.0 204.0 16.0 +16030.0 200.2 15.9 +16035.0 168.8 14.6 +16040.0 159.4 14.2 +16045.0 172.0 14.8 +16050.0 136.6 13.1 +16055.0 163.2 14.4 +16060.0 161.3 14.3 +16065.0 147.3 13.7 +16070.0 140.9 13.4 +16075.0 151.1 13.9 +16080.0 137.6 13.2 +16085.0 150.4 13.8 +16090.0 133.8 13.1 +16095.0 123.8 12.6 +16100.0 124.0 12.6 +16105.0 113.8 12.1 +16110.0 154.7 14.1 +16115.0 121.6 12.5 +16120.0 143.7 13.6 +16125.0 127.0 12.8 +16130.0 143.7 13.6 +16135.0 143.8 13.6 +16140.0 133.8 13.1 +16145.0 144.1 13.6 +16150.0 88.9 10.7 +16155.0 146.9 13.8 +16160.0 131.6 13.0 +16165.0 139.4 13.4 +16170.0 148.6 13.9 +16175.0 122.9 12.6 +16180.0 146.2 13.8 +16185.0 144.9 13.7 +16190.0 121.8 12.6 +16195.0 145.3 13.7 +16200.0 131.1 13.0 +16205.0 140.3 13.5 +16210.0 135.1 13.2 +16215.0 134.0 13.2 +16220.0 137.9 13.4 +16225.0 104.2 11.6 +16230.0 117.2 12.4 +16235.0 140.8 13.5 +16240.0 126.5 12.8 +16245.0 124.0 12.7 +16250.0 129.2 13.0 +16255.0 118.9 12.5 +16260.0 134.5 13.3 +16265.0 99.4 11.4 +16270.0 113.8 12.2 +16275.0 130.9 13.1 +16280.0 111.4 12.1 +16285.0 132.3 13.2 +16290.0 138.9 13.5 +16295.0 142.9 13.7 +16300.0 151.0 14.1 +16305.0 122.1 12.7 +16310.0 140.5 13.6 +16315.0 145.8 13.8 +16320.0 122.2 12.7 +16325.0 99.9 11.5 +16330.0 132.8 13.2 +16335.0 135.5 13.4 +16340.0 135.5 13.4 +16345.0 142.1 13.7 +16350.0 130.3 13.1 +16355.0 150.1 14.1 +16360.0 125.1 12.8 +16365.0 160.6 14.5 +16370.0 130.4 13.1 +16375.0 146.4 13.9 +16380.0 113.4 12.2 +16385.0 160.9 14.6 +16390.0 138.6 13.5 +16395.0 132.1 13.2 +16400.0 132.1 13.2 +16405.0 141.3 13.7 +16410.0 136.3 13.4 +16415.0 153.5 14.2 +16420.0 136.3 13.4 +16425.0 123.0 12.8 +16430.0 143.2 13.8 +16435.0 143.2 13.8 +16440.0 137.9 13.5 +16445.0 120.7 12.7 +16450.0 163.6 14.7 +16455.0 95.8 11.3 +16460.0 126.3 13.0 +16465.0 150.5 14.2 +16470.0 126.8 13.0 +16475.0 140.1 13.7 +16480.0 140.1 13.7 +16485.0 133.6 13.4 +16490.0 129.9 13.2 +16495.0 142.0 13.8 +16500.0 140.6 13.7 +16505.0 150.1 14.2 +16510.0 124.9 13.0 +16515.0 119.6 12.7 +16520.0 125.1 13.0 +16525.0 130.5 13.2 +16530.0 114.7 12.4 +16535.0 128.2 13.1 +16540.0 147.2 14.1 +16545.0 108.1 12.1 +16550.0 138.1 13.7 +16555.0 138.1 13.7 +16560.0 124.7 13.0 +16565.0 128.8 13.2 +16570.0 144.0 14.0 +16575.0 125.1 13.0 +16580.0 108.8 12.2 +16585.0 141.4 13.9 +16590.0 139.0 13.8 +16595.0 121.4 12.9 +16600.0 125.5 13.1 +16605.0 114.6 12.5 +16610.0 101.1 11.8 +16615.0 131.3 13.4 +16620.0 132.6 13.5 +16625.0 139.7 13.8 +16630.0 134.2 13.6 +16635.0 133.0 13.5 +16640.0 141.3 13.9 +16645.0 133.3 13.5 +16650.0 115.5 12.6 +16655.0 141.6 14.0 +16660.0 145.7 14.2 +16665.0 146.0 14.2 +16670.0 132.3 13.5 +16675.0 130.9 13.4 +16680.0 107.5 12.2 +16685.0 128.3 13.3 +16690.0 136.8 13.7 +16695.0 140.9 14.0 +16700.0 121.6 13.0 +16705.0 130.2 13.4 +16710.0 135.7 13.7 +16715.0 119.1 12.8 +16720.0 115.0 12.6 +16725.0 143.0 14.1 +16730.0 133.3 13.6 +16735.0 166.6 15.2 +16740.0 136.0 13.7 +16745.0 132.2 13.6 +16750.0 125.2 13.2 +16755.0 123.8 13.1 +16760.0 129.5 13.4 +16765.0 121.3 13.0 +16770.0 156.1 14.8 +16775.0 106.0 12.2 +16780.0 101.9 11.9 +16785.0 139.7 14.0 +16790.0 128.5 13.4 +16795.0 120.1 13.0 +16800.0 124.5 13.2 +16805.0 138.6 13.9 +16810.0 127.4 13.4 +16815.0 149.8 14.5 +16820.0 127.6 13.4 +16825.0 113.7 12.6 +16830.0 113.7 12.6 +16835.0 139.1 14.0 +16840.0 150.3 14.5 +16845.0 105.4 12.2 +16850.0 139.2 14.0 +16855.0 123.9 13.2 +16860.0 125.4 13.3 +16865.0 126.8 13.4 +16870.0 126.8 13.4 +16875.0 118.5 12.9 +16880.0 135.5 13.8 +16885.0 166.6 15.3 +16890.0 140.0 14.1 +16895.0 113.1 12.6 +16900.0 162.7 15.2 +16905.0 140.1 14.1 +16910.0 123.3 13.2 +16915.0 111.9 12.6 +16920.0 134.7 13.8 +16925.0 147.5 14.5 +16930.0 123.6 13.2 +16935.0 132.1 13.7 +16940.0 157.8 15.0 +16945.0 133.9 13.8 +16950.0 146.7 14.5 +16955.0 152.4 14.7 +16960.0 108.3 12.4 +16965.0 122.7 13.2 +16970.0 149.8 14.6 +16975.0 156.9 15.0 +16980.0 128.5 13.5 +16985.0 130.0 13.6 +16990.0 120.0 13.1 +16995.0 151.5 14.7 +17000.0 113.0 12.7 +17005.0 140.3 14.2 +17010.0 134.6 13.9 +17015.0 124.6 13.4 +17020.0 163.6 15.3 +17025.0 123.4 13.3 +17030.0 122.0 13.2 +17035.0 130.6 13.7 +17040.0 139.6 14.2 +17045.0 119.4 13.1 +17050.0 143.9 14.4 +17055.0 159.7 15.2 +17060.0 134.2 13.9 +17065.0 129.8 13.7 +17070.0 147.2 14.6 +17075.0 125.9 13.5 +17080.0 117.2 13.0 +17085.0 166.4 15.5 +17090.0 164.9 15.4 +17095.0 126.2 13.5 +17100.0 127.7 13.6 +17105.0 143.6 14.4 +17110.0 139.3 14.2 +17115.0 122.1 13.3 +17120.0 127.9 13.6 +17125.0 132.2 13.9 +17130.0 107.7 12.5 +17135.0 132.6 13.9 +17140.0 134.0 14.0 +17145.0 129.7 13.7 +17150.0 138.6 14.2 +17155.0 125.7 13.6 +17160.0 146.2 14.6 +17165.0 156.4 15.1 +17170.0 139.0 14.3 +17175.0 129.0 13.7 +17180.0 142.2 14.4 +17185.0 131.9 13.9 +17190.0 129.2 13.8 +17195.0 123.5 13.5 +17200.0 147.0 14.7 +17205.0 125.2 13.6 +17210.0 104.6 12.4 +17215.0 159.2 15.3 +17220.0 146.0 14.7 +17225.0 113.7 13.0 +17230.0 118.1 13.2 +17235.0 124.2 13.5 +17240.0 122.7 13.5 +17245.0 130.3 13.9 +17250.0 122.9 13.5 +17255.0 127.5 13.7 +17260.0 111.4 12.9 +17265.0 158.9 15.4 +17270.0 127.7 13.8 +17275.0 114.5 13.0 +17280.0 117.6 13.2 +17285.0 131.1 14.0 +17290.0 120.6 13.4 +17295.0 159.6 15.4 +17300.0 127.0 13.8 +17305.0 146.4 14.8 +17310.0 127.2 13.8 +17315.0 138.0 14.4 +17320.0 121.5 13.5 +17325.0 141.0 14.5 +17330.0 121.6 13.5 +17335.0 146.0 14.8 +17340.0 120.4 13.5 +17345.0 112.9 13.0 +17350.0 129.6 14.0 +17355.0 126.8 13.8 +17360.0 144.9 14.8 +17365.0 137.4 14.4 +17370.0 122.5 13.6 +17375.0 118.2 13.4 +17380.0 131.8 14.1 +17385.0 124.2 13.7 +17390.0 138.3 14.5 +17395.0 145.9 14.9 +17400.0 150.5 15.1 +17405.0 112.5 13.1 +17410.0 117.4 13.4 +17415.0 137.2 14.5 +17420.0 154.0 15.3 +17425.0 126.5 13.9 +17430.0 131.6 14.2 +17435.0 137.7 14.5 +17440.0 146.9 15.0 +17445.0 144.1 14.9 +17450.0 113.7 13.2 +17455.0 167.4 16.0 +17460.0 147.5 15.0 +17465.0 135.4 14.4 +17470.0 144.9 14.9 +17475.0 123.3 13.8 +17480.0 143.3 14.9 +17485.0 151.3 15.3 +17490.0 120.7 13.7 +17495.0 136.1 14.5 +17500.0 159.6 15.7 +17505.0 139.4 14.7 +17510.0 121.0 13.7 +17515.0 136.5 14.6 +17520.0 125.9 14.0 +17525.0 132.3 14.4 +17530.0 144.8 15.0 +17535.0 109.0 13.0 +17540.0 148.2 15.2 +17545.0 107.8 13.0 +17550.0 126.6 14.1 +17555.0 146.9 15.1 +17560.0 108.1 13.0 +17565.0 128.6 14.2 +17570.0 128.6 14.2 +17575.0 136.7 14.7 +17580.0 161.8 15.9 +17585.0 118.1 13.6 +17590.0 119.6 13.7 +17595.0 134.0 14.5 +17600.0 124.5 14.0 +17605.0 134.2 14.6 +17610.0 135.8 14.6 +17615.0 150.3 15.4 +17620.0 144.0 15.1 +17625.0 122.1 13.9 +17630.0 147.7 15.3 +17635.0 127.0 14.2 +17640.0 133.4 14.6 +17645.0 143.2 15.1 +17650.0 116.4 13.6 +17655.0 124.4 14.1 +17660.0 116.4 13.6 +17665.0 116.6 13.6 +17670.0 129.6 14.4 +17675.0 129.6 14.4 +17680.0 129.6 14.4 +17685.0 147.5 15.4 +17690.0 143.0 15.2 +17695.0 130.1 14.5 +17700.0 128.5 14.4 +17705.0 117.8 13.8 +17710.0 146.8 15.4 +17715.0 125.9 14.3 +17720.0 145.2 15.3 +17725.0 131.2 14.6 +17730.0 128.0 14.4 +17735.0 132.8 14.7 +17740.0 132.8 14.7 +17745.0 136.6 14.9 +17750.0 99.2 12.7 +17755.0 125.2 14.3 +17760.0 122.5 14.1 +17765.0 120.9 14.0 +17770.0 140.5 15.1 +17775.0 151.9 15.7 +17780.0 116.4 13.8 +17785.0 132.8 14.8 +17790.0 127.8 14.5 +17795.0 142.6 15.3 +17800.0 116.8 13.9 +17805.0 148.1 15.6 +17810.0 158.0 16.1 +17815.0 150.0 15.7 +17820.0 130.5 14.7 +17825.0 133.8 14.9 +17830.0 142.0 15.3 +17835.0 145.6 15.5 +17840.0 159.2 16.2 +17845.0 165.8 16.6 +17850.0 157.5 16.2 +17855.0 147.9 15.7 +17860.0 151.5 15.9 +17865.0 133.2 14.9 +17870.0 139.8 15.3 +17875.0 158.5 16.3 +17880.0 122.0 14.3 +17885.0 142.0 15.4 +17890.0 142.2 15.4 +17895.0 179.1 17.3 +17900.0 144.2 15.5 +17905.0 152.5 16.0 +17910.0 139.4 15.3 +17915.0 115.9 14.0 +17920.0 151.4 16.0 +17925.0 119.5 14.2 +17930.0 143.3 15.5 +17935.0 153.4 16.1 +17940.0 160.4 16.5 +17945.0 169.2 16.9 +17950.0 126.9 14.7 +17955.0 138.8 15.3 +17960.0 145.8 15.7 +17965.0 183.5 17.7 +17970.0 166.5 16.8 +17975.0 151.6 16.1 +17980.0 156.7 16.3 +17985.0 148.5 15.9 +17990.0 189.5 18.0 +17995.0 200.2 18.5 +18000.0 145.7 15.8 +18005.0 168.0 17.0 +18010.0 157.7 16.4 +18015.0 171.7 17.2 +18020.0 206.5 18.8 +18025.0 172.1 17.2 +18030.0 165.2 16.9 +18035.0 181.0 17.7 +18040.0 145.1 15.8 +18045.0 148.6 16.0 +18050.0 153.8 16.3 +18055.0 142.0 15.7 +18060.0 142.3 15.7 +18065.0 152.7 16.3 +18070.0 145.7 15.9 +18075.0 130.7 15.1 +18080.0 111.5 13.9 +18085.0 149.8 16.2 +18090.0 106.3 13.6 +18095.0 129.4 15.0 +18100.0 136.4 15.4 +18105.0 134.7 15.3 +18110.0 103.2 13.4 +18115.0 158.1 16.7 +18120.0 119.5 14.5 +18125.0 142.3 15.8 +18130.0 132.1 15.2 +18135.0 139.4 15.7 +18140.0 141.2 15.8 +18145.0 141.2 15.8 +18150.0 113.2 14.1 +18155.0 113.4 14.2 +18160.0 129.4 15.1 +18165.0 129.4 15.1 +18170.0 165.2 17.1 +18175.0 117.5 14.5 +18180.0 117.5 14.5 +18185.0 112.4 14.2 +18190.0 137.4 15.7 +18195.0 148.3 16.3 +18200.0 130.5 15.3 +18205.0 121.8 14.8 +18210.0 111.3 14.1 +18215.0 129.2 15.2 +18220.0 136.4 15.6 +18225.0 125.9 15.0 +18230.0 156.9 16.8 +18235.0 135.2 15.6 +18240.0 140.7 15.9 +18245.0 130.1 15.3 +18250.0 137.6 15.8 +18255.0 143.0 16.1 +18260.0 132.5 15.5 +18265.0 156.0 16.8 +18270.0 118.2 14.7 +18275.0 127.3 15.2 +18280.0 155.0 16.8 +18285.0 155.0 16.8 +18290.0 127.9 15.3 +18295.0 126.1 15.2 +18300.0 130.0 15.4 +18305.0 135.5 15.8 +18310.0 124.8 15.1 +18315.0 152.7 16.8 +18320.0 141.7 16.1 +18325.0 149.1 16.6 +18330.0 132.8 15.6 +18335.0 105.4 14.0 +18340.0 144.2 16.3 +18345.0 131.2 15.6 +18350.0 129.7 15.5 +18355.0 143.0 16.3 +18360.0 118.8 14.9 +18365.0 128.1 15.4 +18370.0 121.2 15.0 +18375.0 156.6 17.1 +18380.0 136.1 15.9 +18385.0 113.7 14.6 +18390.0 101.1 13.8 +18395.0 138.5 16.1 +18400.0 140.4 16.2 +18405.0 144.1 16.4 +18410.0 116.5 14.8 +18415.0 146.6 16.6 +18420.0 122.2 15.2 +18425.0 122.2 15.2 +18430.0 137.8 16.1 +18435.0 117.1 14.9 +18440.0 143.5 16.5 +18445.0 129.0 15.6 +18450.0 130.9 15.8 +18455.0 117.6 14.9 +18460.0 134.7 16.0 +18465.0 135.2 16.0 +18470.0 146.6 16.7 +18475.0 169.5 18.0 +18480.0 139.0 16.3 +18485.0 141.6 16.5 +18490.0 118.6 15.1 +18495.0 177.9 18.5 +18500.0 138.1 16.3 +18505.0 126.8 15.6 +18510.0 151.8 17.1 +18515.0 101.8 14.0 +18520.0 136.7 16.2 +18525.0 154.5 17.3 +18530.0 144.8 16.7 +18535.0 135.2 16.2 +18540.0 147.1 16.9 +18545.0 120.3 15.3 +18550.0 145.5 16.8 +18555.0 124.5 15.6 +18560.0 138.1 16.4 +18565.0 136.4 16.3 +18570.0 122.8 15.5 +18575.0 173.9 18.4 +18580.0 140.7 16.6 +18585.0 131.1 16.0 +18590.0 146.8 16.9 +18595.0 119.7 15.3 +18600.0 149.1 17.1 +18605.0 147.5 17.0 +18610.0 145.6 16.9 +18615.0 142.0 16.7 +18620.0 124.2 15.7 +18625.0 126.5 15.8 +18630.0 130.8 16.1 +18635.0 140.7 16.7 +18640.0 144.6 16.9 +18645.0 137.0 16.5 +18650.0 147.3 17.1 +18655.0 161.2 17.9 +18660.0 137.7 16.6 +18665.0 129.7 16.1 +18670.0 146.0 17.1 +18675.0 134.0 16.4 +18680.0 154.3 17.6 +18685.0 136.6 16.6 +18690.0 138.6 16.7 +18695.0 128.6 16.1 +18700.0 128.9 16.1 +18705.0 151.4 17.5 +18710.0 157.5 17.8 +18715.0 151.4 17.5 +18720.0 147.7 17.3 +18725.0 138.0 16.7 +18730.0 146.1 17.2 +18735.0 164.4 18.3 +18740.0 126.4 16.0 +18745.0 106.0 14.7 +18750.0 116.2 15.4 +18755.0 116.2 15.4 +18760.0 157.6 18.0 +18765.0 153.5 17.7 +18770.0 120.8 15.7 +18775.0 165.8 18.4 +18780.0 170.6 18.7 +18785.0 148.0 17.4 +18790.0 139.8 17.0 +18795.0 178.8 19.2 +18800.0 134.2 16.7 +18805.0 138.4 16.9 +18810.0 163.2 18.4 +18815.0 161.4 18.3 +18820.0 114.2 15.4 +18825.0 143.2 17.2 +18830.0 197.2 20.2 +18835.0 118.6 15.7 +18840.0 168.9 18.8 +18845.0 135.6 16.8 +18850.0 148.1 17.6 +18855.0 150.5 17.7 +18860.0 119.5 15.8 +18865.0 150.9 17.8 +18870.0 142.9 17.3 +18875.0 113.5 15.4 +18880.0 153.7 18.0 +18885.0 130.6 16.6 +18890.0 145.6 17.5 +18895.0 156.6 18.2 +18900.0 127.0 16.4 +18905.0 118.5 15.8 +18910.0 112.4 15.4 +18915.0 108.4 15.2 +18920.0 174.3 19.2 +18925.0 132.1 16.8 +18930.0 155.5 18.2 +18935.0 151.7 18.0 +18940.0 123.9 16.3 +18945.0 160.6 18.5 +18950.0 145.6 17.7 +18955.0 150.3 18.0 +18960.0 146.0 17.7 +18965.0 167.8 19.0 +18970.0 124.8 16.4 +18975.0 120.8 16.1 +18980.0 125.1 16.4 +18985.0 108.1 15.3 +18990.0 160.0 18.6 +18995.0 149.5 18.0 +19000.0 119.4 16.1 +19005.0 130.3 16.8 +19010.0 108.6 15.4 +19015.0 126.3 16.6 +19020.0 178.9 19.8 +19025.0 130.9 16.9 +19030.0 133.1 17.0 +19035.0 153.0 18.3 +19040.0 120.6 16.3 +19045.0 127.1 16.7 +19050.0 188.5 20.3 +19055.0 118.9 16.2 +19060.0 169.5 19.3 +19065.0 158.5 18.7 +19070.0 145.3 17.9 +19075.0 137.2 17.4 +19080.0 154.9 18.5 +19085.0 152.6 18.4 +19090.0 154.9 18.5 +19095.0 148.9 18.2 +19100.0 128.9 16.9 +19105.0 168.9 19.4 +19110.0 113.6 15.9 +19115.0 140.7 17.7 +19120.0 151.9 18.4 +19125.0 118.4 16.3 +19130.0 157.1 18.8 +19135.0 143.6 17.9 +19140.0 154.8 18.6 +19145.0 139.1 17.7 +19150.0 157.9 18.9 +19155.0 146.6 18.2 +19160.0 119.5 16.4 +19165.0 146.6 18.2 +19170.0 154.0 18.7 +19175.0 135.9 17.5 +19180.0 163.1 19.2 +19185.0 140.7 17.9 +19190.0 118.3 16.4 +19195.0 125.2 16.9 +19200.0 132.0 17.3 +19205.0 164.3 19.4 +19210.0 150.9 18.6 +19215.0 130.3 17.3 +19220.0 130.3 17.3 +19225.0 112.3 16.0 +19230.0 167.7 19.6 +19235.0 108.0 15.8 +19240.0 177.3 20.2 +19245.0 168.1 19.7 +19250.0 129.3 17.3 +19255.0 122.3 16.8 +19260.0 120.3 16.7 +19265.0 118.0 16.5 +19270.0 134.5 17.7 +19275.0 169.3 19.8 +19280.0 106.9 15.8 +19285.0 162.7 19.4 +19290.0 109.5 16.0 +19295.0 139.8 18.0 +19300.0 133.1 17.6 +19305.0 130.7 17.5 +19310.0 152.2 18.9 +19315.0 173.6 20.2 +19320.0 159.5 19.3 +19325.0 131.3 17.6 +19330.0 136.3 17.9 +19335.0 98.9 15.3 +19340.0 162.5 19.6 +19345.0 146.3 18.6 +19350.0 158.1 19.3 +19355.0 158.5 19.4 +19360.0 127.8 17.4 +19365.0 125.7 17.3 +19370.0 140.3 18.3 +19375.0 180.7 20.7 +19380.0 145.0 18.6 +19385.0 131.0 17.7 +19390.0 157.6 19.4 +19395.0 136.1 18.0 +19400.0 131.3 17.7 +19405.0 138.8 18.2 +19410.0 131.9 17.8 +19415.0 131.9 17.8 +19420.0 124.7 17.3 +19425.0 166.2 20.0 +19430.0 156.6 19.4 +19435.0 108.4 16.2 +19440.0 137.3 18.2 +19445.0 162.2 19.8 +19450.0 147.6 18.9 +19455.0 125.9 17.5 +19460.0 130.7 17.8 +19465.0 136.2 18.2 +19470.0 158.1 19.6 +19475.0 165.4 20.1 +19480.0 121.6 17.2 +19485.0 144.3 18.8 +19490.0 151.7 19.3 +19495.0 149.2 19.1 +19500.0 110.3 16.4 +19505.0 122.9 17.4 +19510.0 157.4 19.7 +19515.0 130.3 17.9 +19520.0 147.9 19.1 +19525.0 138.3 18.5 +19530.0 98.8 15.6 +19535.0 165.5 20.2 +19540.0 146.1 19.0 +19545.0 149.0 19.2 +19550.0 158.9 19.9 +19555.0 154.3 19.6 +19560.0 104.8 16.2 +19565.0 137.2 18.5 +19570.0 122.2 17.5 +19575.0 135.0 18.4 +19580.0 145.3 19.1 +19585.0 152.9 19.6 +19590.0 130.3 18.1 +19595.0 125.5 17.8 +19600.0 151.0 19.5 +19605.0 156.0 19.8 +19610.0 121.1 17.5 +19615.0 138.7 18.7 +19620.0 161.8 20.2 +19625.0 156.7 19.9 +19630.0 144.3 19.1 +19635.0 124.0 17.7 +19640.0 142.1 19.0 +19645.0 134.5 18.5 +19650.0 155.1 19.9 +19655.0 132.2 18.3 +19660.0 109.6 16.7 +19665.0 163.1 20.4 +19670.0 122.5 17.7 +19675.0 104.7 16.3 +19680.0 166.3 20.6 +19685.0 107.7 16.6 +19690.0 120.5 17.6 +19695.0 130.8 18.3 +19700.0 141.4 19.1 +19705.0 128.8 18.2 +19710.0 131.3 18.4 +19715.0 131.3 18.4 +19720.0 160.1 20.3 +19725.0 126.8 18.1 +19730.0 142.3 19.2 +19735.0 160.4 20.4 +19740.0 137.8 18.9 +19745.0 132.6 18.6 +19750.0 140.4 19.1 +19755.0 130.0 18.4 +19760.0 156.7 20.2 +19765.0 141.0 19.2 +19770.0 120.1 17.7 +19775.0 104.5 16.5 +19780.0 157.4 20.3 +19785.0 181.0 21.8 +19790.0 120.7 17.8 +19795.0 126.5 18.3 +19800.0 176.5 21.6 +19805.0 139.6 19.2 +19810.0 163.4 20.7 +19815.0 150.8 20.0 +19820.0 148.2 19.8 +19825.0 121.7 17.9 +19830.0 121.7 17.9 +19835.0 127.6 18.4 +19840.0 114.3 17.4 +19845.0 151.5 20.1 +19850.0 146.2 19.7 +19855.0 146.8 19.8 +19860.0 146.8 19.8 +19865.0 120.1 17.9 +19870.0 120.3 17.9 +19875.0 152.8 20.2 +19880.0 166.2 21.1 +19885.0 136.7 19.1 +19890.0 153.2 20.3 +19895.0 129.3 18.7 +19900.0 115.9 17.7 +19905.0 115.9 17.7 +19910.0 97.3 16.2 +19915.0 119.2 18.0 +19920.0 138.1 19.3 +19925.0 105.8 16.9 +19930.0 157.4 20.7 +19935.0 168.6 21.4 +19940.0 108.8 17.2 +19945.0 100.8 16.6 +19950.0 163.5 21.1 +19955.0 95.6 16.2 +19960.0 139.3 19.5 +19965.0 134.1 19.2 +19970.0 115.0 17.7 +19975.0 126.2 18.6 +19980.0 121.0 18.2 +19985.0 167.7 21.5 +19990.0 137.5 19.4 +19995.0 135.0 19.3 +20000.0 118.8 18.1 +20005.0 138.2 19.5 +20010.0 127.4 18.8 +20015.0 124.7 18.6 +20020.0 125.0 18.6 +20025.0 166.6 21.5 +20030.0 133.6 19.3 +20035.0 125.2 18.7 +20040.0 170.1 21.8 +20045.0 119.9 18.3 +20050.0 137.0 19.6 +20055.0 117.7 18.2 +20060.0 117.7 18.2 +20065.0 137.3 19.6 +20070.0 112.3 17.8 +20075.0 152.0 20.7 +20080.0 132.3 19.3 +20085.0 126.7 18.9 +20090.0 124.1 18.7 +20095.0 141.3 20.0 +20100.0 141.3 20.0 +20105.0 147.0 20.4 +20110.0 119.3 18.4 +20115.0 147.7 20.5 +20120.0 156.2 21.1 +20125.0 102.2 17.0 +20130.0 128.3 19.1 +20135.0 128.3 19.1 +20140.0 151.2 20.8 +20145.0 134.0 19.6 +20150.0 140.3 20.0 +20155.0 143.2 20.2 +20160.0 137.4 19.8 +20165.0 143.5 20.3 +20170.0 106.5 17.5 +20175.0 164.0 21.7 +20180.0 138.1 19.9 +20185.0 141.3 20.2 +20190.0 133.0 19.6 +20195.0 112.8 18.1 +20200.0 147.5 20.6 +20205.0 162.2 21.7 +20210.0 110.3 17.9 +20215.0 113.2 18.1 +20220.0 142.2 20.3 +20225.0 130.9 19.5 +20230.0 183.7 23.1 +20235.0 113.7 18.2 +20240.0 143.2 20.5 +20245.0 146.4 20.7 +20250.0 111.3 18.1 +20255.0 137.7 20.1 +20260.0 132.2 19.7 +20265.0 138.3 20.2 +20270.0 167.8 22.2 +20275.0 111.9 18.1 +20280.0 85.5 15.9 +20285.0 136.0 20.1 +20290.0 144.9 20.7 +20295.0 109.6 18.0 +20300.0 145.2 20.7 +20305.0 124.7 19.2 +20310.0 106.9 17.8 +20315.0 172.6 22.7 +20320.0 122.0 19.1 +20325.0 116.3 18.6 +20330.0 122.2 19.1 +20335.0 128.5 19.6 +20340.0 146.4 20.9 +20345.0 116.8 18.7 +20350.0 150.1 21.2 +20355.0 96.1 17.0 +20360.0 180.1 23.3 +20365.0 153.5 21.5 +20370.0 135.7 20.2 +20375.0 135.7 20.2 +20380.0 159.8 22.0 +20385.0 133.0 20.1 +20390.0 160.5 22.0 +20395.0 103.0 17.7 +20400.0 154.5 21.6 +20405.0 133.6 20.1 +20410.0 133.9 20.2 +20415.0 136.9 20.4 +20420.0 167.4 22.6 +20425.0 195.6 24.4 +20430.0 146.7 21.2 +20435.0 119.2 19.1 +20440.0 180.3 23.5 +20445.0 129.0 19.9 +20450.0 141.2 20.8 +20455.0 132.0 20.1 +20460.0 168.9 22.8 +20465.0 132.6 20.2 +20470.0 175.8 23.3 +20475.0 135.7 20.5 +20480.0 123.8 19.6 +20485.0 161.0 22.3 +20490.0 142.4 21.0 +20495.0 136.2 20.5 +20500.0 155.5 22.0 +20505.0 143.0 21.1 +20510.0 139.9 20.9 +20515.0 133.7 20.4 +20520.0 146.9 21.4 +20525.0 106.3 18.2 +20530.0 125.0 19.8 +20535.0 153.4 21.9 +20540.0 131.8 20.3 +20545.0 116.1 19.1 +20550.0 125.5 19.8 +20555.0 147.7 21.5 +20560.0 126.0 19.9 +20565.0 132.3 20.4 +20570.0 116.6 19.2 +20575.0 116.8 19.2 +20580.0 129.7 20.3 +20585.0 104.4 18.2 +20590.0 139.2 21.0 +20595.0 145.8 21.5 +20600.0 143.0 21.3 +20605.0 120.7 19.6 +20610.0 159.1 22.5 +20615.0 152.8 22.1 +20620.0 111.6 18.9 +20625.0 181.8 24.1 +20630.0 108.6 18.6 +20635.0 166.1 23.0 +20640.0 134.4 20.7 +20645.0 160.0 22.6 +20650.0 137.9 21.0 +20655.0 134.7 20.8 +20660.0 192.8 24.9 +20665.0 144.9 21.6 +20670.0 141.7 21.4 +20675.0 106.3 18.5 +20680.0 122.6 19.9 +20685.0 164.9 23.1 +20690.0 135.8 21.0 +20695.0 175.1 23.8 +20700.0 158.9 22.7 +20705.0 126.7 20.3 +20710.0 152.7 22.3 +20715.0 133.5 20.8 +20720.0 214.9 26.5 +20725.0 140.3 21.4 +20730.0 143.6 21.6 +20735.0 137.4 21.2 +20740.0 121.3 19.9 +20745.0 98.4 18.0 +20750.0 147.5 22.0 +20755.0 151.2 22.3 +20760.0 148.2 22.1 +20765.0 141.6 21.6 +20770.0 138.3 21.3 +20775.0 158.5 22.9 +20780.0 125.7 20.4 +20785.0 122.4 20.1 +20790.0 125.7 20.4 +20795.0 152.8 22.5 +20800.0 209.3 26.4 +20805.0 113.0 19.4 +20810.0 149.5 22.3 +20815.0 153.6 22.6 +20820.0 103.5 18.6 +20825.0 106.8 18.9 +20830.0 156.9 22.9 +20835.0 103.9 18.7 +20840.0 140.8 21.7 +20845.0 124.0 20.4 +20850.0 114.2 19.6 +20855.0 138.0 21.6 +20860.0 90.9 17.5 +20865.0 124.6 20.5 +20870.0 145.1 22.1 +20875.0 165.7 23.7 +20880.0 104.8 18.8 +20885.0 125.1 20.6 +20890.0 118.6 20.0 +20895.0 112.0 19.5 +20900.0 162.9 23.5 +20905.0 173.1 24.2 +20910.0 122.5 20.4 +20915.0 143.2 22.1 +20920.0 129.6 21.0 +20925.0 136.6 21.6 +20930.0 171.1 24.2 +20935.0 126.6 20.8 +20940.0 181.4 24.9 +20945.0 126.9 20.9 +20950.0 123.8 20.6 +20955.0 158.2 23.3 +20960.0 137.5 21.7 +20965.0 158.5 23.4 +20970.0 124.3 20.7 +20975.0 151.9 22.9 +20980.0 141.8 22.1 +20985.0 155.7 23.2 +20990.0 128.3 21.1 +20995.0 117.9 20.2 +21000.0 135.5 21.7 +21005.0 125.1 20.8 +21010.0 167.3 24.1 +21015.0 146.4 22.6 +21020.0 181.6 25.2 +21025.0 132.7 21.5 +21030.0 105.1 19.2 +21035.0 129.8 21.3 +21040.0 147.4 22.7 +21045.0 161.4 23.8 +21050.0 94.9 18.3 +21055.0 123.3 20.8 +21060.0 172.7 24.7 +21065.0 112.8 19.9 +21070.0 165.9 24.2 +21075.0 137.9 22.1 +21080.0 92.0 18.0 +21085.0 141.5 22.4 +21090.0 120.5 20.7 +21095.0 131.4 21.6 +21100.0 142.1 22.5 +21105.0 152.7 23.3 +21110.0 121.3 20.8 +21115.0 164.1 24.2 +21120.0 164.1 24.2 +21125.0 178.3 25.2 +21130.0 129.1 21.5 +21135.0 143.4 22.7 +21140.0 179.2 25.3 +21145.0 97.0 18.7 +21150.0 147.6 23.0 +21155.0 136.8 22.2 +21160.0 129.6 21.6 +21165.0 122.8 21.1 +21170.0 140.9 22.6 +21175.0 166.2 24.5 +21180.0 130.1 21.7 +21185.0 119.8 20.8 +21190.0 127.0 21.5 +21195.0 159.7 24.1 +21200.0 159.7 24.1 +21205.0 174.9 25.2 +21210.0 142.1 22.8 +21215.0 120.2 20.9 +21220.0 131.5 21.9 +21225.0 157.4 24.0 +21230.0 113.5 20.4 +21235.0 146.4 23.1 +21240.0 150.4 23.5 +21245.0 102.9 19.5 +21250.0 161.8 24.4 +21255.0 202.2 27.3 +21260.0 128.9 21.8 +21265.0 169.9 25.1 +21270.0 114.5 20.6 +21275.0 136.7 22.5 +21280.0 174.0 25.4 +21285.0 155.7 24.0 +21290.0 129.8 21.9 +21295.0 163.5 24.7 +21300.0 144.9 23.2 +21305.0 175.2 25.6 +21310.0 164.0 24.7 +21315.0 138.3 22.7 +21320.0 164.4 24.8 +21325.0 191.0 26.7 +21330.0 127.3 21.8 +21335.0 112.6 20.6 +21340.0 142.6 23.1 +21345.0 158.0 24.4 +21350.0 135.7 22.6 +21355.0 162.1 24.7 +21360.0 105.6 20.0 +21365.0 151.2 23.9 +21370.0 159.0 24.5 +21375.0 136.3 22.7 +21380.0 163.3 24.9 +21385.0 136.7 22.8 +21390.0 171.3 25.5 +21395.0 152.2 24.1 +21400.0 133.5 22.6 +21405.0 141.4 23.3 +21410.0 141.4 23.3 +21415.0 172.0 25.6 +21420.0 149.3 23.9 +21425.0 134.4 22.7 +21430.0 111.3 20.7 +21435.0 176.6 26.0 +21440.0 207.6 28.2 +21445.0 146.4 23.7 +21450.0 111.7 20.7 +21455.0 157.9 24.7 +21460.0 150.6 24.1 +21465.0 123.8 21.9 +21470.0 181.8 26.5 +21475.0 143.1 23.5 +21480.0 132.2 22.7 +21485.0 128.3 22.3 +21490.0 120.5 21.6 +21495.0 186.6 26.9 +21500.0 148.3 24.1 +21505.0 191.3 27.3 +21510.0 113.2 21.0 +21515.0 160.0 25.0 +21520.0 168.6 25.7 +21525.0 121.6 21.8 +21530.0 109.8 20.8 +21535.0 141.4 23.6 +21540.0 122.0 21.9 +21545.0 165.3 25.5 +21550.0 125.9 22.3 +21555.0 134.0 23.0 +21560.0 122.4 22.0 +21565.0 126.4 22.3 +21570.0 134.3 23.0 +21575.0 158.3 25.0 +21580.0 103.1 20.2 +21585.0 130.9 22.8 +21590.0 167.0 25.8 +21595.0 135.5 23.2 +21600.0 139.4 23.6 +21605.0 151.4 24.6 +21610.0 155.7 24.9 +21615.0 80.1 17.9 +21620.0 172.1 26.2 +21625.0 160.1 25.3 +21630.0 184.5 27.2 +21635.0 172.9 26.4 +21640.0 132.7 23.1 +21645.0 112.6 21.3 +21650.0 125.0 22.5 +21655.0 177.9 26.8 +21660.0 141.5 23.9 +21665.0 141.8 24.0 +21670.0 190.4 27.8 +21675.0 203.1 28.7 +21680.0 77.2 17.7 +21685.0 154.7 25.1 +21690.0 134.3 23.4 +21695.0 118.3 22.0 +21700.0 159.1 25.5 +21705.0 130.8 23.1 +21710.0 151.3 24.9 +21715.0 135.2 23.5 +21720.0 131.3 23.2 +21725.0 135.4 23.6 +21730.0 123.1 22.5 +21735.0 139.8 24.0 +21740.0 94.8 19.8 +21745.0 148.4 24.7 +21750.0 164.9 26.1 +21755.0 169.6 26.5 +21760.0 120.2 22.3 +21765.0 124.3 22.7 +21770.0 149.2 24.9 +21775.0 149.9 25.0 +21780.0 133.2 23.6 +21785.0 112.4 21.6 +21790.0 141.6 24.3 +21795.0 108.8 21.3 +21800.0 175.7 27.1 +21805.0 154.8 25.4 +21810.0 133.8 23.7 +21815.0 163.9 26.2 +21820.0 168.1 26.6 +21825.0 142.9 24.5 +21830.0 118.0 22.3 +21835.0 152.0 25.3 +21840.0 101.3 20.7 +21845.0 152.0 25.3 +21850.0 152.7 25.4 +21855.0 156.9 25.8 +21860.0 144.2 24.7 +21865.0 152.7 25.4 +21870.0 153.2 25.5 +21875.0 144.7 24.8 +21880.0 161.7 26.2 +21885.0 178.8 27.6 +21890.0 188.2 28.4 +21895.0 111.2 21.8 +21900.0 119.8 22.6 +21905.0 124.3 23.1 +21910.0 124.6 23.1 +21915.0 124.6 23.1 +21920.0 116.0 22.3 +21925.0 150.7 25.5 +21930.0 129.4 23.6 +21935.0 159.6 26.2 +21940.0 189.8 28.6 +21945.0 134.0 24.1 +21950.0 155.9 26.0 +21955.0 164.6 26.7 +21960.0 112.9 22.1 +21965.0 178.0 27.8 +21970.0 156.7 26.1 +21975.0 143.7 25.0 +21980.0 165.7 26.9 +21985.0 157.0 26.2 +21990.0 192.4 29.0 +21995.0 157.4 26.2 +22000.0 144.5 25.2 +22005.0 105.1 21.5 +22010.0 149.3 25.6 +22015.0 118.5 22.8 +22020.0 136.4 24.5 +22025.0 136.4 24.5 +22030.0 202.8 29.9 +22035.0 132.5 24.2 +22040.0 159.0 26.5 +22045.0 150.5 25.8 +22050.0 132.8 24.2 +22055.0 119.7 23.0 +22060.0 93.1 20.3 +22065.0 168.9 27.4 +22070.0 151.1 25.9 +22075.0 173.7 27.8 +22080.0 111.3 22.3 +22085.0 142.8 25.2 +22090.0 156.5 26.5 +22095.0 143.1 25.3 +22100.0 138.6 24.9 +22105.0 152.5 26.2 +22110.0 125.9 23.8 +22115.0 139.4 25.0 +22120.0 125.9 23.8 +22125.0 121.7 23.4 +22130.0 144.6 25.6 +22135.0 189.8 29.3 +22140.0 99.4 21.2 +22145.0 158.6 26.8 +22150.0 131.7 24.5 +22155.0 181.7 28.7 +22160.0 131.7 24.5 +22165.0 141.5 25.4 +22170.0 173.4 28.1 +22175.0 182.6 28.9 +22180.0 146.1 25.8 +22185.0 137.7 25.1 +22190.0 128.5 24.3 +22195.0 160.6 27.1 +22200.0 188.1 29.4 +22205.0 170.5 28.0 +22210.0 138.3 25.2 +22215.0 207.4 30.9 +22220.0 171.0 28.1 +22225.0 162.1 27.4 +22230.0 148.2 26.2 +22235.0 157.4 27.0 +22240.0 143.8 25.8 +22245.0 93.0 20.8 +22250.0 190.6 29.8 +22255.0 167.3 27.9 +22260.0 107.2 22.3 +22265.0 158.8 27.2 +22270.0 172.8 28.4 +22275.0 163.7 27.7 +22280.0 164.1 27.7 +22285.0 178.2 28.9 +22290.0 164.1 27.7 +22295.0 136.3 25.3 +22300.0 136.6 25.4 +22305.0 136.6 25.4 +22310.0 122.5 24.0 +22315.0 155.8 27.1 +22320.0 118.4 23.7 +22325.0 118.4 23.7 +22330.0 108.9 22.7 +22335.0 109.1 22.8 +22340.0 133.2 25.2 +22345.0 137.9 25.6 +22350.0 109.7 22.9 +22355.0 157.3 27.4 +22360.0 157.6 27.4 +22365.0 138.5 25.7 +22370.0 157.8 27.5 +22375.0 138.7 25.8 +22380.0 167.8 28.4 +22385.0 153.4 27.1 +22390.0 139.4 25.9 +22395.0 125.0 24.5 +22400.0 168.6 28.5 +22405.0 183.5 29.8 +22410.0 140.0 26.0 +22415.0 140.0 26.0 +22420.0 164.4 28.2 +22425.0 174.4 29.1 +22430.0 159.9 27.8 +22435.0 101.7 22.2 +22440.0 116.6 23.8 +22445.0 126.5 24.8 +22450.0 175.2 29.2 +22455.0 150.9 27.1 +22460.0 190.6 30.5 +22465.0 156.4 27.7 +22470.0 180.9 29.7 +22475.0 141.8 26.3 +22480.0 166.8 28.6 +22485.0 147.2 26.9 +22490.0 157.0 27.8 +22495.0 132.8 25.6 +22500.0 128.1 25.1 +22505.0 211.9 32.3 +22510.0 157.7 27.9 +22515.0 182.8 30.0 +22520.0 138.6 26.2 +22525.0 133.7 25.7 +22530.0 207.9 32.1 +22535.0 104.4 22.8 +22540.0 164.0 28.6 +22545.0 144.1 26.8 +22550.0 104.4 22.8 +22555.0 124.8 25.0 +22560.0 199.7 31.6 +22565.0 99.9 22.3 +22570.0 154.8 27.8 +22575.0 120.3 24.6 +22580.0 165.4 28.8 +22585.0 100.2 22.4 +22590.0 115.5 24.1 +22595.0 125.8 25.2 +22600.0 135.9 26.1 +22605.0 161.0 28.5 +22610.0 141.2 26.7 +22615.0 217.4 33.2 +22620.0 161.8 28.6 +22625.0 141.6 26.8 +22630.0 192.5 31.2 +22635.0 132.0 25.9 +22640.0 152.3 27.8 +22645.0 142.4 26.9 +22650.0 218.7 33.3 +22655.0 163.1 28.8 +22660.0 122.3 25.0 +22665.0 122.5 25.0 +22670.0 153.1 28.0 +22675.0 158.5 28.5 +22680.0 117.6 24.5 +22685.0 153.7 28.1 +22690.0 189.5 31.2 +22695.0 164.3 29.0 +22700.0 133.5 26.2 +22705.0 102.9 23.0 +22710.0 144.0 27.2 +22715.0 139.3 26.8 +22720.0 144.8 27.4 +22725.0 144.8 27.4 +22730.0 114.0 24.3 +22735.0 150.3 27.9 +22740.0 207.7 32.8 +22745.0 109.0 23.8 +22750.0 156.2 28.5 +22755.0 197.8 32.1 +22760.0 125.2 25.6 +22765.0 125.2 25.6 +22770.0 177.7 30.5 +22775.0 136.2 26.7 +22780.0 162.4 29.2 +22785.0 125.7 25.7 +22790.0 178.6 30.6 +22795.0 147.3 27.8 +22800.0 100.0 22.9 +22805.0 142.0 27.3 +22810.0 137.2 26.9 +22815.0 142.7 27.5 +22820.0 163.9 29.4 +22825.0 179.8 30.8 +22830.0 127.4 26.0 +22835.0 201.7 32.7 +22840.0 143.3 27.6 +22845.0 159.3 29.1 +22850.0 112.0 24.4 +22855.0 181.3 31.1 +22860.0 128.0 26.1 +22865.0 181.3 31.1 +22870.0 208.8 33.4 +22875.0 192.7 32.1 +22880.0 117.8 25.1 +22885.0 160.6 29.3 +22890.0 188.1 31.8 +22895.0 166.6 29.9 +22900.0 177.3 30.9 +22905.0 204.7 33.2 +22910.0 210.3 33.7 +22915.0 210.3 33.7 +22920.0 172.6 30.5 +22925.0 156.7 29.1 +22930.0 195.1 32.5 +22935.0 146.3 28.2 +22940.0 157.1 29.2 +22945.0 130.2 26.6 +22950.0 157.7 29.3 +22955.0 152.3 28.8 +22960.0 147.2 28.3 +22965.0 147.5 28.4 +22970.0 125.6 26.2 +22975.0 158.4 29.4 +22980.0 191.6 32.4 +22985.0 175.6 31.0 +22990.0 197.6 32.9 +22995.0 137.2 27.4 +23000.0 187.0 32.1 +23005.0 154.3 29.2 +23010.0 165.3 30.2 +23015.0 127.0 26.5 +23020.0 165.6 30.2 +23025.0 127.3 26.5 +23030.0 182.7 31.8 +23035.0 188.6 32.3 +23040.0 133.1 27.2 +23045.0 172.3 30.9 +23050.0 188.9 32.4 +23055.0 228.3 35.6 +23060.0 161.5 30.0 +23065.0 195.3 33.0 +23070.0 156.2 29.5 +23075.0 139.8 28.0 +23080.0 123.0 26.2 +23085.0 173.7 31.2 +23090.0 140.4 28.1 +23095.0 213.4 34.6 +23100.0 230.3 36.0 +23105.0 191.4 32.8 +23110.0 203.3 33.9 +23115.0 276.7 39.5 +23120.0 197.6 33.4 +23125.0 181.0 32.0 +23130.0 136.0 27.8 +23135.0 164.3 30.5 +23140.0 209.6 34.5 +23145.0 176.7 31.7 +23150.0 176.7 31.7 +23155.0 176.7 31.7 +23160.0 159.6 30.2 +23165.0 148.6 29.1 +23170.0 222.9 35.7 +23175.0 257.2 38.3 +23180.0 240.6 37.1 +23185.0 235.4 36.8 +23190.0 160.8 30.4 +23195.0 189.5 33.0 +23200.0 190.3 33.1 +23205.0 224.9 36.0 +23210.0 236.5 36.9 +23215.0 230.7 36.5 +23220.0 243.4 37.6 +23225.0 202.8 34.3 +23230.0 243.4 37.6 +23235.0 191.2 33.3 +23240.0 203.6 34.4 +23245.0 197.8 33.9 +23250.0 273.4 39.9 +23255.0 244.3 37.7 +23260.0 239.4 37.4 +23265.0 233.5 36.9 +23270.0 274.4 40.0 +23275.0 245.7 37.9 +23280.0 322.7 43.5 +23285.0 281.7 40.7 +23290.0 217.1 35.7 +23295.0 288.1 41.2 +23300.0 265.2 39.5 +23305.0 253.4 38.6 +23310.0 229.8 36.8 +23315.0 295.3 41.8 +23320.0 337.7 44.7 +23325.0 385.1 47.8 +23330.0 433.5 50.7 +23335.0 475.1 53.1 +23340.0 428.7 50.5 +23345.0 506.1 54.9 +23350.0 518.6 55.6 +23355.0 554.3 57.5 +23360.0 693.2 64.4 +23365.0 1099.5 81.1 +23370.0 1298.2 88.1 +23375.0 1914.4 107.0 +23380.0 2626.8 125.5 +23385.0 3597.7 147.0 +23390.0 5123.2 175.4 +23395.0 6780.9 201.8 +23400.0 9222.1 235.5 +23405.0 11511.4 263.4 +23410.0 14362.2 294.2 +23415.0 16558.9 316.1 +23420.0 18043.4 330.0 +23425.0 19443.9 342.8 +23430.0 19903.3 346.8 +23435.0 20651.0 353.6 +23440.0 19561.2 344.1 +23445.0 18244.9 332.6 +23450.0 16462.2 315.9 +23455.0 14997.5 301.8 +23460.0 12862.1 279.8 +23465.0 10932.5 258.0 +23470.0 9398.5 239.2 +23475.0 8149.1 222.9 +23480.0 6405.8 197.8 +23485.0 5605.8 185.0 +23490.0 4567.7 167.0 +23495.0 3745.2 151.4 +23500.0 3230.5 140.7 +23505.0 2678.8 128.1 +23510.0 2090.3 113.2 +23515.0 1894.3 107.9 +23520.0 1390.0 92.5 +23525.0 1316.2 90.0 +23530.0 1174.7 85.0 +23535.0 939.1 76.2 +23540.0 753.8 68.2 +23545.0 642.6 63.0 +23550.0 685.8 65.1 +23555.0 477.2 54.4 +23560.0 421.4 51.1 +23565.0 557.8 58.8 +23570.0 521.0 56.8 +23575.0 379.3 48.6 +23580.0 422.9 51.3 +23585.0 447.7 52.8 +23590.0 348.7 46.6 +23595.0 355.6 47.1 +23600.0 418.0 51.1 +23605.0 343.1 46.3 +23610.0 343.9 46.4 +23615.0 263.0 40.6 +23620.0 256.7 40.1 +23625.0 275.5 41.5 +23630.0 333.1 45.7 +23635.0 282.8 42.2 +23640.0 364.5 47.9 +23645.0 283.4 42.3 +23650.0 309.1 44.2 +23655.0 365.9 48.0 +23660.0 252.3 39.9 +23665.0 309.9 44.3 +23670.0 272.6 41.6 +23675.0 342.4 46.6 +23680.0 323.4 45.3 +23685.0 298.6 43.6 +23690.0 324.4 45.4 +23695.0 222.7 37.6 +23700.0 216.8 37.2 +23705.0 229.6 38.3 +23710.0 287.5 42.9 +23715.0 223.6 37.8 +23720.0 262.4 41.0 +23725.0 300.7 43.9 +23730.0 327.1 45.8 +23735.0 263.0 41.1 +23740.0 289.4 43.1 +23745.0 283.0 42.7 +23750.0 245.0 39.7 +23755.0 219.2 37.6 +23760.0 297.2 43.8 +23765.0 213.2 37.1 +23770.0 233.0 38.8 +23775.0 207.4 36.7 +23780.0 213.8 37.2 +23785.0 233.3 38.9 +23790.0 305.3 44.5 +23795.0 214.6 37.4 +23800.0 201.6 36.2 +23805.0 227.6 38.5 +23810.0 228.2 38.6 +23815.0 235.3 39.2 +23820.0 183.0 34.6 +23825.0 130.7 29.2 +23830.0 229.6 38.8 +23835.0 262.4 41.5 +23840.0 157.5 32.1 +23845.0 223.1 38.3 +23850.0 164.7 32.9 +23855.0 250.3 40.6 +23860.0 197.6 36.1 +23865.0 270.4 42.2 +23870.0 132.2 29.6 +23875.0 211.5 37.4 +23880.0 237.9 39.7 +23885.0 265.5 42.0 +23890.0 225.7 38.7 +23895.0 212.4 37.5 +23900.0 199.1 36.4 +23905.0 286.6 43.7 +23910.0 153.3 32.0 +23915.0 193.3 35.9 +23920.0 133.3 29.8 +23925.0 241.0 40.2 +23930.0 227.6 39.0 +23935.0 140.6 30.7 +23940.0 227.6 39.0 +23945.0 181.6 34.9 +23950.0 195.0 36.2 +23955.0 221.9 38.6 +23960.0 175.2 34.3 +23965.0 141.8 30.9 +23970.0 216.1 38.2 +23975.0 148.6 31.7 +23980.0 196.2 36.4 +23985.0 230.7 39.6 +23990.0 251.1 41.3 +23995.0 176.4 34.6 +24000.0 163.3 33.3 +24005.0 170.5 34.1 +24010.0 143.2 31.2 +24015.0 177.5 34.8 +24020.0 198.0 36.8 +24025.0 260.0 42.2 +24030.0 150.5 32.1 +24035.0 137.1 30.6 +24040.0 198.8 36.9 +24045.0 199.0 37.0 +24050.0 212.8 38.2 +24055.0 171.9 34.4 +24060.0 199.4 37.0 +24065.0 172.3 34.5 +24070.0 179.6 35.2 +24075.0 179.6 35.2 +24080.0 179.9 35.3 +24085.0 159.1 33.2 +24090.0 208.0 38.0 +24095.0 180.3 35.4 +24100.0 201.5 37.4 +24105.0 166.8 34.0 +24110.0 181.0 35.5 +24115.0 194.9 36.8 +24120.0 223.3 39.5 +24125.0 146.5 32.0 +24130.0 237.5 40.7 +24135.0 195.6 37.0 +24140.0 154.0 32.8 +24145.0 182.3 35.7 +24150.0 182.3 35.7 +24155.0 203.3 37.8 +24160.0 239.0 41.0 +24165.0 133.9 30.7 +24170.0 204.3 37.9 +24175.0 169.1 34.5 +24180.0 197.5 37.3 +24185.0 212.0 38.7 +24190.0 219.1 39.3 +24195.0 190.8 36.7 +24200.0 156.1 33.3 +24205.0 177.4 35.5 +24210.0 149.0 32.5 +24215.0 184.5 36.2 +24220.0 163.9 34.2 +24225.0 185.3 36.3 +24230.0 199.6 37.7 +24235.0 171.1 34.9 +24240.0 128.6 30.3 +24245.0 185.8 36.4 +24250.0 185.8 36.4 +24255.0 128.9 30.4 +24260.0 172.1 35.1 +24265.0 172.1 35.1 +24270.0 186.5 36.6 +24275.0 136.5 31.3 +24280.0 223.3 40.1 +24285.0 158.5 33.8 +24290.0 151.3 33.0 +24295.0 144.4 32.3 +24300.0 231.5 40.9 +24305.0 144.7 32.3 +24310.0 144.7 32.3 +24315.0 152.5 33.3 +24320.0 145.2 32.5 +24325.0 108.9 28.1 +24330.0 145.4 32.5 +24335.0 225.9 40.6 +24340.0 145.7 32.6 +24345.0 182.1 36.4 +24350.0 145.9 32.6 +24355.0 175.4 35.8 +24360.0 197.3 38.0 +24365.0 168.1 35.1 +24370.0 197.7 38.0 +24375.0 212.7 39.5 +24380.0 183.4 36.7 +24385.0 146.9 32.9 +24390.0 176.3 36.0 +24395.0 103.1 27.5 +24400.0 184.1 36.8 +24405.0 155.0 33.8 +24410.0 191.9 37.6 +24415.0 162.7 34.7 +24420.0 207.0 39.1 +24425.0 200.0 38.5 +24430.0 118.5 29.6 +24435.0 178.1 36.4 +24440.0 148.6 33.2 +24445.0 96.6 26.8 +24450.0 156.1 34.1 +24455.0 186.0 37.2 +24460.0 156.4 34.1 +24465.0 178.8 36.5 +24470.0 156.4 34.1 +24475.0 186.7 37.3 +24480.0 179.6 36.7 +24485.0 149.7 33.5 +24490.0 224.5 41.0 +24495.0 179.9 36.7 +24500.0 225.3 41.1 +24505.0 217.7 40.4 +24510.0 180.2 36.8 +24515.0 203.4 39.1 +24520.0 158.2 34.5 +24525.0 203.4 39.1 +24530.0 218.8 40.6 +24535.0 158.7 34.6 +24540.0 158.7 34.6 +24545.0 128.5 31.2 +24550.0 151.4 33.9 +24555.0 182.0 37.1 +24560.0 121.3 30.3 +24565.0 159.2 34.7 +24570.0 137.0 32.3 +24575.0 159.9 34.9 +24580.0 159.9 34.9 +24585.0 175.1 36.5 +24590.0 198.7 39.0 +24595.0 198.7 39.0 +24600.0 198.7 39.0 +24605.0 168.1 35.8 +24610.0 207.6 39.9 +24615.0 123.0 30.7 +24620.0 192.2 38.4 +24625.0 207.8 40.0 +24630.0 169.6 36.2 +24635.0 84.8 25.6 +24640.0 239.0 42.9 +24645.0 146.7 33.6 +24650.0 201.1 39.4 +24655.0 108.3 28.9 +24660.0 131.5 31.9 +24665.0 186.1 38.0 +24670.0 155.3 34.7 +24675.0 194.1 38.8 +24680.0 163.1 35.6 +24685.0 140.0 33.0 +24690.0 148.0 34.0 +24695.0 124.6 31.2 +24700.0 156.1 34.9 +24705.0 163.9 35.8 +24710.0 203.5 39.9 +24715.0 211.4 40.7 +24720.0 180.3 37.6 +24725.0 227.4 42.2 +24730.0 173.0 36.9 +24735.0 149.4 34.3 +24740.0 94.5 27.3 +24745.0 204.8 40.2 +24750.0 189.6 38.7 +24755.0 158.3 35.4 +24760.0 237.5 43.4 +24765.0 182.5 38.0 +24770.0 166.6 36.4 +24775.0 206.7 40.5 +24780.0 159.0 35.6 +24785.0 167.3 36.5 +24790.0 191.2 39.0 +24795.0 223.6 42.3 +24800.0 175.7 37.5 +24805.0 120.1 31.0 +24810.0 192.5 39.3 +24815.0 120.3 31.1 +24820.0 192.5 39.3 +24825.0 192.8 39.4 +24830.0 209.3 41.0 +24835.0 225.4 42.6 +24840.0 128.8 32.2 +24845.0 121.0 31.2 +24850.0 274.7 47.1 +24855.0 145.4 34.3 +24860.0 202.0 40.4 +24865.0 121.5 31.4 +24870.0 186.6 38.9 +24875.0 146.1 34.4 +24880.0 129.8 32.5 +24885.0 179.3 38.2 +24890.0 187.5 39.1 +24895.0 163.0 36.5 +24900.0 163.0 36.5 +24905.0 171.8 37.5 +24910.0 122.7 31.7 +24915.0 147.2 34.7 +24920.0 196.3 40.1 +24925.0 189.1 39.4 +24930.0 172.6 37.7 +24935.0 197.3 40.3 +24940.0 148.3 34.9 +24945.0 173.6 37.9 +24950.0 165.3 37.0 +24955.0 198.4 40.5 +24960.0 157.4 36.1 +24965.0 166.1 37.1 +24970.0 124.6 32.2 +24975.0 182.7 39.0 +24980.0 149.8 35.3 +24985.0 150.0 35.4 +24990.0 150.0 35.4 +24995.0 158.7 36.4 +25000.0 217.7 42.7 +25005.0 150.7 35.5 +25010.0 125.6 32.4 +25015.0 192.7 40.2 +25020.0 193.1 40.3 +25025.0 201.5 41.1 +25030.0 226.6 43.6 +25035.0 117.8 31.5 +25040.0 244.3 45.4 +25045.0 101.1 29.2 +25050.0 151.6 35.7 +25055.0 219.3 43.0 +25060.0 185.9 39.6 +25065.0 177.4 38.7 +25070.0 135.4 33.9 +25075.0 245.4 45.6 +25080.0 152.6 36.0 +25085.0 203.4 41.5 +25090.0 144.4 35.0 +25095.0 127.4 32.9 +25100.0 144.7 35.1 +25105.0 187.3 39.9 +25110.0 187.5 40.0 +25115.0 179.0 39.1 +25120.0 153.6 36.2 +25125.0 188.1 40.1 +25130.0 196.7 41.0 +25135.0 136.8 34.2 +25140.0 171.3 38.3 +25145.0 223.0 43.7 +25150.0 171.5 38.4 +25155.0 240.2 45.4 +25160.0 197.8 41.2 +25165.0 207.0 42.2 +25170.0 129.4 33.4 +25175.0 155.2 36.6 +25180.0 207.6 42.4 +25185.0 164.5 37.7 +25190.0 147.2 35.7 +25195.0 181.8 39.7 +25200.0 164.8 37.8 +25205.0 173.4 38.8 +25210.0 182.1 39.7 +25215.0 173.8 38.9 +25220.0 165.4 38.0 +25225.0 156.7 36.9 +25230.0 182.9 39.9 +25235.0 165.8 38.0 +25240.0 236.0 45.4 +25245.0 183.6 40.1 +25250.0 131.1 33.9 +25255.0 131.7 34.0 +25260.0 114.1 31.7 +25265.0 175.6 39.3 +25270.0 140.5 35.1 +25275.0 220.2 44.0 +25280.0 202.6 42.2 +25285.0 211.4 43.2 +25290.0 158.5 37.4 +25295.0 203.3 42.4 +25300.0 194.4 41.5 +25305.0 247.5 46.8 +25310.0 141.4 35.4 +25315.0 230.2 45.1 +25320.0 203.6 42.5 +25325.0 194.8 41.5 +25330.0 177.3 39.6 +25335.0 177.5 39.7 +25340.0 213.0 43.5 +25345.0 168.6 38.7 +25350.0 142.3 35.6 +25355.0 213.9 43.7 +25360.0 187.2 40.8 +25365.0 196.1 41.8 +25370.0 89.3 28.2 +25375.0 187.8 41.0 +25380.0 169.9 39.0 +25385.0 134.4 34.7 +25390.0 215.1 43.9 +25395.0 71.7 25.4 +25400.0 116.6 32.3 +25405.0 215.9 44.1 +25410.0 134.9 34.8 +25415.0 189.4 41.3 +25420.0 261.6 48.6 +25425.0 207.9 43.4 +25430.0 235.0 46.1 +25435.0 190.2 41.5 +25440.0 181.5 40.6 +25445.0 190.5 41.6 +25450.0 109.1 31.5 +25455.0 218.2 44.5 +25460.0 145.7 36.4 +25465.0 182.1 40.7 +25470.0 164.2 38.7 +25475.0 191.6 41.8 +25480.0 146.3 36.6 +25485.0 201.1 42.9 +25490.0 210.6 43.9 +25495.0 247.9 47.7 +25500.0 119.3 33.1 +25505.0 165.2 38.9 +25510.0 119.6 33.2 +25515.0 175.0 40.1 +25520.0 211.8 44.2 +25525.0 147.4 36.8 +25530.0 73.9 26.1 +25535.0 194.1 42.4 +25540.0 268.1 49.8 +25545.0 83.2 27.7 +25550.0 157.5 38.2 +25555.0 167.2 39.4 +25560.0 185.8 41.5 +25565.0 213.6 44.5 +25570.0 167.6 39.5 +25575.0 149.0 37.2 +25580.0 149.0 37.2 +25585.0 195.5 42.7 +25590.0 177.7 40.8 +25595.0 205.8 43.9 +25600.0 102.9 31.0 +25605.0 205.8 43.9 +25610.0 168.9 39.8 +25615.0 187.6 42.0 +25620.0 122.0 33.8 +25625.0 131.7 35.2 +25630.0 169.5 40.0 +25635.0 207.2 44.2 +25640.0 150.7 37.7 +25645.0 207.6 44.3 +25650.0 208.3 44.4 +25655.0 189.4 42.4 +25660.0 198.9 43.4 +25665.0 209.1 44.6 +25670.0 85.6 28.5 +25675.0 123.6 34.3 +25680.0 190.3 42.5 +25685.0 143.0 36.9 +25690.0 152.5 38.1 +25695.0 181.1 41.5 +25700.0 124.1 34.4 +25705.0 191.2 42.8 +25710.0 143.4 37.0 +25715.0 153.0 38.2 +25720.0 153.1 38.3 +25725.0 163.0 39.5 +25730.0 191.7 42.9 +25735.0 268.4 50.7 +25740.0 115.2 33.3 +25745.0 134.7 36.0 +25750.0 250.2 49.1 +25755.0 202.6 44.2 +25760.0 183.3 42.0 +25765.0 203.1 44.3 +25770.0 174.1 41.0 +25775.0 193.9 43.4 +25780.0 164.8 40.0 +25785.0 233.2 47.6 +25790.0 233.2 47.6 +25795.0 194.7 43.5 +25800.0 146.0 37.7 +25805.0 156.2 39.0 +25810.0 127.1 35.2 +25815.0 136.8 36.6 +25820.0 234.6 47.9 +25825.0 166.4 40.4 +25830.0 215.9 46.0 +25835.0 186.5 42.8 +25840.0 127.6 35.4 +25845.0 196.6 44.0 +25850.0 285.5 53.0 +25855.0 206.8 45.1 +25860.0 187.1 42.9 +25865.0 207.6 45.3 +25870.0 187.8 43.1 +25875.0 257.0 50.4 +25880.0 118.6 34.2 +25885.0 149.0 38.5 +25890.0 218.5 46.6 +25895.0 268.1 51.6 +25900.0 228.8 47.7 +25905.0 119.5 34.5 +25910.0 179.3 42.3 +25915.0 199.2 44.5 +25920.0 229.5 47.9 +25925.0 290.1 53.9 +25930.0 160.1 40.0 +25935.0 210.1 45.8 +25940.0 201.0 44.9 +25945.0 160.8 40.2 +25950.0 241.1 49.2 +25955.0 201.0 44.9 +25960.0 131.0 36.3 +25965.0 201.5 45.1 +25970.0 211.6 46.2 +25975.0 191.4 43.9 +25980.0 171.9 41.7 +25985.0 202.3 45.2 +25990.0 242.7 49.6 +25995.0 131.6 36.5 +26000.0 131.8 36.6 +26005.0 142.0 37.9 +26010.0 152.1 39.3 +26015.0 162.5 40.6 +26020.0 172.9 41.9 +26025.0 132.2 36.7 +26030.0 213.6 46.6 +26035.0 122.2 35.3 +26040.0 183.5 43.2 +26045.0 152.9 39.5 +26050.0 204.3 45.7 +26055.0 112.4 33.9 +26060.0 174.1 42.2 +26065.0 133.1 36.9 +26070.0 112.8 34.0 +26075.0 246.2 50.3 +26080.0 205.7 46.0 +26085.0 216.0 47.1 +26090.0 206.1 46.1 +26095.0 144.3 38.6 +26100.0 175.4 42.5 +26105.0 154.7 40.0 +26110.0 124.0 35.8 +26115.0 144.9 38.7 +26120.0 82.8 29.3 +26125.0 124.5 35.9 +26130.0 228.3 48.7 +26135.0 166.3 41.6 +26140.0 259.9 52.0 +26145.0 114.6 34.5 +26150.0 135.4 37.6 +26155.0 177.5 43.1 +26160.0 208.9 46.7 +26165.0 167.4 41.9 +26170.0 188.4 44.4 +26175.0 136.2 37.8 +26180.0 199.5 45.8 +26185.0 210.0 47.0 +26190.0 126.0 36.4 +26195.0 241.8 50.4 +26200.0 221.2 48.3 +26205.0 179.1 43.4 +26210.0 147.5 39.4 +26215.0 116.1 35.0 +26220.0 169.2 42.3 +26225.0 169.2 42.3 +26230.0 264.4 52.9 +26235.0 158.9 41.0 +26240.0 180.1 43.7 +26245.0 190.7 45.0 +26250.0 137.7 38.2 +26255.0 116.9 35.3 +26260.0 180.7 43.8 +26265.0 159.4 41.2 +26270.0 138.2 38.3 +26275.0 213.1 47.7 +26280.0 159.8 41.3 +26285.0 234.4 50.0 +26290.0 138.5 38.4 +26295.0 160.4 41.4 +26300.0 160.4 41.4 +26305.0 139.0 38.6 +26310.0 149.8 40.0 +26315.0 193.0 45.5 +26320.0 193.0 45.5 +26325.0 193.0 45.5 +26330.0 139.7 38.8 +26335.0 129.1 37.3 +26340.0 204.4 46.9 +26345.0 139.9 38.8 +26350.0 151.4 40.5 +26355.0 194.6 45.9 +26360.0 216.2 48.4 +26365.0 140.8 39.1 +26370.0 130.1 37.6 +26375.0 97.6 32.5 +26380.0 151.8 40.6 +26385.0 152.1 40.7 +26390.0 217.7 48.7 +26395.0 174.1 43.5 +26400.0 130.6 37.7 +26405.0 229.2 50.0 +26410.0 207.6 47.6 +26415.0 163.9 42.3 +26420.0 98.6 32.9 +26425.0 164.3 42.4 +26430.0 175.5 43.9 +26435.0 164.6 42.5 +26440.0 120.8 36.4 +26445.0 208.6 47.9 +26450.0 176.0 44.0 +26455.0 197.9 46.7 +26460.0 132.3 38.2 +26465.0 187.4 45.4 +26470.0 132.6 38.3 +26475.0 210.0 48.2 +26480.0 132.8 38.3 +26485.0 110.7 35.0 +26490.0 188.4 45.7 +26495.0 210.9 48.4 +26500.0 177.6 44.4 +26505.0 155.4 41.5 +26510.0 211.5 48.5 +26515.0 156.2 41.7 +26520.0 212.0 48.6 +26525.0 189.7 46.0 +26530.0 201.2 47.4 +26535.0 145.6 40.4 +26540.0 145.6 40.4 +26545.0 201.6 47.5 +26550.0 146.2 40.6 +26555.0 135.0 39.0 +26560.0 191.2 46.4 +26565.0 203.0 47.8 +26570.0 169.4 43.8 +26575.0 214.6 49.2 +26580.0 146.9 40.7 +26585.0 135.8 39.2 +26590.0 204.1 48.1 +26595.0 238.1 52.0 +26600.0 238.1 52.0 +26605.0 136.5 39.4 +26610.0 102.4 34.1 +26615.0 227.6 50.9 +26620.0 102.4 34.1 +26625.0 216.9 49.8 +26630.0 262.5 54.7 +26635.0 296.8 58.2 +26640.0 171.2 44.2 +26645.0 195.0 47.3 +26650.0 149.2 41.4 +26655.0 195.0 47.3 +26660.0 183.6 45.9 +26665.0 138.3 39.9 +26670.0 253.6 54.1 +26675.0 161.4 43.1 +26680.0 161.6 43.2 +26685.0 161.8 43.2 +26690.0 184.9 46.2 +26695.0 208.0 49.0 +26700.0 219.8 50.4 +26705.0 139.1 40.2 +26710.0 127.5 38.4 +26715.0 197.1 47.8 +26720.0 185.8 46.5 +26725.0 267.5 55.8 +26730.0 174.4 45.0 +26735.0 174.8 45.1 +26740.0 104.9 35.0 +26745.0 280.4 57.2 +26750.0 116.8 36.9 +26755.0 164.0 43.8 +26760.0 199.1 48.3 +26765.0 176.1 45.5 +26770.0 164.4 43.9 +26775.0 188.3 47.1 +26780.0 188.3 47.1 +26785.0 177.2 45.8 +26790.0 118.1 37.4 +26795.0 260.3 55.5 +26800.0 189.8 47.4 +26805.0 225.4 51.7 +26810.0 154.4 42.8 +26815.0 118.8 37.6 +26820.0 226.0 51.9 +26825.0 202.2 49.1 +26830.0 226.6 52.0 +26835.0 95.4 33.7 +26840.0 179.3 46.3 +26845.0 155.4 43.1 +26850.0 179.5 46.3 +26855.0 179.5 46.3 +26860.0 119.8 37.9 +26865.0 204.0 49.5 +26870.0 168.0 44.9 +26875.0 144.0 41.6 +26880.0 180.1 46.5 +26885.0 108.3 36.1 +26890.0 228.6 52.5 +26895.0 156.4 43.4 +26900.0 192.8 48.2 +26905.0 144.9 41.8 +26910.0 253.6 55.3 +26915.0 241.5 54.0 +26920.0 279.0 58.2 +26925.0 181.9 47.0 +26930.0 206.2 50.0 +26935.0 145.6 42.0 +26940.0 121.6 38.5 +26945.0 194.6 48.7 +26950.0 194.6 48.7 +26955.0 304.1 60.8 +26960.0 170.9 45.7 +26965.0 183.1 47.3 +26970.0 195.3 48.8 +26975.0 183.1 47.3 +26980.0 183.5 47.4 +26985.0 195.8 48.9 +26990.0 256.9 56.1 +26995.0 196.1 49.0 +27000.0 196.7 49.2 +27005.0 159.8 44.3 +27010.0 122.9 38.9 +27015.0 246.2 55.0 +27020.0 222.3 52.4 +27025.0 160.5 44.5 +27030.0 98.8 34.9 +27035.0 173.2 46.3 +27040.0 235.1 53.9 +27045.0 210.3 51.0 +27050.0 247.6 55.4 +27055.0 161.4 44.8 +27060.0 198.6 49.7 +27065.0 260.7 56.9 +27070.0 161.6 44.8 +27075.0 174.2 46.6 +27080.0 261.3 57.0 +27085.0 161.8 44.9 +27090.0 286.5 59.7 +27095.0 137.4 41.4 +27100.0 199.8 49.9 +27105.0 175.3 46.8 +27110.0 162.7 45.1 +27115.0 188.0 48.5 +27120.0 175.5 46.9 +27125.0 175.9 47.0 +27130.0 201.0 50.2 +27135.0 264.2 57.7 +27140.0 176.1 47.1 +27145.0 188.9 48.8 +27150.0 100.8 35.6 +27155.0 252.3 56.4 +27160.0 264.9 57.8 +27165.0 63.2 28.3 +27170.0 214.8 52.1 +27175.0 164.8 45.7 +27180.0 165.2 45.8 +27185.0 266.9 58.2 +27190.0 190.6 49.2 +27195.0 152.8 44.1 +27200.0 191.5 49.4 +27205.0 178.7 47.8 +27210.0 204.2 51.1 +27215.0 89.6 33.9 +27220.0 153.9 44.4 +27225.0 166.7 46.2 +27230.0 230.9 54.4 +27235.0 283.1 60.4 +27240.0 128.7 40.7 +27245.0 218.7 53.1 +27250.0 154.6 44.6 +27255.0 232.0 54.7 +27260.0 232.0 54.7 +27265.0 206.2 51.6 +27270.0 232.3 54.7 +27275.0 193.7 50.0 +27280.0 180.8 48.3 +27285.0 258.3 57.8 +27290.0 142.7 43.0 +27295.0 246.4 56.5 +27300.0 168.6 46.8 +27305.0 181.6 48.5 +27310.0 195.1 50.4 +27315.0 351.1 67.6 +27320.0 195.1 50.4 +27325.0 143.1 43.1 +27330.0 234.6 55.3 +27335.0 234.6 55.3 +27340.0 117.3 39.1 +27345.0 143.3 43.2 +27350.0 144.0 43.4 +27355.0 130.9 41.4 +27360.0 196.3 50.7 +27365.0 209.5 52.4 +27370.0 209.9 52.5 +27375.0 183.7 49.1 +27380.0 209.9 52.5 +27385.0 92.0 34.8 +27390.0 236.8 55.8 +27395.0 144.7 43.6 +27400.0 184.2 49.2 +27405.0 289.8 61.8 +27410.0 118.8 39.6 +27415.0 158.4 45.7 +27420.0 132.3 41.8 +27425.0 172.0 47.7 +27430.0 198.7 51.3 +27435.0 145.7 43.9 +27440.0 265.7 59.4 +27445.0 159.4 46.0 +27450.0 226.4 54.9 +27455.0 146.5 44.2 +27460.0 186.6 49.9 +27465.0 253.2 58.1 +27470.0 187.2 50.0 +27475.0 227.6 55.2 +27480.0 147.3 44.4 +27485.0 94.0 35.5 +27490.0 214.8 53.7 +27495.0 242.0 57.0 +27500.0 215.1 53.8 +27505.0 121.3 40.4 +27510.0 229.2 55.6 +27515.0 270.0 60.4 +27520.0 175.5 48.7 +27525.0 162.3 46.9 +27530.0 148.8 44.9 +27535.0 67.8 30.3 +27540.0 176.2 48.9 +27545.0 231.1 56.0 +27550.0 163.3 47.1 +27555.0 204.1 52.7 +27560.0 95.3 36.0 +27565.0 286.2 62.5 +27570.0 163.8 47.3 +27575.0 273.0 61.1 +27580.0 191.1 51.1 +27585.0 177.8 49.3 +27590.0 137.1 43.3 +27595.0 274.2 61.3 +27600.0 233.0 56.5 +27605.0 178.8 49.6 +27610.0 192.5 51.5 +27615.0 247.6 58.4 +27620.0 151.3 45.6 +27625.0 220.9 55.2 +27630.0 138.1 43.7 +27635.0 138.1 43.7 +27640.0 179.5 49.8 +27645.0 249.4 58.8 +27650.0 207.8 53.7 +27655.0 194.0 51.8 +27660.0 180.5 50.1 +27665.0 208.6 53.9 +27670.0 152.9 46.1 +27675.0 152.9 46.1 +27680.0 250.9 59.1 +27685.0 111.7 39.5 +27690.0 223.4 55.8 +27695.0 153.6 46.3 +27700.0 182.0 50.5 +27705.0 126.0 42.0 +27710.0 224.0 56.0 +27715.0 140.0 44.3 +27720.0 140.2 44.3 +27725.0 140.2 44.3 +27730.0 266.4 61.1 +27735.0 182.5 50.6 +27740.0 182.8 50.7 +27745.0 154.7 46.6 +27750.0 140.6 44.5 +27755.0 126.8 42.3 +27760.0 212.0 54.7 +27765.0 212.0 54.7 +27770.0 212.0 54.7 +27775.0 84.9 34.6 +27780.0 184.4 51.1 +27785.0 212.7 54.9 +27790.0 156.2 47.1 +27795.0 213.1 55.0 +27800.0 227.9 57.0 +27805.0 171.0 49.4 +27810.0 199.3 53.3 +27815.0 256.4 60.4 +27820.0 114.1 40.3 +27825.0 85.6 35.0 +27830.0 185.7 51.5 +27835.0 271.7 62.3 +27840.0 200.3 53.5 +27845.0 200.5 53.6 +27850.0 215.0 55.5 +27855.0 215.2 55.6 +27860.0 158.0 47.6 +27865.0 100.6 38.0 +27870.0 129.5 43.2 +27875.0 216.0 55.8 +27880.0 144.1 45.6 +27885.0 101.0 38.2 +27890.0 173.3 50.0 +27895.0 144.5 45.7 +27900.0 202.5 54.1 +27905.0 202.7 54.2 +27910.0 231.9 58.0 +27915.0 130.5 43.5 +27920.0 232.3 58.1 +27925.0 130.8 43.6 +27930.0 203.6 54.4 +27935.0 276.6 63.5 +27940.0 160.3 48.3 +27945.0 218.7 56.5 +27950.0 218.9 56.5 +27955.0 116.9 41.3 +27960.0 190.1 52.7 +27965.0 219.5 56.7 +27970.0 278.3 63.8 +27975.0 307.9 67.2 +27980.0 190.8 52.9 +27985.0 205.6 55.0 +27990.0 102.9 38.9 +27995.0 88.3 36.0 +28000.0 235.6 58.9 +28005.0 162.1 48.9 +28010.0 132.8 44.3 +28015.0 162.4 49.0 +28020.0 177.4 51.2 +28025.0 266.3 62.8 +28030.0 325.7 69.4 +28035.0 118.6 41.9 +28040.0 178.0 51.4 +28045.0 178.1 51.4 +28050.0 208.0 55.6 +28055.0 178.5 51.5 +28060.0 178.6 51.6 +28065.0 193.7 53.7 +28070.0 208.8 55.8 +28075.0 134.3 44.8 +28080.0 209.1 55.9 +28085.0 164.5 49.6 +28090.0 89.8 36.7 +28095.0 164.8 49.7 +28100.0 194.9 54.1 +28105.0 180.1 52.0 +28110.0 195.2 54.1 +28115.0 165.3 49.9 +28120.0 210.6 56.3 +28125.0 180.7 52.2 +28130.0 165.8 50.0 +28135.0 165.9 50.0 +28140.0 226.5 58.5 +28145.0 196.5 54.5 +28150.0 211.8 56.6 +28155.0 227.1 58.6 +28160.0 136.4 45.5 +28165.0 166.8 50.3 +28170.0 151.8 48.0 +28175.0 227.9 58.8 +28180.0 91.2 37.2 +28185.0 213.1 56.9 +28190.0 243.7 60.9 +28195.0 122.0 43.1 +28200.0 228.9 59.1 +28205.0 381.8 76.4 +28210.0 275.2 64.9 +28215.0 168.3 50.7 +28220.0 199.1 55.2 +28225.0 245.3 61.3 +28230.0 184.1 53.1 +28235.0 215.0 57.5 +28240.0 169.1 51.0 +28245.0 169.2 51.0 +28250.0 184.8 53.3 +28255.0 154.1 48.7 +28260.0 293.0 67.2 +28265.0 324.2 70.7 +28270.0 123.6 43.7 +28275.0 108.3 40.9 +28280.0 154.8 48.9 +28285.0 263.3 63.9 +28290.0 201.6 55.9 +28295.0 248.3 62.1 +28300.0 295.1 67.7 +28305.0 217.6 58.2 +28310.0 93.4 38.1 +28315.0 171.3 51.7 +28320.0 218.2 58.3 +28325.0 124.8 44.1 +28330.0 249.8 62.5 +28335.0 187.5 54.1 +28340.0 125.1 44.2 +28345.0 203.5 56.5 +28350.0 250.7 62.7 +28355.0 156.8 49.6 +28360.0 141.3 47.1 +28365.0 204.3 56.7 +28370.0 220.2 58.8 +28375.0 314.8 70.4 +28380.0 110.3 41.7 +28385.0 205.0 56.9 +28390.0 205.2 56.9 +28395.0 331.7 72.4 +28400.0 205.5 57.0 +28405.0 332.3 72.5 +28410.0 190.0 54.9 +28415.0 221.9 59.3 +28420.0 190.4 55.0 +28425.0 174.7 52.7 +28430.0 270.2 65.5 +28435.0 79.5 35.6 +28440.0 254.7 63.7 +28445.0 239.0 61.7 +28450.0 287.1 67.7 +28455.0 255.4 63.9 +28460.0 191.7 55.3 +28465.0 319.8 71.5 +28470.0 96.0 39.2 +28475.0 224.3 59.9 +28480.0 160.3 50.7 +28485.0 144.4 48.1 +28490.0 224.9 60.1 +28495.0 144.7 48.2 +28500.0 241.3 62.3 +28505.0 161.0 50.9 +28510.0 257.9 64.5 +28515.0 274.2 66.5 +28520.0 177.6 53.6 +28525.0 242.4 62.6 +28530.0 291.1 68.6 +28535.0 291.4 68.7 +28540.0 259.2 64.8 +28545.0 210.8 58.5 +28550.0 146.1 48.7 +28555.0 211.2 58.6 +28560.0 276.4 67.0 +28565.0 244.1 63.0 +28570.0 162.9 51.5 +28575.0 130.4 46.1 +28580.0 146.8 48.9 +28585.0 326.6 73.0 +28590.0 212.5 58.9 +28595.0 130.9 46.3 +28600.0 262.0 65.5 +28605.0 213.0 59.1 +28610.0 98.4 40.2 +28615.0 213.4 59.2 +28620.0 115.0 43.5 +28625.0 296.0 69.8 +28630.0 230.4 61.6 +28635.0 230.6 61.6 +28640.0 181.4 54.7 +28645.0 148.5 49.5 +28650.0 214.7 59.6 +28655.0 165.3 52.3 +28660.0 281.3 68.2 +28665.0 198.7 57.4 +28670.0 132.6 46.9 +28675.0 116.1 43.9 +28680.0 199.2 57.5 +28685.0 33.2 23.5 +28690.0 266.1 66.5 +28695.0 116.5 44.0 +28700.0 266.6 66.6 +28705.0 183.4 55.3 +28710.0 217.0 60.2 +28715.0 133.6 47.3 +28720.0 234.1 62.6 +28725.0 133.9 47.3 +28730.0 150.7 50.2 +28735.0 268.2 67.1 +28740.0 268.5 67.1 +28745.0 251.9 65.0 +28750.0 184.9 55.7 +28755.0 151.4 50.5 +28760.0 134.7 47.6 +28765.0 219.1 60.8 +28770.0 286.7 69.5 +28775.0 185.7 56.0 +28780.0 202.7 58.5 +28785.0 202.9 58.6 +28790.0 304.6 71.8 +28795.0 169.4 53.6 +28800.0 237.4 63.4 +28805.0 135.8 48.0 +28810.0 203.8 58.8 +28815.0 170.0 53.8 +28820.0 170.1 53.8 +28825.0 255.4 65.9 +28830.0 289.7 70.3 +28835.0 307.0 72.4 +28840.0 204.9 59.1 +28845.0 205.0 59.2 +28850.0 171.0 54.1 +28855.0 273.9 68.5 +28860.0 274.1 68.5 +28865.0 205.8 59.4 +28870.0 223.1 61.9 +28875.0 120.2 45.4 +28880.0 154.7 51.6 +28885.0 189.3 57.1 +28890.0 155.0 51.7 +28895.0 189.6 57.2 +28900.0 207.0 59.8 +28905.0 207.2 59.8 +28910.0 138.2 48.9 +28915.0 276.7 69.2 +28920.0 311.6 73.4 +28925.0 138.6 49.0 +28930.0 225.4 62.5 +28935.0 208.3 60.1 +28940.0 243.2 65.0 +28945.0 208.6 60.2 +28950.0 226.2 62.7 +28955.0 139.3 49.3 +28960.0 139.4 49.3 +28965.0 226.8 62.9 +28970.0 244.5 65.3 +28975.0 262.1 67.7 +28980.0 192.4 58.0 +28985.0 140.0 49.5 +28990.0 297.9 72.2 +28995.0 175.4 55.5 +29000.0 315.9 74.5 +29005.0 210.8 60.9 +29010.0 369.2 80.6 +29015.0 140.8 49.8 +29020.0 176.1 55.7 +29025.0 105.8 43.2 +29030.0 211.7 61.1 +29035.0 123.6 46.7 +29040.0 141.4 50.0 +29045.0 194.6 58.7 +29050.0 212.4 61.3 +29055.0 248.0 66.3 +29060.0 230.5 63.9 +29065.0 230.7 64.0 +29070.0 266.5 68.8 +29075.0 106.7 43.6 +29080.0 213.5 61.6 +29085.0 285.0 71.2 +29090.0 267.4 69.0 +29095.0 142.7 50.5 +29100.0 107.1 43.7 +29105.0 143.0 50.5 +29110.0 232.5 64.5 +29115.0 179.0 56.6 +29120.0 143.3 50.7 +29125.0 197.3 59.5 +29130.0 197.4 59.5 +29135.0 287.4 71.9 +29140.0 143.8 50.9 +29145.0 197.9 59.7 +29150.0 180.1 57.0 +29155.0 180.3 57.0 +29160.0 198.4 59.8 +29165.0 234.7 65.1 +29170.0 108.4 44.3 +29175.0 90.4 40.4 +29180.0 253.4 67.7 +29185.0 90.6 40.5 +29190.0 163.2 54.4 +29195.0 163.3 54.4 +29200.0 181.7 57.4 +29205.0 218.2 63.0 +29210.0 272.9 70.5 +29215.0 182.1 57.6 +29220.0 200.5 60.5 +29225.0 182.4 57.7 +29230.0 182.6 57.7 +29235.0 182.7 57.8 +29240.0 256.0 68.4 +29245.0 219.7 63.4 +29250.0 146.6 51.8 +29255.0 201.7 60.8 +29260.0 238.6 66.2 +29265.0 238.8 66.2 +29270.0 183.8 58.1 +29275.0 165.6 55.2 +29280.0 368.3 82.4 +29285.0 147.4 52.1 +29290.0 221.4 63.9 +29295.0 110.8 45.2 +29300.0 129.3 48.9 +29305.0 92.5 41.4 +29310.0 240.6 66.7 +29315.0 203.8 61.4 +29320.0 148.3 52.4 +29325.0 241.2 66.9 +29330.0 111.4 45.5 +29335.0 241.7 67.0 +29340.0 74.4 37.2 +29345.0 186.2 58.9 +29350.0 186.4 58.9 +29355.0 242.5 67.3 +29360.0 317.4 77.0 +29365.0 373.7 83.6 +29370.0 149.6 52.9 +29375.0 149.7 52.9 +29380.0 93.7 41.9 +29385.0 262.5 70.1 +29390.0 168.9 56.3 +29395.0 431.9 90.1 +29400.0 206.8 62.3 +29405.0 188.1 59.5 +29410.0 207.1 62.4 +29415.0 245.0 67.9 +29420.0 245.2 68.0 +29425.0 169.9 56.6 +29430.0 151.1 53.4 +29435.0 113.4 46.3 +29440.0 208.2 62.8 +29445.0 265.1 70.9 +29450.0 227.5 65.7 +29455.0 284.6 73.5 +29460.0 227.9 65.8 +29465.0 171.0 57.0 +29470.0 342.4 80.7 +29475.0 323.6 78.5 +29480.0 209.6 63.2 +29485.0 114.4 46.7 +29490.0 229.0 66.1 +29495.0 267.4 71.5 +29500.0 229.4 66.2 +29505.0 248.7 69.0 +29510.0 248.9 69.0 +29515.0 115.0 46.9 +29520.0 306.9 76.7 +29525.0 211.2 63.7 +29530.0 211.4 63.7 +29535.0 192.3 60.8 +29540.0 231.0 66.7 +29545.0 115.6 47.2 +29550.0 289.2 74.7 +29555.0 173.7 57.9 +29560.0 212.4 64.1 +29565.0 251.3 69.7 +29570.0 232.1 67.0 +29575.0 193.6 61.2 +29580.0 290.7 75.0 +29585.0 155.2 54.9 +29590.0 77.6 38.8 +29595.0 252.6 70.0 +29600.0 272.2 72.7 +29605.0 291.9 75.4 +29610.0 292.1 75.4 +29615.0 292.4 75.5 +29620.0 253.6 70.3 +29625.0 312.4 78.1 +29630.0 371.3 85.2 +29635.0 136.9 51.7 +29640.0 371.9 85.3 +29645.0 137.1 51.8 +29650.0 176.5 58.8 +29655.0 235.5 68.0 +29660.0 255.3 70.8 +29665.0 118.0 48.2 +29670.0 295.1 76.2 +29675.0 216.6 65.3 +29680.0 118.2 48.3 +29685.0 118.3 48.3 +29690.0 177.7 59.2 +29695.0 197.6 62.5 +29700.0 138.4 52.3 +29705.0 237.5 68.6 +29710.0 237.7 68.6 +29715.0 257.7 71.5 +29720.0 238.1 68.7 +29725.0 337.6 81.9 +29730.0 298.1 77.0 +29735.0 278.5 74.4 +29740.0 298.6 77.1 +29745.0 278.9 74.5 +29750.0 239.3 69.1 +29755.0 219.5 66.2 +29760.0 219.7 66.2 +29765.0 219.9 66.3 +29770.0 220.1 66.4 +29775.0 260.3 72.2 +29780.0 220.5 66.5 +29785.0 180.5 60.2 +29790.0 200.8 63.5 +29795.0 241.1 69.6 +29800.0 160.9 56.9 +29805.0 221.4 66.8 +29810.0 282.0 75.4 +29815.0 221.8 66.9 +29820.0 221.9 66.9 +29825.0 302.9 78.2 +29830.0 283.0 75.6 +29835.0 202.3 64.0 +29840.0 242.9 70.1 +29845.0 182.4 60.8 +29850.0 162.2 57.4 +29855.0 203.0 64.2 +29860.0 101.6 45.4 +29865.0 162.6 57.5 +29870.0 305.2 78.8 +29875.0 305.5 78.9 +29880.0 265.0 73.5 +29885.0 122.4 50.0 +29890.0 81.7 40.8 +29895.0 306.5 79.1 +29900.0 245.4 70.8 +29905.0 307.0 79.3 +29910.0 286.8 76.6 +29915.0 164.0 58.0 +29920.0 184.7 61.6 +29925.0 225.9 68.1 +29930.0 185.0 61.7 +29935.0 288.0 77.0 +29940.0 205.9 65.1 +29945.0 185.4 61.8 +29950.0 247.5 71.4 +29955.0 206.4 65.3 +29960.0 247.9 71.6 +29965.0 227.4 68.6 +29970.0 165.5 58.5 +29975.0 186.4 62.1 +29980.0 269.4 74.7 +29985.0 186.7 62.2 +29990.0 166.1 58.7 +29995.0 249.3 72.0 diff --git a/tests/functional_tests/fitting/test_single-fit.py b/tests/functional_tests/fitting/test_single-fit.py new file mode 100644 index 00000000..ce60f306 --- /dev/null +++ b/tests/functional_tests/fitting/test_single-fit.py @@ -0,0 +1,204 @@ +from numpy.testing import assert_almost_equal + +from easydiffraction import ( + Project, + SampleModel, + Experiment +) + + +def test_single_fit_neutron_pd_cwl_lbco() -> None: + # Create and configure sample model + model = SampleModel("lbco") + model.space_group.name = "P m -3 m" + model.cell.length_a = 3.88 + model.cell.length_b = 3.88 + model.cell.length_c = 3.88 + model.atom_sites.add("La", "La", 0, 0, 0, occupancy=0.5, b_iso=0.1) + model.atom_sites.add("Ba", "Ba", 0, 0, 0, occupancy=0.5, b_iso=0.1) + model.atom_sites.add("Co", "Co", 0.5, 0.5, 0.5, b_iso=0.1) + model.atom_sites.add("O", "O", 0, 0.5, 0.5, b_iso=0.1) + model.show_as_cif() + + # Create and configure experiment + expt = Experiment("npd", data_path="examples/data/hrpt.xye") + expt.instrument.setup_wavelength = 1.494 + expt.instrument.calib_twotheta_offset = 0 + expt.peak.broad_gauss_u = 0.1 + expt.peak.broad_gauss_v = -0.1 + expt.peak.broad_gauss_w = 0.2 + expt.peak.broad_lorentz_x = 0 + expt.peak.broad_lorentz_y = 0 + expt.linked_phases.add("lbco", scale=5.0) + expt.background.add(x=10, y=170) + expt.background.add(x=165, y=170) + #expt.background.add(x=10, y=168.345) + #expt.background.add(x=165, y=175.688) + expt.show_as_cif() + + # Create project and add sample model and experiments + project = Project() + project.sample_models.add(model) + project.experiments.add(expt) + + # Set calculator, minimizer and refinement strategy + project.analysis.current_calculator = "cryspy" + #project.analysis.current_calculator = "crysfml" + project.analysis.current_minimizer = "lmfit (leastsq)" + + # Compare measured and calculated patterns + project.analysis.show_meas_vs_calc_chart('npd', 65, 68) + + # ------------ 1st fitting ------------ + + # Define free parameters + model.cell.length_a.free = True + expt.linked_phases["lbco"].scale.free = True + expt.instrument.calib_twotheta_offset.free = True + expt.background["10"].y.free = True + expt.background["165"].y.free = True + project.analysis.show_free_params() + + # Start fitting + project.analysis.fit() + project.analysis.show_meas_vs_calc_chart('npd', 65, 68) + + # Compare fit quality + assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 5.79, decimal=1) + + # ------------ 2nd fitting ------------ + + # Define free parameters + expt.peak.broad_gauss_u.free = True + expt.peak.broad_gauss_v.free = True + expt.peak.broad_gauss_w.free = True + expt.peak.broad_lorentz_y.free = True + project.analysis.show_free_params() + + # Start fitting + project.analysis.fit() + project.analysis.show_meas_vs_calc_chart('npd', 65, 68) + + # Compare fit quality + assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 4.41, decimal=1) + + # ------------ 3rd fitting ------------ + + # Define free parameters + model.atom_sites['La'].b_iso.free = True + model.atom_sites['Ba'].b_iso.free = True + model.atom_sites['Co'].b_iso.free = True + model.atom_sites['O'].b_iso.free = True + project.analysis.show_free_params() + + # Start fitting + project.analysis.fit() + project.analysis.show_meas_vs_calc_chart('npd', 65, 68, show_residual=True) + project.analysis.show_meas_vs_calc_chart('npd', 38, 41, show_residual=True) + + # Compare fit quality + assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 1.3, decimal=1) + + +def test_single_fit_neutron_pd_tof_si() -> None: + # Create and configure sample model + model = SampleModel("si") + model.space_group.name = "F d -3 m" + model.space_group.setting = 2 + model.cell.length_a = 5.431 + model.cell.length_b = 5.431 + model.cell.length_c = 5.431 + model.atom_sites.add("Si", "Si", 0.125, 0.125, 0.125, b_iso=0.5) + model.show_as_cif() + + # Create and configure experiment + expt = Experiment("npd", beam_mode="time-of-flight", data_path="examples/data/sepd.xye") + expt.instrument.setup_twotheta_bank = 144.845 + expt.instrument.calib_d_to_tof_offset = 0.0 + expt.instrument.calib_d_to_tof_linear = 7476.91 + expt.instrument.calib_d_to_tof_quad = -1.54 + expt.peak_profile_type = "pseudo-voigt * ikeda-carpenter" + expt.peak.broad_gauss_sigma_0 = 3.0 + expt.peak.broad_gauss_sigma_1 = 40.0 + expt.peak.broad_gauss_sigma_2 = 2.0 + expt.peak.broad_mix_beta_0 = 0.04221 + expt.peak.broad_mix_beta_1 = 0.00946 + expt.peak.asym_alpha_0 = 0.0 + expt.peak.asym_alpha_1 = 0.5971 + expt.linked_phases.add("si", scale=10.0) + for x in range(0, 35000, 5000): + expt.background.add(x=x, y=200) + expt.show_as_cif() + + # Create project and add sample model and experiments + project = Project() + project.sample_models.add(model) + project.experiments.add(expt) + + # Set calculator, minimizer and refinement strategy + project.analysis.current_calculator = "cryspy" + project.analysis.current_minimizer = "lmfit (leastsq)" + + # Compare measured and calculated patterns + project.analysis.show_meas_vs_calc_chart('npd', 23200, 23700) + + # ------------ 1st fitting ------------ + + # Define free parameters + model.cell.length_a.free = True + expt.linked_phases["si"].scale.free = True + expt.instrument.calib_d_to_tof_offset.free = True + project.analysis.show_free_params() + + # Start fitting + project.analysis.fit() + project.analysis.show_meas_vs_calc_chart('npd', 23200, 23700) + + # Compare fit quality + assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 66.72, decimal=1) + + # ------------ 2nd fitting ------------ + + # Define more free parameters + for point in expt.background: + point.y.free = True + project.analysis.show_free_params() + + # Start fitting + project.analysis.fit() + project.analysis.show_meas_vs_calc_chart('npd', 23200, 23700, show_residual=True) + + # Compare fit quality + assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 3.38, decimal=1) + + # ------------ 3rd fitting ------------ + + # Fix background points + for point in expt.background: + point.y.free = False + + # Define more free parameters + expt.peak.broad_gauss_sigma_0.free = True + expt.peak.broad_gauss_sigma_1.free = True + expt.peak.broad_gauss_sigma_2.free = True + project.analysis.show_free_params() + + # Start fitting + project.analysis.fit() + project.analysis.show_meas_vs_calc_chart('npd', 23200, 23700, show_residual=True) + + # Compare fit quality + assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 3.21, decimal=1) + + # ------------ 4th fitting ------------ + + # Define more free parameters + model.atom_sites["Si"].b_iso.free = True + project.analysis.show_free_params() + + # Start fitting + project.analysis.fit() + project.analysis.show_meas_vs_calc_chart('npd', 23200, 23700, show_residual=True) + + # Compare fit quality + assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 3.19, decimal=1) From da69bb266c725ada03614555b227b7d0d062facf Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Wed, 2 Apr 2025 23:31:06 +0200 Subject: [PATCH 07/17] Enables parallel test execution --- .github/workflows/ci-testing.yaml | 2 +- README.md | 4 +- requirements.txt | 3 +- .../fitting/test_single-fit.py | 103 ------------------ .../fitting/test_joint-fit.py | 0 5 files changed, 6 insertions(+), 106 deletions(-) delete mode 100644 tests/functional_test/fitting/test_single-fit.py rename tests/{functional_test => functional_tests}/fitting/test_joint-fit.py (100%) diff --git a/.github/workflows/ci-testing.yaml b/.github/workflows/ci-testing.yaml index 0c4b400c..1cfcd6c0 100644 --- a/.github/workflows/ci-testing.yaml +++ b/.github/workflows/ci-testing.yaml @@ -53,4 +53,4 @@ jobs: - name: Run Python functional tests shell: bash - run: PYTHONPATH=$(pwd)/src python -m pytest tests/functional_tests/ --color=yes + run: PYTHONPATH=$(pwd)/src python -m pytest tests/functional_tests/ --color=yes -n auto diff --git a/README.md b/README.md index a51aaa16..b64fd20f 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,7 @@ Development playground for the new EasyDiffraction API. ``` - Install dependencies: ```bash + pip install --upgrade pip pip install -r requirements.txt ``` - Install pycrysfml (pyenv python 3.12, macOS 14, Apple Silicon): @@ -26,8 +27,9 @@ Development playground for the new EasyDiffraction API. ## Testing +- Functional tests: ```bash - PYTHONPATH=$(pwd)/src python -m pytest tests/ --color=yes + PYTHONPATH=$(pwd)/src python -m pytest tests/functional_tests/ --color=yes -n auto ``` ## Running examples diff --git a/requirements.txt b/requirements.txt index bbf2c10f..5553f067 100644 --- a/requirements.txt +++ b/requirements.txt @@ -8,4 +8,5 @@ pandas tabulate asciichartpy colorama -pytest \ No newline at end of file +pytest +pytest-xdist diff --git a/tests/functional_test/fitting/test_single-fit.py b/tests/functional_test/fitting/test_single-fit.py deleted file mode 100644 index f410fe75..00000000 --- a/tests/functional_test/fitting/test_single-fit.py +++ /dev/null @@ -1,103 +0,0 @@ -from numpy.testing import assert_almost_equal - -from easydiffraction import ( - Project, - SampleModel, - Experiment -) - - -def test_single_fit_neutron_pd_cwl_lbco() -> None: - # Create and configure sample model - model = SampleModel("lbco") - model.space_group.name = "P m -3 m" - model.cell.length_a = 3.88 - model.cell.length_b = 3.88 - model.cell.length_c = 3.88 - model.atom_sites.add("La", "La", 0, 0, 0, occupancy=0.5, b_iso=0.1) - model.atom_sites.add("Ba", "Ba", 0, 0, 0, occupancy=0.5, b_iso=0.1) - model.atom_sites.add("Co", "Co", 0.5, 0.5, 0.5, b_iso=0.1) - model.atom_sites.add("O", "O", 0, 0.5, 0.5, b_iso=0.1) - model.show_as_cif() - - # Create and configure experiment - expt = Experiment("npd", data_path="examples/data/hrpt.xye") - expt.instrument.setup_wavelength = 1.494 - expt.instrument.calib_twotheta_offset = 0 - expt.peak.broad_gauss_u = 0.1 - expt.peak.broad_gauss_v = -0.1 - expt.peak.broad_gauss_w = 0.2 - expt.peak.broad_lorentz_x = 0 - expt.peak.broad_lorentz_y = 0 - expt.linked_phases.add("lbco", scale=5.0) - expt.background.add(x=10, y=170) - expt.background.add(x=165, y=170) - #expt.background.add(x=10, y=168.345) - #expt.background.add(x=165, y=175.688) - expt.show_as_cif() - - # Create project and add sample model and experiments - project = Project() - project.sample_models.add(model) - project.experiments.add(expt) - - # Set calculator, minimizer and refinement strategy - project.analysis.current_calculator = "cryspy" - #project.analysis.current_calculator = "crysfml" - project.analysis.current_minimizer = "lmfit (leastsq)" - - # Compare measured and calculated patterns - project.analysis.show_meas_vs_calc_chart('npd', 65, 68) - - # ------------ 1st fitting ------------ - - # Define free parameters - model.cell.length_a.free = True - expt.linked_phases["lbco"].scale.free = True - expt.instrument.calib_twotheta_offset.free = True - expt.background["10"].y.free = True - expt.background["165"].y.free = True - project.analysis.show_free_params() - - # Start fitting - project.analysis.fit() - project.analysis.show_meas_vs_calc_chart('npd', 65, 68) - - # Compare fit quality - assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 5.79, decimal=1) - - # ------------ 2nd fitting ------------ - - # Define free parameters - expt.peak.broad_gauss_u.free = True - expt.peak.broad_gauss_v.free = True - expt.peak.broad_gauss_w.free = True - expt.peak.broad_lorentz_y.free = True - project.analysis.show_free_params() - - # Start fitting - project.analysis.fit() - project.analysis.show_meas_vs_calc_chart('npd', 65, 68) - - # Compare fit quality - assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 4.41, decimal=1) - - # ------------ 3rd fitting ------------ - - # Define free parameters - model.atom_sites['La'].b_iso.free = True - model.atom_sites['Ba'].b_iso.free = True - model.atom_sites['Co'].b_iso.free = True - model.atom_sites['O'].b_iso.free = True - project.analysis.show_free_params() - - # Start fitting - project.analysis.fit() - project.analysis.show_meas_vs_calc_chart('npd', 65, 68, show_residual=True) - project.analysis.show_meas_vs_calc_chart('npd', 38, 41, show_residual=True) - - # Compare fit quality - assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 1.3, decimal=1) - -if __name__ == '__main__': - single_fit_neutron_pd_cwl_lbco() diff --git a/tests/functional_test/fitting/test_joint-fit.py b/tests/functional_tests/fitting/test_joint-fit.py similarity index 100% rename from tests/functional_test/fitting/test_joint-fit.py rename to tests/functional_tests/fitting/test_joint-fit.py From 1d3a68122e362a6d51f564c2d98a54f063065259 Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Thu, 3 Apr 2025 00:07:09 +0200 Subject: [PATCH 08/17] Adds one more neutron TOF single fit test --- examples/data/wish.xye | 3738 +++++++++++++++++ .../fitting/test_single-fit.py | 108 + 2 files changed, 3846 insertions(+) create mode 100644 examples/data/wish.xye diff --git a/examples/data/wish.xye b/examples/data/wish.xye new file mode 100644 index 00000000..96afc425 --- /dev/null +++ b/examples/data/wish.xye @@ -0,0 +1,3738 @@ + 9001.0830 616.5238 124.5646 + 9006.8848 578.7690 123.1410 + 9012.6904 574.1842 120.5078 + 9018.5000 507.7390 111.3004 + 9024.3125 404.6729 101.6163 + 9030.1289 469.2446 107.9915 + 9035.9502 635.1085 127.8245 + 9041.7734 543.1372 120.8289 + 9047.6016 484.9023 111.5204 + 9053.4336 445.1275 109.1324 + 9059.2686 347.4635 93.6634 + 9065.1084 617.0405 126.7932 + 9070.9512 576.8036 120.3162 + 9076.7979 712.5355 134.0672 + 9082.6484 620.0366 123.8315 + 9088.5029 720.6974 136.0594 + 9094.3604 564.1151 119.0720 + 9100.2227 365.0545 93.5000 + 9106.0879 370.3114 95.6380 + 9111.9570 523.6797 116.8411 + 9117.8301 571.6153 118.0232 + 9123.7070 714.0051 131.9082 + 9129.5879 585.1690 118.8603 + 9135.4727 466.8810 106.3609 + 9141.3613 508.6755 111.5214 + 9147.2529 638.3206 124.9730 + 9153.1494 362.8364 93.6566 + 9159.0488 566.2712 116.3432 + 9164.9521 485.9381 108.7381 + 9170.8594 609.1086 122.8136 + 9176.7705 582.5652 116.9797 + 9182.6855 621.5011 121.8420 + 9188.6045 883.0145 145.3429 + 9194.5273 659.0529 124.5311 + 9200.4531 568.8738 115.2089 + 9206.3838 564.0538 115.2970 + 9212.3174 421.0109 99.8894 + 9218.2549 375.1641 95.9995 + 9224.1973 607.5444 119.3775 + 9230.1426 616.1116 120.2875 + 9236.0918 386.6833 94.9863 + 9242.0449 485.9658 107.4042 + 9248.0020 532.7363 112.2782 + 9253.9629 477.3066 104.0812 + 9259.9277 486.6284 104.3783 + 9265.8965 502.7439 107.0580 + 9271.8682 564.3146 115.0316 + 9277.8447 624.7780 119.8067 + 9283.8252 571.8458 114.3090 + 9289.8086 596.7616 117.2202 + 9295.7969 496.4203 106.9781 + 9301.7881 525.4587 110.0406 + 9307.7832 501.4486 105.2563 + 9313.7832 691.8386 124.5596 + 9319.7861 682.9370 124.2594 + 9325.7930 556.6350 112.4549 + 9331.8047 512.3129 107.1656 + 9337.8193 378.5969 92.6568 + 9343.8379 410.0165 95.9030 + 9349.8604 276.9253 79.3456 + 9355.8867 491.3475 103.9062 + 9361.9170 580.6963 113.3584 + 9367.9521 617.7881 119.9236 + 9373.9902 568.3715 115.0723 + 9380.0322 600.3414 116.2644 + 9386.0781 473.8503 103.0962 + 9392.1279 542.1959 109.2587 + 9398.1816 577.3224 114.4306 + 9404.2393 502.9972 106.0830 + 9410.3008 506.8326 106.9901 + 9416.3662 465.8021 101.7087 + 9422.4355 571.4907 111.5995 + 9428.5088 546.7087 109.3358 + 9434.5859 573.6819 112.6316 + 9440.6670 567.0126 112.7414 + 9446.7520 557.1264 110.7209 + 9452.8408 507.3026 106.7775 + 9458.9336 683.2375 123.6414 + 9465.0303 715.1289 124.9407 + 9471.1318 517.0317 106.8822 + 9477.2363 471.7939 100.6857 + 9483.3447 523.0942 105.9595 + 9489.4570 568.3591 111.6807 + 9495.5732 759.6263 129.1318 + 9501.6943 601.8923 114.5950 + 9507.8184 661.3259 121.5376 + 9513.9463 610.3862 114.5918 + 9520.0791 547.6583 109.1578 + 9526.2148 628.4547 116.6248 + 9532.3555 553.1008 109.1432 + 9538.4990 690.3983 121.6112 + 9544.6475 588.0695 112.0930 + 9550.7998 532.5637 106.7283 + 9556.9561 359.9300 87.4516 + 9563.1152 396.6148 91.3574 + 9569.2793 636.1392 116.8768 + 9575.4473 722.6893 125.3473 + 9581.6191 565.4546 110.0332 + 9587.7949 728.8880 124.0408 + 9593.9756 543.6382 107.5574 + 9600.1592 439.7151 96.0816 + 9606.3467 614.7404 113.8744 + 9612.5391 625.8616 114.1541 + 9618.7344 559.8218 108.0667 + 9624.9346 528.0361 104.7421 + 9631.1377 568.2603 108.5231 + 9637.3457 582.7477 109.9318 + 9643.5576 541.4024 105.8562 + 9649.7734 613.1142 113.0141 + 9655.9932 594.9603 111.0110 + 9662.2168 629.4634 114.0842 + 9668.4453 612.4935 112.8189 + 9674.6768 733.9620 124.1352 + 9680.9121 575.4259 110.2395 + 9687.1523 521.3265 105.4682 + 9693.3965 551.7878 106.5011 + 9699.6445 489.2700 100.5287 + 9705.8965 433.9322 95.3770 + 9712.1523 441.2436 95.1525 + 9718.4121 454.7330 96.2411 + 9724.6758 622.9948 113.2493 + 9730.9443 555.8172 106.2471 + 9737.2168 507.4637 101.1105 + 9743.4922 578.0834 107.3677 + 9749.7725 546.4438 105.6081 + 9756.0566 432.5383 94.1521 + 9762.3457 463.6765 96.9774 + 9768.6377 526.0423 104.2766 + 9774.9346 594.8401 110.1225 + 9781.2344 603.8064 110.2279 + 9787.5391 480.8822 98.0190 + 9793.8477 437.2849 93.4238 + 9800.1602 707.0799 118.9093 + 9806.4775 706.3381 120.1715 + 9812.7979 597.7761 110.5255 + 9819.1230 599.4302 110.0269 + 9825.4521 562.5288 106.2223 + 9831.7852 612.8766 109.8198 + 9838.1221 807.8895 126.3973 + 9844.4629 422.8417 92.1712 + 9850.8086 459.4882 96.4227 + 9857.1582 462.3648 97.0470 + 9863.5117 493.1387 99.1347 + 9869.8691 597.6732 108.2649 + 9876.2305 497.7225 99.6979 + 9882.5967 412.1822 90.7700 + 9888.9668 381.2498 85.7158 + 9895.3398 528.1137 102.8301 + 9901.7188 561.7123 106.1841 + 9908.1006 494.8336 99.0067 + 9914.4873 635.1906 111.8209 + 9920.8770 474.6756 97.2559 + 9927.2715 460.9756 95.4952 + 9933.6709 563.2111 104.9709 + 9940.0732 685.8744 115.0710 + 9946.4805 622.5620 110.9429 + 9952.8916 651.9067 113.4227 + 9959.3066 663.9639 113.7440 + 9965.7256 688.6656 115.7884 + 9972.1494 690.5305 116.3523 + 9978.5771 593.3500 107.4053 + 9985.0088 584.8026 107.4569 + 9991.4443 521.6248 100.5224 + 9997.8848 556.7350 103.6116 + 10004.3291 473.5220 94.5282 + 10010.7773 392.4601 85.9167 + 10017.2295 508.0121 97.8539 + 10023.6865 543.1883 101.8947 + 10030.1475 634.1846 109.8780 + 10036.6123 578.1782 105.9616 + 10043.0811 565.9174 103.8635 + 10049.5547 585.2458 105.6246 + 10056.0322 582.4425 105.3600 + 10062.5137 426.5603 89.8458 + 10068.9990 763.5866 120.5460 + 10075.4893 875.0350 128.5632 + 10081.9834 601.8100 106.6614 + 10088.4824 609.6995 106.8725 + 10094.9844 567.3589 102.9296 + 10101.4912 468.5223 93.9083 + 10108.0020 571.4433 102.8603 + 10114.5176 536.4808 100.0119 + 10121.0371 582.8102 104.7973 + 10127.5605 605.6284 106.1588 + 10134.0879 517.9040 98.4856 + 10140.6201 633.0200 107.8453 + 10147.1562 660.1509 110.6833 + 10153.6963 507.9441 97.1099 + 10160.2412 605.0079 105.7088 + 10166.7900 580.6290 104.3908 + 10173.3428 691.8148 114.4174 + 10179.9004 590.0404 104.9823 + 10186.4619 605.5563 104.8244 + 10193.0273 883.0253 127.2484 + 10199.5977 638.7524 108.2446 + 10206.1719 653.1803 109.9462 + 10212.7500 774.5423 119.5151 + 10219.3330 675.3073 111.9455 + 10225.9199 473.3779 93.0022 + 10232.5107 660.3060 110.4683 + 10239.1064 643.6127 108.3472 + 10245.7061 341.8695 78.3770 + 10252.3105 607.9151 105.5688 + 10258.9180 621.1572 106.7080 + 10265.5303 632.5179 107.1817 + 10272.1475 508.0466 96.9641 + 10278.7686 575.6414 101.7622 + 10285.3936 615.2693 105.5767 + 10292.0234 489.8145 94.2699 + 10298.6572 521.1044 96.9919 + 10305.2949 714.0280 114.2338 + 10311.9375 787.9246 119.6561 + 10318.5840 690.1690 111.1593 + 10325.2344 599.4498 103.9712 + 10331.8896 526.0405 97.6608 + 10338.5498 653.3248 108.1465 + 10345.2129 518.6042 96.1106 + 10351.8809 548.0269 99.6041 + 10358.5537 682.5699 111.0230 + 10365.2305 716.1989 113.1892 + 10371.9111 558.8095 99.5658 + 10378.5967 459.7978 90.7499 + 10385.2861 488.6848 94.7140 + 10391.9795 670.9097 110.4654 + 10398.6777 634.3093 106.6512 + 10405.3809 577.7670 101.4772 + 10412.0879 547.4811 98.5643 + 10418.7988 583.8990 102.2996 + 10425.5137 489.8947 93.3107 + 10432.2344 624.4255 105.0371 + 10438.9580 568.0349 100.4152 + 10445.6865 557.6937 98.8412 + 10452.4189 632.9849 105.5401 + 10459.1562 696.6785 110.7404 + 10465.8984 600.0011 102.8469 + 10472.6436 440.6848 88.2690 + 10479.3936 474.6535 90.9510 + 10486.1484 527.8721 96.3830 + 10492.9072 690.5810 110.0222 + 10499.6709 609.8265 103.9263 + 10506.4385 673.5565 108.6232 + 10513.2100 746.0980 113.7413 + 10519.9863 598.9112 102.7470 + 10526.7676 772.5912 115.7641 + 10533.5527 628.4690 104.4291 + 10540.3418 626.2224 104.1488 + 10547.1357 652.3903 105.4974 + 10553.9336 665.7985 108.1392 + 10560.7363 768.4733 115.6243 + 10567.5439 624.0690 104.1580 + 10574.3545 683.8314 108.7499 + 10581.1709 486.0779 91.6196 + 10587.9902 767.7344 115.3611 + 10594.8154 723.1490 111.8499 + 10601.6445 683.5104 108.1956 + 10608.4775 600.9186 101.0060 + 10615.3154 651.1881 105.8953 + 10622.1572 679.1816 107.7482 + 10629.0039 622.6347 102.8181 + 10635.8545 668.2379 106.3161 + 10642.7100 640.1962 104.6600 + 10649.5703 515.2122 94.5999 + 10656.4346 560.0872 97.8678 + 10663.3027 632.9900 104.7189 + 10670.1758 882.9495 122.7127 + 10677.0537 641.1802 104.3009 + 10683.9355 654.2632 105.3982 + 10690.8223 621.9618 103.0484 + 10697.7129 465.4166 88.2105 + 10704.6084 678.4645 107.4311 + 10711.5078 785.9625 115.6695 + 10718.4121 664.1807 106.6290 + 10725.3203 584.3903 98.8495 + 10732.2334 623.9540 102.3526 + 10739.1514 710.8472 109.7529 + 10746.0732 672.1886 106.3537 + 10752.9990 847.3445 118.8485 + 10759.9307 725.1749 110.2268 + 10766.8662 692.3107 107.4824 + 10773.8057 804.2415 116.0140 + 10780.7500 850.1141 119.4643 + 10787.6982 617.6224 102.5906 + 10794.6523 695.8190 107.4979 + 10801.6094 761.7904 113.2251 + 10808.5723 773.4253 113.9454 + 10815.5391 626.6290 101.7695 + 10822.5098 663.4282 104.9736 + 10829.4854 755.5078 111.8364 + 10836.4658 604.2316 99.8143 + 10843.4502 612.2696 100.8701 + 10850.4395 633.2261 102.0825 + 10857.4336 546.9874 94.8317 + 10864.4316 561.7803 96.0784 + 10871.4346 636.2363 102.5618 + 10878.4414 642.9914 102.3220 + 10885.4531 606.5118 99.0709 + 10892.4697 752.5883 109.8315 + 10899.4902 626.0106 100.6471 + 10906.5156 603.0911 99.0364 + 10913.5459 632.0645 100.3170 + 10920.5801 524.6959 91.8665 + 10927.6191 537.9813 93.2948 + 10934.6621 538.0339 93.4379 + 10941.7100 677.5840 103.9084 + 10948.7627 684.7773 104.8708 + 10955.8193 772.5413 110.8970 + 10962.8818 668.1647 103.6390 + 10969.9473 655.9599 101.8411 + 10977.0186 747.0591 108.5584 + 10984.0938 543.0203 93.4430 + 10991.1738 588.0403 95.7141 + 10998.2578 933.2109 120.7842 + 11005.3467 1130.6317 133.2799 + 11012.4404 781.9905 111.2077 + 11019.5381 714.2407 106.5367 + 11026.6416 756.4222 108.4706 + 11033.7480 621.4709 97.4954 + 11040.8604 648.9894 99.8579 + 11047.9766 707.2535 104.4446 + 11055.0977 623.9097 96.7755 + 11062.2236 551.4190 91.7810 + 11069.3535 624.3431 97.6015 + 11076.4883 619.6634 97.3526 + 11083.6279 502.2805 87.9613 + 11090.7715 563.6301 93.9529 + 11097.9209 559.1237 92.2635 + 11105.0732 583.6711 94.4767 + 11112.2314 634.5988 98.7155 + 11119.3936 798.2609 110.0811 + 11126.5605 937.6435 118.6405 + 11133.7324 751.3274 106.0672 + 11140.9092 634.9317 97.4403 + 11148.0898 690.1455 101.2985 + 11155.2754 628.1015 97.1224 + 11162.4658 599.7137 95.0737 + 11169.6602 614.9253 95.1331 + 11176.8604 541.2558 89.6623 + 11184.0645 676.9974 100.2329 + 11191.2725 688.8768 101.0588 + 11198.4863 632.4633 96.5275 + 11205.7041 728.0783 103.9711 + 11212.9268 695.3085 101.0446 + 11220.1543 805.2061 110.1058 + 11227.3857 727.5634 103.5474 + 11234.6230 547.1669 88.3281 + 11241.8643 742.0013 103.8255 + 11249.1104 614.0447 93.8062 + 11256.3604 621.5537 94.8361 + 11263.6162 579.3003 91.6242 + 11270.8760 592.2780 91.9113 + 11278.1406 820.7576 108.4260 + 11285.4102 803.2243 106.3408 + 11292.6846 668.6583 97.3539 + 11299.9629 690.8563 99.9638 + 11307.2461 674.7354 97.8223 + 11314.5342 595.8494 91.4709 + 11321.8271 588.7009 91.4885 + 11329.1250 637.4657 95.7039 + 11336.4277 734.5086 101.2733 + 11343.7344 720.5626 100.8728 + 11351.0459 642.0621 93.9880 + 11358.3623 404.8755 74.6071 + 11365.6836 650.8937 95.1765 + 11373.0088 855.2311 108.1925 + 11380.3398 787.9881 103.6659 + 11387.6748 685.0772 97.0393 + 11395.0146 620.9878 91.3929 + 11402.3594 527.7977 84.4464 + 11409.7090 590.5032 90.2969 + 11417.0635 615.1466 91.6692 + 11424.4219 602.4989 90.9623 + 11431.7861 550.5010 85.7231 + 11439.1543 599.8124 89.3317 + 11446.5273 585.3580 88.8519 + 11453.9053 594.4532 89.1260 + 11461.2881 682.8145 95.9049 + 11468.6758 693.5652 95.9276 + 11476.0674 985.4999 114.0475 + 11483.4648 963.4633 112.5393 + 11490.8662 721.6243 97.7581 + 11498.2725 729.5828 98.0479 + 11505.6836 799.0062 102.6023 + 11513.0996 634.7255 90.9324 + 11520.5205 491.4427 79.4694 + 11527.9463 663.7304 92.7645 + 11535.3770 568.1638 86.1612 + 11542.8125 543.2667 83.1976 + 11550.2520 548.1515 83.1546 + 11557.6973 551.8492 84.2239 + 11565.1465 727.5180 96.6332 + 11572.6006 838.7503 103.8410 + 11580.0596 690.6957 93.5126 + 11587.5234 605.6281 86.4094 + 11594.9932 489.9467 78.1140 + 11602.4658 552.9557 83.8228 + 11609.9443 629.7398 89.0880 + 11617.4277 557.9324 83.3715 + 11624.9160 636.7303 88.6921 + 11632.4092 565.8287 84.3378 + 11639.9062 592.5015 86.1821 + 11647.4092 756.9884 96.9420 + 11654.9170 725.5146 94.6602 + 11662.4287 584.0770 84.4863 + 11669.9463 619.7090 86.7898 + 11677.4678 632.9017 88.0366 + 11684.9941 763.6815 95.8895 + 11692.5264 593.1841 83.9244 + 11700.0625 663.4536 88.7712 + 11707.6035 643.6863 88.3319 + 11715.1504 761.9513 96.0849 + 11722.7012 678.3580 90.3310 + 11730.2568 714.4509 92.7965 + 11737.8184 649.3405 88.2198 + 11745.3838 833.2901 98.9368 + 11752.9541 750.5240 94.7700 + 11760.5293 704.9643 90.7821 + 11768.1104 597.0899 83.5890 + 11775.6953 666.8894 88.2286 + 11783.2852 1105.2635 113.1931 + 11790.8799 1158.1807 116.1525 + 11798.4805 874.2629 101.3362 + 11806.0850 848.7929 98.5085 + 11813.6943 899.7166 101.5971 + 11821.3086 950.7823 104.5681 + 11828.9287 877.3779 100.1931 + 11836.5527 722.1218 90.7997 + 11844.1826 551.6983 79.0298 + 11851.8164 585.1143 81.3381 + 11859.4551 870.0961 98.0054 + 11867.0996 589.0901 81.1798 + 11874.7490 636.8069 84.3768 + 11882.4023 606.0059 81.9649 + 11890.0615 655.9523 85.5066 + 11897.7256 834.7037 95.9463 + 11905.3936 692.2024 87.3207 + 11913.0674 699.1702 87.5944 + 11920.7461 644.1713 83.9130 + 11928.4297 607.6142 81.4676 + 11936.1182 651.1904 83.9789 + 11943.8115 667.8042 84.7559 + 11951.5098 565.9603 78.3766 + 11959.2139 506.6025 74.0326 + 11966.9219 462.6690 70.1741 + 11974.6357 634.4786 82.4021 + 11982.3535 643.5234 83.1217 + 11990.0771 682.4562 85.3593 + 11997.8057 751.7932 89.4540 + 12005.5381 1152.1444 110.4611 + 12013.2764 1110.4109 107.8903 + 12021.0195 829.2856 92.9911 + 12028.7686 690.3278 85.5078 + 12036.5215 717.9961 85.9346 + 12044.2793 684.0219 84.4525 + 12052.0430 767.5125 88.6384 + 12059.8105 719.4673 86.8223 + 12067.5840 584.5580 77.5711 + 12075.3623 689.0000 83.9926 + 12083.1455 989.7430 100.7438 + 12090.9336 1070.4615 104.8450 + 12098.7266 797.8419 90.5016 + 12106.5254 762.7537 88.3976 + 12114.3291 804.0601 90.3474 + 12122.1367 960.1435 98.0265 + 12129.9502 1196.4917 109.8807 + 12137.7686 943.3609 96.8822 + 12145.5918 718.6754 84.7097 + 12153.4209 693.4529 83.0451 + 12161.2539 756.7464 86.3256 + 12169.0928 784.9073 87.8827 + 12176.9365 742.0688 85.6628 + 12184.7852 734.8864 84.5286 + 12192.6387 577.3409 74.7074 + 12200.4980 644.5437 79.4550 + 12208.3613 520.6465 71.4027 + 12216.2305 700.0816 82.4143 + 12224.1045 613.7023 76.4086 + 12231.9834 546.1825 72.7260 + 12239.8682 700.6978 81.8516 + 12247.7568 751.6833 84.1964 + 12255.6514 572.6500 73.5746 + 12263.5508 613.8502 76.3332 + 12271.4551 698.3890 81.4141 + 12279.3652 563.7184 73.1260 + 12287.2803 599.4672 75.1176 + 12295.2002 509.7378 68.7998 + 12303.1250 620.5477 76.3402 + 12311.0547 606.3089 75.0792 + 12318.9902 672.0173 78.5159 + 12326.9297 691.8056 79.6579 + 12334.8750 574.4089 72.6175 + 12342.8262 575.4736 72.1876 + 12350.7812 641.7215 76.4964 + 12358.7422 649.6879 76.6595 + 12366.7080 865.0503 88.6246 + 12374.6797 798.9326 84.7205 + 12382.6553 664.6990 77.5979 + 12390.6367 680.8128 77.5379 + 12398.6230 698.0260 78.6293 + 12406.6152 777.5549 83.0560 + 12414.6113 778.3750 83.1608 + 12422.6133 691.2896 78.6893 + 12430.6201 731.1673 80.5018 + 12438.6328 662.5085 76.0178 + 12446.6504 663.4716 76.1249 + 12454.6729 703.7883 78.3217 + 12462.7002 650.7530 75.7165 + 12470.7334 553.0976 69.6450 + 12478.7715 517.0090 66.7349 + 12486.8145 720.4581 78.7211 + 12494.8633 1054.5046 95.2662 + 12502.9170 1152.0321 98.9857 + 12510.9756 790.1086 81.5452 + 12519.0391 766.6598 80.7073 + 12527.1084 802.6190 82.5134 + 12535.1826 745.7275 79.5447 + 12543.2627 796.8845 81.6484 + 12551.3477 679.0886 75.6965 + 12559.4375 694.1020 76.5753 + 12567.5322 761.7083 79.5239 + 12575.6328 832.6996 83.1360 + 12583.7393 909.0788 86.6690 + 12591.8496 844.3148 83.3660 + 12599.9658 715.3505 76.7582 + 12608.0869 567.3729 68.1545 + 12616.2139 619.7593 71.4567 + 12624.3457 645.7062 72.8760 + 12632.4824 713.2050 76.3384 + 12640.6250 657.4009 72.7821 + 12648.7725 563.6629 67.4494 + 12656.9258 562.9911 67.3102 + 12665.0840 636.9821 71.0718 + 12673.2471 701.2706 74.7072 + 12681.4150 745.6368 76.8071 + 12689.5898 599.0714 68.6225 + 12697.7686 640.6844 70.7934 + 12705.9531 585.4860 67.8916 + 12714.1426 603.9673 68.8877 + 12722.3379 697.1536 73.9627 + 12730.5381 477.5436 60.7475 + 12738.7432 590.5460 67.9388 + 12746.9541 671.6137 71.6579 + 12755.1699 803.9385 78.5926 + 12763.3916 1056.5629 89.8016 + 12771.6182 859.0614 80.8770 + 12779.8506 640.3275 69.5740 + 12788.0879 602.2788 67.9046 + 12796.3301 488.0248 61.2314 + 12804.5781 682.0722 71.9147 + 12812.8311 776.3256 77.2668 + 12821.0898 666.3643 70.9346 + 12829.3535 639.1403 68.8660 + 12837.6230 653.5207 69.7199 + 12845.8975 701.0706 72.2199 + 12854.1777 875.6655 80.6832 + 12862.4629 801.1112 77.0577 + 12870.7529 627.6550 67.5737 + 12879.0488 561.1902 63.8190 + 12887.3506 589.4783 65.3989 + 12895.6572 779.7150 74.7292 + 12903.9688 794.0842 75.9050 + 12912.2861 634.5909 67.6715 + 12920.6094 584.1777 65.0951 + 12928.9375 575.5122 64.5721 + 12937.2705 481.9594 58.5983 + 12945.6094 679.1887 69.1037 + 12953.9531 685.8073 69.7658 + 12962.3027 569.7296 63.4814 + 12970.6582 553.6602 62.4144 + 12979.0186 530.7023 61.1755 + 12987.3838 566.0844 63.0173 + 12995.7549 489.2720 58.8290 + 13004.1318 518.0748 60.2690 + 13012.5137 587.7905 63.8280 + 13020.9004 584.1393 63.7248 + 13029.2930 544.9796 61.3874 + 13037.6914 765.4034 72.2858 + 13046.0947 1166.0276 88.8369 + 13054.5039 1233.6228 91.6337 + 13062.9180 854.4602 76.5484 + 13071.3379 647.0286 66.1285 + 13079.7627 619.3501 64.8059 + 13088.1934 573.4742 62.5580 + 13096.6299 759.6768 71.1771 + 13105.0713 692.0609 67.8527 + 13113.5186 656.9860 65.9566 + 13121.9707 558.2817 60.8941 + 13130.4287 582.0827 61.7619 + 13138.8916 646.0717 65.3626 + 13147.3604 650.3133 65.1375 + 13155.8350 594.5843 62.2534 + 13164.3145 576.9293 61.1597 + 13172.7998 533.2228 58.7139 + 13181.2900 578.6979 61.4877 + 13189.7861 728.8979 68.6410 + 13198.2871 822.8171 72.4960 + 13206.7949 715.6953 67.5535 + 13215.3066 683.2546 65.8382 + 13223.8252 514.4564 57.0010 + 13232.3486 535.8707 58.2306 + 13240.8779 595.3934 61.3036 + 13249.4121 571.0776 60.0694 + 13257.9521 599.1833 61.3179 + 13266.4971 522.7525 57.1545 + 13275.0488 473.0939 54.0636 + 13283.6045 541.5643 57.9225 + 13292.1670 547.1440 58.0329 + 13300.7344 653.5502 63.2866 + 13309.3076 635.5248 62.7581 + 13317.8857 611.9659 61.2317 + 13326.4697 514.8812 56.1322 + 13335.0596 608.2326 61.1386 + 13343.6553 676.7817 64.2001 + 13352.2559 749.2232 67.2144 + 13360.8623 806.0350 69.4236 + 13369.4736 643.2410 61.9443 + 13378.0908 610.4850 60.5950 + 13386.7139 561.2643 57.8518 + 13395.3428 551.2678 57.3995 + 13403.9766 558.0214 57.2280 + 13412.6162 635.2734 61.3279 + 13421.2617 506.6467 54.7230 + 13429.9121 490.8276 53.3553 + 13438.5684 602.9478 59.1996 + 13447.2305 648.2054 61.5202 + 13455.8975 953.1877 74.3240 + 13464.5703 1034.3925 77.4691 + 13473.2490 683.6792 62.8368 + 13481.9336 514.7656 54.1625 + 13490.6240 589.6709 57.7787 + 13499.3193 550.3303 55.8998 + 13508.0205 703.8288 62.9778 + 13516.7266 896.3698 70.9781 + 13525.4385 734.8408 64.2586 + 13534.1572 645.5374 59.8310 + 13542.8799 543.2640 55.2708 + 13551.6094 573.4308 56.2180 + 13560.3438 699.2403 61.7412 + 13569.0850 829.3775 67.4495 + 13577.8311 726.7728 63.0566 + 13586.5820 690.9243 61.4051 + 13595.3398 603.0078 57.2338 + 13604.1025 516.6602 52.9113 + 13612.8711 611.1099 57.4566 + 13621.6455 671.8758 60.3460 + 13630.4248 686.8781 61.0366 + 13639.2109 585.8759 55.8135 + 13648.0020 567.0966 54.6704 + 13656.7988 530.5153 52.4840 + 13665.6016 551.7238 53.4999 + 13674.4102 658.8408 58.3320 + 13683.2236 855.9510 66.7045 + 13692.0430 647.3004 58.4868 + 13700.8682 621.1400 56.7367 + 13709.6992 478.3523 49.8591 + 13718.5361 589.3060 55.0379 + 13727.3779 605.5124 55.7599 + 13736.2266 526.3812 51.6718 + 13745.0801 502.3449 50.4267 + 13753.9395 580.3007 54.1935 + 13762.8047 534.4863 51.8148 + 13771.6758 471.8757 48.3505 + 13780.5527 517.3449 50.6321 + 13789.4346 780.1372 62.4248 + 13798.3223 802.3751 62.8818 + 13807.2168 604.8228 54.1264 + 13816.1162 594.4506 54.1159 + 13825.0215 567.1054 52.7349 + 13833.9326 492.7015 48.9696 + 13842.8486 559.9146 52.2297 + 13851.7715 635.2558 55.1383 + 13860.6992 591.7744 53.2453 + 13869.6338 538.8041 50.4968 + 13878.5732 543.2240 50.5881 + 13887.5186 490.8360 48.3774 + 13896.4697 543.5420 50.6140 + 13905.4268 789.7026 60.4482 + 13914.3896 1018.7766 69.0684 + 13923.3584 865.9123 63.5295 + 13932.3330 627.3937 53.8122 + 13941.3135 578.9666 51.9568 + 13950.2988 551.6395 50.6221 + 13959.2910 497.8517 48.0248 + 13968.2881 512.8483 48.5216 + 13977.2920 501.0571 47.4628 + 13986.3008 570.6542 50.8000 + 13995.3154 550.0325 50.0253 + 14004.3359 534.0259 48.8255 + 14013.3633 640.8839 53.3132 + 14022.3955 853.1932 61.2755 + 14031.4336 1277.0286 75.0605 + 14040.4775 1275.8387 74.8813 + 14049.5273 853.8285 61.5150 + 14058.5830 706.4083 55.9645 + 14067.6445 617.2379 51.8112 + 14076.7119 576.2997 49.9760 + 14085.7852 717.2878 55.4056 + 14094.8643 941.0585 63.5469 + 14103.9492 805.0512 58.7557 + 14113.0400 624.1361 51.6770 + 14122.1367 592.5798 50.3344 + 14131.2393 519.1149 46.9980 + 14140.3477 536.9901 47.5544 + 14149.4619 741.7604 55.5179 + 14158.5820 716.4348 54.6951 + 14167.7080 643.2356 51.6348 + 14176.8398 590.6546 49.3577 + 14185.9775 506.5467 45.5659 + 14195.1211 518.8604 45.9553 + 14204.2705 548.1202 47.0621 + 14213.4258 515.2361 45.4826 + 14222.5869 464.2630 43.1399 + 14231.7549 543.3320 46.6775 + 14240.9277 561.6752 47.2059 + 14250.1064 558.1193 47.1718 + 14259.2920 599.8186 48.5327 + 14268.4824 665.0654 51.0476 + 14277.6797 1105.2238 65.4692 + 14286.8818 1404.4143 73.8606 + 14296.0908 1047.8887 63.8341 + 14305.3057 743.6926 53.4290 + 14314.5264 718.9590 52.4301 + 14323.7520 610.9850 48.3852 + 14332.9844 545.6338 45.3951 + 14342.2236 587.7032 47.0538 + 14351.4678 545.1635 45.1670 + 14360.7178 520.8699 43.9850 + 14369.9746 542.8289 44.9754 + 14379.2363 566.0510 45.8707 + 14388.5049 521.1606 43.9159 + 14397.7783 682.6902 50.0595 + 14407.0586 886.9072 56.7737 + 14416.3447 1135.5222 64.1226 + 14425.6367 849.5814 55.5005 + 14434.9355 574.1880 45.2149 + 14444.2393 593.5576 46.1513 + 14453.5498 597.1111 45.8151 + 14462.8652 641.8317 47.7411 + 14472.1875 777.3178 52.7338 + 14481.5156 818.6457 53.5624 + 14490.8496 741.0818 50.8659 + 14500.1904 675.6508 48.5101 + 14509.5361 543.1879 43.4288 + 14518.8887 561.8742 44.2370 + 14528.2471 573.1241 44.1763 + 14537.6113 624.9592 46.3859 + 14546.9814 733.5587 49.9492 + 14556.3574 661.7615 47.2283 + 14565.7402 625.0342 46.1060 + 14575.1279 590.8254 44.5985 + 14584.5225 557.9774 42.9565 + 14593.9229 553.1690 42.7881 + 14603.3301 668.7990 46.9818 + 14612.7422 799.2245 51.1560 + 14622.1611 921.1758 54.8211 + 14631.5859 728.0903 48.5782 + 14641.0166 632.9242 45.5309 + 14650.4541 559.4572 42.5445 + 14659.8965 582.7464 43.3162 + 14669.3457 585.1375 43.1612 + 14678.8008 662.3044 45.8121 + 14688.2627 687.2189 46.5614 + 14697.7295 614.2686 43.9766 + 14707.2031 563.1790 41.8903 + 14716.6826 539.8126 41.1521 + 14726.1689 512.1021 40.0619 + 14735.6602 558.8336 41.5584 + 14745.1582 542.3467 40.7367 + 14754.6621 533.3825 40.3819 + 14764.1729 543.9416 40.7207 + 14773.6885 526.6085 39.9464 + 14783.2109 504.7410 38.8956 + 14792.7402 525.1342 39.6283 + 14802.2744 563.9805 41.2185 + 14811.8154 692.9059 45.3122 + 14821.3623 1243.9113 60.5907 + 14830.9160 1619.6217 69.0467 + 14840.4756 1118.1075 57.2095 + 14850.0410 795.3826 47.9905 + 14859.6123 633.6556 42.7662 + 14869.1904 588.6115 41.0107 + 14878.7744 581.8881 40.5228 + 14888.3643 698.8922 44.5302 + 14897.9609 789.3181 47.3660 + 14907.5635 835.1422 48.5047 + 14917.1719 647.5587 42.5925 + 14926.7871 611.4151 41.2001 + 14936.4082 603.4113 41.1348 + 14946.0352 640.9056 42.1682 + 14955.6689 654.7645 42.5303 + 14965.3086 725.2419 44.7052 + 14974.9541 933.6310 50.5395 + 14984.6064 852.1497 48.0239 + 14994.2656 724.9672 44.4220 + 15003.9297 608.4423 40.5764 + 15013.6006 565.9108 38.9744 + 15023.2773 574.3429 39.2520 + 15032.9609 654.2051 41.5374 + 15042.6504 822.3851 46.5197 + 15052.3467 966.7227 50.2694 + 15062.0488 794.7244 45.7331 + 15071.7568 651.0191 41.2102 + 15081.4717 552.2231 37.9298 + 15091.1924 531.5408 37.0139 + 15100.9189 671.0892 41.5348 + 15110.6523 827.5993 46.0820 + 15120.3926 1373.3806 59.0512 + 15130.1387 1354.3275 58.4036 + 15139.8906 948.9196 48.8325 + 15149.6484 898.1968 47.6040 + 15159.4141 981.1047 49.6247 + 15169.1846 840.9633 45.7286 + 15178.9619 704.6940 41.8661 + 15188.7461 791.2697 44.2176 + 15198.5361 890.0527 46.7981 + 15208.3320 803.2572 44.4981 + 15218.1348 660.2156 40.0693 + 15227.9434 628.3080 38.8824 + 15237.7588 622.1378 38.5775 + 15247.5801 628.7583 38.7342 + 15257.4082 702.8167 41.1445 + 15267.2422 1182.0746 53.0932 + 15277.0830 2185.5374 71.7891 + 15286.9297 2040.5090 69.3053 + 15296.7832 1203.4050 53.2479 + 15306.6426 954.3597 47.3296 + 15316.5088 754.9908 41.8422 + 15326.3809 654.8976 38.9864 + 15336.2598 690.9715 39.8948 + 15346.1445 766.7000 41.9311 + 15356.0361 880.6774 44.7787 + 15365.9346 886.1819 44.6318 + 15375.8379 731.7574 40.6339 + 15385.7490 686.5638 39.3818 + 15395.6660 603.3825 36.7369 + 15405.5889 570.6353 35.6306 + 15415.5186 571.7258 35.8135 + 15425.4551 589.0206 36.1599 + 15435.3975 742.2463 40.3292 + 15445.3467 825.1175 42.4441 + 15455.3018 668.3007 38.2082 + 15465.2637 595.4822 35.9781 + 15475.2324 583.3715 35.5969 + 15485.2070 540.2766 34.1539 + 15495.1875 576.1401 35.1704 + 15505.1748 596.5496 35.6979 + 15515.1689 523.1502 33.4944 + 15525.1699 572.8839 34.8591 + 15535.1768 560.8074 34.4280 + 15545.1895 591.0893 35.2502 + 15555.2090 575.2555 34.8417 + 15565.2354 522.5818 33.0115 + 15575.2686 517.1093 32.7189 + 15585.3076 688.5292 37.8237 + 15595.3525 1058.2767 46.7715 + 15605.4053 1395.9801 53.4310 + 15615.4639 1169.4625 48.8834 + 15625.5283 852.7017 41.6616 + 15635.5996 635.7922 35.7127 + 15645.6777 623.7190 35.4122 + 15655.7627 594.3930 34.5890 + 15665.8535 577.8781 34.0374 + 15675.9512 731.1599 38.0799 + 15686.0547 910.4507 42.5492 + 15696.1650 870.4072 41.3710 + 15706.2822 707.6799 37.1722 + 15716.4062 593.8625 34.1291 + 15726.5361 597.6387 34.0908 + 15736.6729 634.8500 35.1623 + 15746.8154 696.9476 36.6245 + 15756.9658 870.3953 41.0338 + 15767.1221 1847.9531 59.5170 + 15777.2842 2655.0564 71.1271 + 15787.4541 1788.0879 58.4500 + 15797.6299 1034.8285 44.2599 + 15807.8125 770.9401 38.1181 + 15818.0010 751.0989 37.4702 + 15828.1973 744.3082 37.2522 + 15838.3984 772.5428 37.9596 + 15848.6074 1178.5974 46.7205 + 15858.8232 2259.6611 64.5160 + 15869.0449 2256.9651 64.3189 + 15879.2734 1497.8539 52.4805 + 15889.5088 997.3542 42.7431 + 15899.7500 822.6108 38.6678 + 15909.9980 713.0450 35.9113 + 15920.2529 722.3003 36.1684 + 15930.5146 774.3187 37.3118 + 15940.7822 1006.8514 42.4495 + 15951.0576 1319.7703 48.5253 + 15961.3389 1161.6370 45.4392 + 15971.6270 845.1373 38.7310 + 15981.9209 724.3878 35.6514 + 15992.2227 631.6946 33.2481 + 16002.5303 657.3871 33.9407 + 16012.8447 656.4905 33.6885 + 16023.1660 602.4524 32.2973 + 16033.4941 677.6528 34.2224 + 16043.8281 690.5566 34.5481 + 16054.1689 623.7227 32.7358 + 16064.5176 556.2329 30.7852 + 16074.8721 575.9514 31.2953 + 16085.2324 617.8679 32.2714 + 16095.6006 618.5084 32.2848 + 16105.9746 639.9910 32.8438 + 16116.3564 877.3209 38.3677 + 16126.7441 1760.5916 54.1966 + 16137.1387 2341.4512 62.3696 + 16147.5400 1539.4171 50.4039 + 16157.9482 952.0225 39.4879 + 16168.3623 799.0753 36.1803 + 16178.7842 730.1081 34.5853 + 16189.2119 653.4651 32.6558 + 16199.6465 625.2949 31.8532 + 16210.0889 638.0407 32.2045 + 16220.5371 632.9579 31.9635 + 16230.9922 661.7007 32.7263 + 16241.4531 623.4064 31.6257 + 16251.9219 621.4011 31.5264 + 16262.3975 635.5426 31.7112 + 16272.8789 585.7025 30.4121 + 16283.3682 576.1962 30.1404 + 16293.8633 570.9596 29.9643 + 16304.3662 776.8545 34.9598 + 16314.8750 1326.4714 45.4915 + 16325.3906 1675.6042 50.9612 + 16335.9131 1164.0232 42.3832 + 16346.4424 768.1096 34.3065 + 16356.9785 664.3526 31.8211 + 16367.5215 653.7167 31.5690 + 16378.0713 678.1047 32.1729 + 16388.6289 684.8791 32.2374 + 16399.1914 667.1322 31.7648 + 16409.7617 844.7567 35.6870 + 16420.3379 978.1400 38.2731 + 16430.9219 811.5103 34.8905 + 16441.5137 626.3467 30.4912 + 16452.1113 613.4676 30.1042 + 16462.7148 596.9344 29.7073 + 16473.3262 608.2079 29.9380 + 16483.9434 571.7435 28.9555 + 16494.5684 598.9792 29.6417 + 16505.2012 716.2581 32.2288 + 16515.8398 982.6252 37.6274 + 16526.4844 931.3287 36.6626 + 16537.1367 732.2713 32.4383 + 16547.7949 642.7180 30.2775 + 16558.4609 594.3431 29.1274 + 16569.1348 621.9531 29.8376 + 16579.8145 550.5900 27.9256 + 16590.5000 608.8237 29.2978 + 16601.1934 813.8988 33.8505 + 16611.8945 1417.5970 44.4770 + 16622.6016 1704.2246 48.7139 + 16633.3164 1131.1512 39.6626 + 16644.0371 799.1349 33.3518 + 16654.7656 690.7255 30.8837 + 16665.5000 645.8638 29.8289 + 16676.2422 627.5622 29.3231 + 16686.9902 593.5963 28.4276 + 16697.7461 652.9009 29.8248 + 16708.5098 812.8400 33.1643 + 16719.2793 1139.9910 39.2192 + 16730.0547 1108.0675 38.6153 + 16740.8379 775.4943 32.2767 + 16751.6289 648.1876 29.4617 + 16762.4258 688.9994 30.2997 + 16773.2305 607.4106 28.3931 + 16784.0410 608.7884 28.3714 + 16794.8594 584.1471 27.7085 + 16805.6855 616.6749 28.4861 + 16816.5176 749.1033 31.2717 + 16827.3574 835.1069 32.8562 + 16838.2031 727.1699 30.6906 + 16849.0566 626.4309 28.3881 + 16859.9160 596.2249 27.7436 + 16870.7832 558.8745 26.7797 + 16881.6562 555.0423 26.6922 + 16892.5391 514.9409 25.6388 + 16903.4258 555.1996 26.4894 + 16914.3223 782.1595 31.4618 + 16925.2246 1380.3313 41.6843 + 16936.1328 1582.2400 44.5137 + 16947.0488 1096.2792 37.0210 + 16957.9727 769.6401 30.9994 + 16968.9023 635.0244 28.1195 + 16979.8398 580.3257 26.7963 + 16990.7852 585.7401 26.9363 + 17001.7363 582.4215 26.7817 + 17012.6953 506.8758 24.9655 + 17023.6602 541.6464 25.6855 + 17034.6328 555.3715 25.9923 + 17045.6133 512.8852 24.8892 + 17056.5996 537.8019 25.4608 + 17067.5938 487.0581 24.2141 + 17078.5938 517.5128 24.8977 + 17089.6035 535.8491 25.2735 + 17100.6172 508.0594 24.5739 + 17111.6406 537.2424 25.1787 + 17122.6699 568.5259 25.8488 + 17133.7070 622.1826 27.0086 + 17144.7500 786.1248 30.3317 + 17155.8008 821.0763 30.9705 + 17166.8574 709.9149 28.7501 + 17177.9238 577.3651 25.9055 + 17188.9961 536.3860 24.8369 + 17200.0742 537.7709 24.8574 + 17211.1602 490.5738 23.7411 + 17222.2539 473.0458 23.3025 + 17233.3555 490.0726 23.6617 + 17244.4629 571.7233 25.5190 + 17255.5781 740.5894 28.9156 + 17266.7012 792.7681 29.9292 + 17277.8301 659.9334 27.2395 + 17288.9668 521.7311 24.2113 + 17300.1094 527.7910 24.2994 + 17311.2598 538.2499 24.4946 + 17322.4180 527.7819 24.1651 + 17333.5840 491.6288 23.2666 + 17344.7559 522.9793 23.9887 + 17355.9355 760.8285 28.9477 + 17367.1230 1513.3101 40.6455 + 17378.3164 2309.9739 50.0564 + 17389.5176 1771.9078 43.8820 + 17400.7266 1032.0500 33.4059 + 17411.9434 783.5558 29.1106 + 17423.1660 671.8218 26.8531 + 17434.3965 632.3737 26.0556 + 17445.6328 607.5336 25.4833 + 17456.8770 605.0914 25.3118 + 17468.1289 616.1619 25.5196 + 17479.3887 609.6509 25.4118 + 17490.6543 661.5085 26.4753 + 17501.9297 680.1683 26.7138 + 17513.2090 610.2725 25.2629 + 17524.4980 553.4711 24.0330 + 17535.7930 539.7408 23.7080 + 17547.0957 498.3654 22.7090 + 17558.4062 530.1817 23.3608 + 17569.7246 524.0115 23.1753 + 17581.0488 515.0505 22.9575 + 17592.3809 574.2888 24.1792 + 17603.7188 810.3743 28.7017 + 17615.0664 1050.6152 32.6210 + 17626.4199 901.6042 30.1967 + 17637.7812 647.8284 25.5806 + 17649.1504 561.5704 23.7604 + 17660.5254 548.6754 23.4670 + 17671.9082 520.3683 22.7719 + 17683.2988 513.9087 22.6103 + 17694.6973 513.1481 22.5325 + 17706.1016 589.8131 24.0683 + 17717.5156 1020.8804 31.7085 + 17728.9355 2183.5469 46.2011 + 17740.3613 2565.9871 50.0389 + 17751.7969 1679.5725 40.4909 + 17763.2383 1080.1619 32.3923 + 17774.6875 863.2980 28.8768 + 17786.1445 755.7752 26.9938 + 17797.6094 701.2040 25.9163 + 17809.0801 669.0114 25.2420 + 17820.5586 677.0681 25.4357 + 17832.0449 646.3285 24.7537 + 17843.5391 669.0266 25.1603 + 17855.0410 803.2053 27.5107 + 17866.5488 843.9250 28.1874 + 17878.0645 703.4527 25.6661 + 17889.5879 591.7242 23.5144 + 17901.1191 578.2111 23.2547 + 17912.6582 596.2466 23.5220 + 17924.2031 661.2957 24.7584 + 17935.7559 793.7516 27.0511 + 17947.3164 766.0275 26.5021 + 17958.8848 615.9729 23.7536 + 17970.4609 647.5059 24.3235 + 17982.0430 832.6804 27.5415 + 17993.6328 859.9863 27.9841 + 18005.2324 686.9409 24.9544 + 18016.8379 598.9411 23.2646 + 18028.4492 522.9802 21.6508 + 18040.0703 536.3832 21.8715 + 18051.6973 527.3445 21.6576 + 18063.3340 502.3612 21.0966 + 18074.9766 467.7003 20.3683 + 18086.6270 495.6470 20.9291 + 18098.2852 614.5449 23.3026 + 18109.9492 861.9337 27.5488 + 18121.6230 1036.4852 30.1631 + 18133.3027 776.1372 26.0558 + 18144.9902 646.4081 23.7172 + 18156.6855 570.9946 22.2690 + 18168.3887 562.2493 22.0265 + 18180.0996 545.4714 21.6602 + 18191.8184 523.2269 21.1784 + 18203.5430 539.0876 21.4510 + 18215.2773 532.4699 21.3199 + 18227.0176 555.6035 21.7629 + 18238.7656 684.8148 24.1267 + 18250.5215 923.2856 27.9912 + 18262.2852 793.5041 25.9121 + 18274.0566 591.9269 22.3116 + 18285.8340 534.7267 21.1686 + 18297.6211 543.6495 21.3502 + 18309.4141 514.0262 20.7083 + 18321.2168 499.9258 20.3650 + 18333.0254 512.6842 20.5944 + 18344.8418 505.0090 20.4153 + 18356.6660 537.3241 21.0963 + 18368.4980 761.3011 25.0755 + 18380.3379 1272.9261 32.2728 + 18392.1836 1385.1763 33.6536 + 18404.0391 931.9377 27.5354 + 18415.9023 714.4473 24.0822 + 18427.7715 623.6479 22.4333 + 18439.6484 604.1809 22.0441 + 18451.5352 586.3978 21.7152 + 18463.4277 542.7628 20.8314 + 18475.3281 521.3582 20.3681 + 18487.2363 495.1586 19.8125 + 18499.1523 500.1943 19.8998 + 18511.0762 563.6830 21.1170 + 18523.0078 624.3240 22.1972 + 18534.9473 576.8954 21.2568 + 18546.8945 531.8251 20.4355 + 18558.8477 524.6146 20.2334 + 18570.8105 505.9297 19.8252 + 18582.7812 518.7468 20.0562 + 18594.7578 470.0904 19.1049 + 18606.7441 480.4470 19.2681 + 18618.7363 464.0750 18.8925 + 18630.7363 454.9272 18.6616 + 18642.7461 457.5750 18.6654 + 18654.7617 563.5211 20.7316 + 18666.7852 677.0947 22.6187 + 18678.8184 622.0811 21.7413 + 18690.8574 545.9423 20.3173 + 18702.9043 508.5041 19.6094 + 18714.9590 489.3709 19.1865 + 18727.0215 480.5808 18.9806 + 18739.0938 433.2179 17.9544 + 18751.1719 447.6191 18.2353 + 18763.2578 458.6739 18.4313 + 18775.3516 446.8253 18.1772 + 18787.4531 430.9046 17.8035 + 18799.5625 428.4959 17.7304 + 18811.6797 466.0811 18.4499 + 18823.8047 443.4806 18.0127 + 18835.9375 434.1476 17.7963 + 18848.0781 415.1644 17.3575 + 18860.2285 437.9628 17.7771 + 18872.3848 463.3191 18.2732 + 18884.5488 456.8907 18.1685 + 18896.7207 456.8084 18.1163 + 18908.9004 485.2209 18.6388 + 18921.0879 504.2218 18.9560 + 18933.2832 598.1896 20.6164 + 18945.4883 1209.7845 29.3188 + 18957.6992 2418.4509 41.2984 + 18969.9180 2162.2080 39.0130 + 18982.1445 1301.3955 30.2309 + 18994.3809 919.6776 25.3321 + 19006.6230 781.9523 23.2691 + 19018.8750 718.4948 22.2439 + 19031.1328 661.2267 21.3154 + 19043.4004 593.3051 20.1841 + 19055.6738 602.2499 20.3454 + 19067.9570 615.5949 20.4947 + 19080.2461 598.9524 20.1923 + 19092.5449 562.9288 19.5245 + 19104.8516 552.3806 19.3119 + 19117.1660 560.2880 19.4321 + 19129.4883 527.9282 18.8535 + 19141.8164 539.8740 18.9996 + 19154.1543 529.9208 18.8018 + 19166.5020 520.0184 18.5968 + 19178.8555 547.2155 19.0478 + 19191.2168 526.3147 18.6529 + 19203.5859 498.8937 18.1714 + 19215.9648 471.8254 17.6259 + 19228.3496 469.8281 17.5578 + 19240.7441 535.9037 18.7063 + 19253.1465 862.0489 23.7191 + 19265.5547 1443.9116 30.6355 + 19277.9727 1352.0037 29.5736 + 19290.3984 902.9600 24.1023 + 19302.8320 697.6841 21.1411 + 19315.2734 631.8572 20.1272 + 19327.7246 594.6260 19.4422 + 19340.1816 592.6336 19.3934 + 19352.6484 571.6512 19.0260 + 19365.1211 546.0762 18.5656 + 19377.6035 542.8649 18.4931 + 19390.0938 533.6711 18.2953 + 19402.5918 573.9327 18.9497 + 19415.0977 736.0451 21.4291 + 19427.6113 988.9863 24.7405 + 19440.1328 889.8405 23.4632 + 19452.6641 701.3165 20.7966 + 19465.2012 576.6866 18.8561 + 19477.7480 574.8846 18.7795 + 19490.3027 545.6329 18.2332 + 19502.8652 546.9728 18.2868 + 19515.4355 523.7413 17.8310 + 19528.0156 502.4870 17.4175 + 19540.6016 484.8213 17.0949 + 19553.1973 492.1527 17.1900 + 19565.7988 572.8962 18.5160 + 19578.4102 928.0930 23.5520 + 19591.0312 1479.3815 29.6149 + 19603.6582 1329.8677 28.0483 + 19616.2930 890.2293 22.9050 + 19628.9375 723.7437 20.6029 + 19641.5898 638.5383 19.2844 + 19654.2500 610.5624 18.8368 + 19666.9180 601.4871 18.6679 + 19679.5938 564.8597 18.0527 + 19692.2793 585.1500 18.3798 + 19704.9707 543.2564 17.6932 + 19717.6719 529.5002 17.4350 + 19730.3809 604.4803 18.6276 + 19743.0977 894.5596 22.6498 + 19755.8242 1603.5807 30.1930 + 19768.5586 1697.0762 30.9888 + 19781.2988 1183.4371 25.8825 + 19794.0488 853.7780 21.8973 + 19806.8086 739.4201 20.3275 + 19819.5742 705.4079 19.8104 + 19832.3496 677.9467 19.3703 + 19845.1328 629.7987 18.6696 + 19857.9238 609.4720 18.3086 + 19870.7227 592.0474 18.0074 + 19883.5312 590.5312 18.0148 + 19896.3477 592.4982 18.0093 + 19909.1719 760.4450 20.3403 + 19922.0039 1381.2944 27.3651 + 19934.8457 1983.8279 32.7342 + 19947.6934 1539.5017 28.8685 + 19960.5508 1065.0992 23.9699 + 19973.4160 849.5386 21.3247 + 19986.2910 761.0806 20.2075 + 19999.1738 730.1846 19.7157 + 20012.0645 676.7673 18.9659 + 20024.9629 654.3164 18.6415 + 20037.8691 691.3091 19.1767 + 20050.7852 733.2406 19.6859 + 20063.7090 751.6783 19.8410 + 20076.6406 677.1987 18.8116 + 20089.5820 605.2659 17.7420 + 20102.5312 585.0325 17.4364 + 20115.4883 556.7183 16.9559 + 20128.4531 558.7780 16.9581 + 20141.4277 536.5599 16.5939 + 20154.4102 528.0300 16.4307 + 20167.4004 515.9955 16.2284 + 20180.3984 492.3274 15.8208 + 20193.4062 495.8637 15.8593 + 20206.4219 489.5118 15.7368 + 20219.4453 483.7594 15.6501 + 20232.4785 466.9241 15.3474 + 20245.5195 484.8628 15.6106 + 20258.5684 510.1817 15.9980 + 20271.6270 734.8571 19.1385 + 20284.6934 1369.1744 26.1065 + 20297.7676 1675.8137 28.8217 + 20310.8516 1197.7157 24.3493 + 20323.9414 887.3409 20.8893 + 20337.0410 752.7376 19.1978 + 20350.1504 668.9639 18.0698 + 20363.2676 642.5687 17.7079 + 20376.3926 612.5735 17.2423 + 20389.5254 579.7776 16.7562 + 20402.6680 584.7983 16.7875 + 20415.8184 573.4060 16.6010 + 20428.9785 535.9278 16.0601 + 20442.1465 556.7679 16.3333 + 20455.3223 603.0480 16.9879 + 20468.5059 977.9531 21.5776 + 20481.6992 1302.4844 24.8519 + 20494.9004 1114.3202 22.9683 + 20508.1113 831.6503 19.8190 + 20521.3301 714.5629 18.3548 + 20534.5566 654.4799 17.5146 + 20547.7930 625.2607 17.0947 + 20561.0371 620.9572 17.0136 + 20574.2891 604.9193 16.7610 + 20587.5508 550.2599 15.9484 + 20600.8203 531.9816 15.6856 + 20614.0977 513.8552 15.3883 + 20627.3848 504.6029 15.2454 + 20640.6816 544.6281 15.8211 + 20653.9844 789.9739 19.0388 + 20667.2969 1248.6143 23.8700 + 20680.6191 1285.5594 24.2009 + 20693.9492 942.6848 20.7120 + 20707.2871 760.7602 18.5775 + 20720.6348 665.2733 17.3205 + 20733.9902 633.2670 16.8668 + 20747.3535 602.0361 16.4186 + 20760.7266 577.2371 16.0413 + 20774.1074 568.7924 15.9182 + 20787.4980 530.8420 15.3747 + 20800.8965 544.2996 15.5343 + 20814.3047 523.5775 15.2263 + 20827.7207 515.2219 15.1038 + 20841.1445 548.7319 15.5477 + 20854.5781 648.7203 16.8850 + 20868.0195 856.5729 19.3669 + 20881.4707 805.9849 18.7666 + 20894.9297 651.3604 16.8396 + 20908.3984 585.7975 15.9590 + 20921.8750 559.0001 15.5914 + 20935.3594 515.7623 14.9254 + 20948.8535 510.8869 14.8404 + 20962.3555 511.4958 14.8282 + 20975.8672 504.3351 14.6895 + 20989.3867 470.5055 14.1426 + 21002.9160 467.7080 14.1056 + 21016.4531 479.4076 14.2605 + 21030.0000 484.4689 14.3476 + 21043.5547 503.6626 14.6102 + 21057.1191 691.1940 17.0903 + 21070.6914 975.9921 20.2546 + 21084.2734 943.6982 19.9004 + 21097.8633 743.0688 17.6333 + 21111.4609 642.7319 16.3588 + 21125.0684 587.9952 15.6041 + 21138.6855 558.2133 15.1920 + 21152.3105 530.0908 14.7952 + 21165.9434 512.9669 14.5286 + 21179.5859 498.2316 14.3101 + 21193.2383 499.5510 14.3176 + 21206.8984 481.4836 14.0101 + 21220.5664 459.7443 13.6732 + 21234.2441 466.3179 13.7497 + 21247.9316 474.6487 13.8730 + 21261.6270 491.0234 14.1160 + 21275.3320 571.6743 15.1822 + 21289.0449 653.8698 16.2110 + 21302.7656 577.6250 15.2419 + 21316.4980 524.6780 14.4918 + 21330.2363 502.1836 14.1581 + 21343.9844 467.5394 13.6411 + 21357.7422 469.7644 13.6473 + 21371.5098 442.3048 13.2484 + 21385.2832 449.4455 13.3237 + 21399.0684 447.5948 13.2880 + 21412.8613 458.8299 13.4360 + 21426.6621 441.6735 13.1522 + 21440.4727 430.1981 12.9799 + 21454.2930 442.3942 13.1621 + 21468.1211 484.7094 13.7441 + 21481.9590 648.4166 15.8994 + 21495.8047 959.1342 19.2839 + 21509.6602 961.4316 19.2923 + 21523.5234 746.9780 16.9571 + 21537.3965 622.1252 15.4575 + 21551.2793 572.0652 14.8026 + 21565.1699 564.2229 14.7062 + 21579.0703 547.9744 14.4548 + 21592.9785 539.5764 14.3304 + 21606.8965 498.5262 13.7366 + 21620.8242 486.7109 13.5631 + 21634.7598 489.5017 13.5891 + 21648.7051 479.7856 13.4447 + 21662.6582 483.1540 13.4855 + 21676.6211 478.3675 13.4062 + 21690.5938 465.6075 13.1809 + 21704.5742 521.1259 13.9451 + 21718.5625 668.4474 15.7676 + 21732.5625 655.9456 15.5764 + 21746.5703 550.9801 14.2583 + 21760.5859 526.4377 13.9437 + 21774.6133 510.4742 13.7052 + 21788.6484 495.5449 13.4688 + 21802.6914 466.5651 13.0660 + 21816.7441 473.6912 13.1570 + 21830.8066 494.3947 13.4107 + 21844.8770 488.3841 13.3146 + 21858.9590 469.1758 13.0354 + 21873.0469 463.1418 12.9508 + 21887.1465 455.7844 12.8369 + 21901.2539 466.7853 12.9751 + 21915.3691 667.2161 15.5114 + 21929.4961 1519.8590 23.4010 + 21943.6309 4036.5278 38.0000 + 21957.7734 5437.9346 44.0201 + 21971.9277 3851.3154 37.0056 + 21986.0898 2565.7083 30.1560 + 22000.2598 2017.6749 26.7075 + 22014.4414 1780.7755 25.0536 + 22028.6309 1582.8552 23.5884 + 22042.8281 1431.8376 22.4104 + 22057.0371 1346.4012 21.7176 + 22071.2539 1224.3354 20.6685 + 22085.4805 1147.2180 19.9847 + 22099.7148 1045.9974 19.0726 + 22113.9590 972.4366 18.3697 + 22128.2129 893.5962 17.5788 + 22142.4766 863.5192 17.2644 + 22156.7480 823.9104 16.8395 + 22171.0293 760.4811 16.1537 + 22185.3203 769.1113 16.2271 + 22199.6191 717.9387 15.6768 + 22213.9277 706.6895 15.5414 + 22228.2461 684.5291 15.2656 + 22242.5742 635.3398 14.6886 + 22256.9102 592.9349 14.1705 + 22271.2559 572.9969 13.9199 + 22285.6113 560.7969 13.7685 + 22299.9746 540.5399 13.4930 + 22314.3496 531.9034 13.3686 + 22328.7324 519.3057 13.1951 + 22343.1230 507.4815 13.0268 + 22357.5254 487.9339 12.7455 + 22371.9355 481.1153 12.6473 + 22386.3555 494.9080 12.8282 + 22400.7852 527.5169 13.2354 + 22415.2227 820.3978 16.4855 + 22429.6719 1404.1068 21.5168 + 22444.1289 1494.6265 22.1697 + 22458.5957 1150.8341 19.4340 + 22473.0703 913.9811 17.2795 + 22487.5566 816.3926 16.3186 + 22502.0508 722.8364 15.3377 + 22516.5547 684.6060 14.9108 + 22531.0684 677.7076 14.8164 + 22545.5898 643.7075 14.4365 + 22560.1211 603.1947 13.9610 + 22574.6621 578.6002 13.6402 + 22589.2129 564.5302 13.4557 + 22603.7734 549.1917 13.2544 + 22618.3438 501.9206 12.6669 + 22632.9219 514.2924 12.7969 + 22647.5098 511.4722 12.7611 + 22662.1074 507.0274 12.6883 + 22676.7148 570.6321 13.4492 + 22691.3301 665.0797 14.4973 + 22705.9570 612.3440 13.8999 + 22720.5918 549.3434 13.1600 + 22735.2363 522.9074 12.8089 + 22749.8906 489.9136 12.3815 + 22764.5547 476.4607 12.2108 + 22779.2266 486.4396 12.3144 + 22793.9102 449.3788 11.8345 + 22808.6016 419.7718 11.4111 + 22823.3027 420.4375 11.4110 + 22838.0137 432.6577 11.5589 + 22852.7344 443.4999 11.6875 + 22867.4648 433.7828 11.5442 + 22882.2031 437.6899 11.5866 + 22896.9512 473.0830 12.0328 + 22911.7109 665.9760 14.2787 + 22926.4785 1712.8346 22.8727 + 22941.2559 4729.2944 37.8902 + 22956.0430 6686.7495 44.9878 + 22970.8398 4999.9800 38.8831 + 22985.6445 3511.8081 32.5387 + 23000.4609 2747.5305 28.7388 + 23015.2852 2345.0225 26.5070 + 23030.1191 2127.8523 25.2198 + 23044.9648 1897.5887 23.7901 + 23059.8184 1718.3328 22.6221 + 23074.6816 1535.0861 21.3620 + 23089.5547 1399.2037 20.3673 + 23104.4375 1317.5498 19.7358 + 23119.3281 1253.5498 19.2289 + 23134.2305 1243.5294 19.1370 + 23149.1426 1350.6066 19.9204 + 23164.0625 1399.1237 20.2521 + 23178.9922 1249.7860 19.1229 + 23193.9336 1164.4084 18.4562 + 23208.8828 1461.6998 20.6367 + 23223.8418 1773.4518 22.6928 + 23238.8105 1595.0624 21.5061 + 23253.7910 1277.3588 19.2311 + 23268.7793 1132.5693 18.0746 + 23283.7773 1023.6177 17.1715 + 23298.7832 949.2479 16.5194 + 23313.8008 873.0110 15.8225 + 23328.8281 801.8892 15.1346 + 23343.8652 765.3242 14.7708 + 23358.9121 729.5684 14.4060 + 23373.9668 687.2374 13.9672 + 23389.0332 659.7614 13.6772 + 23404.1094 625.3483 13.2994 + 23419.1934 608.4434 13.0976 + 23434.2891 590.1845 12.9000 + 23449.3945 578.7541 12.7619 + 23464.5078 566.8290 12.6094 + 23479.6328 772.6892 14.7091 + 23494.7656 1343.7306 19.3495 + 23509.9102 1689.1622 21.6792 + 23525.0625 1349.5438 19.3670 + 23540.2266 1073.6190 17.2621 + 23555.4004 935.0373 16.0842 + 23570.5820 848.3098 15.3068 + 23585.7754 792.0194 14.7604 + 23600.9766 725.7379 14.1143 + 23616.1895 694.8922 13.7922 + 23631.4121 663.8655 13.4813 + 23646.6426 619.2281 13.0063 + 23661.8848 599.5082 12.7854 + 23677.1367 568.9515 12.4426 + 23692.3965 553.9597 12.2654 + 23707.6680 550.7972 12.2144 + 23722.9492 520.8719 11.8603 + 23738.2402 519.0270 11.8288 + 23753.5410 515.6137 11.7883 + 23768.8516 582.5401 12.5126 + 23784.1719 858.9019 15.1694 + 23799.5020 1047.3579 16.7225 + 23814.8418 930.4604 15.7532 + 23830.1914 762.6666 14.2464 + 23845.5508 705.2766 13.6827 + 23860.9219 628.8597 12.9040 + 23876.3008 598.5212 12.5755 + 23891.6895 572.0100 12.2834 + 23907.0898 538.4453 11.9033 + 23922.5000 527.5084 11.7669 + 23937.9180 510.1672 11.5647 + 23953.3477 492.7902 11.3490 + 23968.7871 491.8144 11.3332 + 23984.2363 474.2188 11.1109 + 23999.6953 459.5100 10.9280 + 24015.1641 443.9590 10.7239 + 24030.6445 441.2849 10.6829 + 24046.1328 460.5140 10.8967 + 24061.6309 460.2497 10.8872 + 24077.1406 544.8702 11.8444 + 24092.6602 735.3596 13.7352 + 24108.1895 827.5079 14.5464 + 24123.7285 680.9030 13.1805 + 24139.2773 596.5005 12.3240 + 24154.8359 562.1642 11.9610 + 24170.4043 531.6280 11.6181 + 24185.9844 519.8273 11.4603 + 24201.5742 504.2046 11.2897 + 24217.1719 474.9847 10.9432 + 24232.7812 470.1285 10.8818 + 24248.4004 457.1207 10.7197 + 24264.0312 449.6041 10.6121 + 24279.6699 434.9479 10.4255 + 24295.3203 417.4338 10.2033 + 24310.9805 425.5174 10.2874 + 24326.6484 414.5435 10.1528 + 24342.3301 403.2450 9.9964 + 24358.0195 403.8529 9.9973 + 24373.7188 408.2259 10.0481 + 24389.4297 453.7484 10.5765 + 24405.1504 575.9058 11.9021 + 24420.8809 654.7561 12.6846 + 24436.6211 585.1695 11.9851 + 24452.3711 517.9569 11.2553 + 24468.1328 485.7651 10.8867 + 24483.9043 473.4070 10.7434 + 24499.6855 451.8347 10.4779 + 24515.4766 449.8661 10.4558 + 24531.2773 429.8412 10.2076 + 24547.0898 414.9186 10.0156 + 24562.9121 416.4658 10.0281 + 24578.7441 419.4319 10.0456 + 24594.5859 392.6697 9.7180 + 24610.4375 394.7890 9.7367 + 24626.3008 399.4006 9.7810 + 24642.1738 391.9315 9.6856 + 24658.0566 389.8344 9.6499 + 24673.9512 388.2965 9.6094 + 24689.8535 398.2547 9.7356 + 24705.7676 471.8117 10.5956 + 24721.6934 770.4702 13.5179 + 24737.6270 1324.5802 17.6884 + 24753.5723 1458.2654 18.5538 + 24769.5273 1155.0161 16.5071 + 24785.4922 939.1400 14.8610 + 24801.4688 822.5607 13.8953 + 24817.4531 751.9227 13.2716 + 24833.4492 713.1057 12.9143 + 24849.4570 684.8960 12.6427 + 24865.4727 617.5560 11.9975 + 24881.5000 577.3251 11.5929 + 24897.5371 561.9555 11.4245 + 24913.5859 528.6470 11.0606 + 24929.6445 520.7917 10.9815 + 24945.7129 497.9969 10.7217 + 24961.7910 488.5073 10.6123 + 24977.8809 464.6665 10.3419 + 24993.9805 452.3912 10.1892 + 25010.0898 439.5431 10.0323 + 25026.2109 439.9037 10.0269 + 25042.3418 442.4342 10.0538 + 25058.4824 518.6330 10.8768 + 25074.6348 719.0380 12.7818 + 25090.7969 848.0585 13.8718 + 25106.9688 733.6265 12.8943 + 25123.1504 635.9765 11.9998 + 25139.3438 573.6295 11.3814 + 25155.5488 540.4977 11.0286 + 25171.7617 526.5613 10.8786 + 25187.9863 496.1002 10.5510 + 25204.2227 480.2266 10.3765 + 25220.4668 473.6542 10.2914 + 25236.7227 464.8014 10.1803 + 25252.9902 438.3463 9.8855 + 25269.2676 429.3351 9.7773 + 25285.5547 432.6866 9.8096 + 25301.8516 411.5760 9.5522 + 25318.1602 402.1667 9.4287 + 25334.4785 409.2289 9.5040 + 25350.8086 429.4888 9.7287 + 25367.1484 469.8664 10.1620 + 25383.5000 471.6391 10.1807 + 25399.8613 532.0616 10.7972 + 25416.2324 772.8912 13.0025 + 25432.6133 1373.9180 17.3099 + 25449.0078 1600.4308 18.6621 + 25465.4102 1334.5244 17.0261 + 25481.8242 1104.5812 15.4804 + 25498.2480 941.7076 14.2679 + 25514.6836 845.4824 13.5058 + 25531.1289 783.1716 12.9894 + 25547.5859 716.4044 12.4120 + 25564.0527 704.6724 12.3019 + 25580.5293 649.6999 11.8023 + 25597.0176 614.2863 11.4505 + 25613.5156 569.8867 11.0201 + 25630.0254 553.7369 10.8572 + 25646.5449 544.0161 10.7486 + 25663.0762 516.0854 10.4552 + 25679.6172 501.0819 10.2983 + 25696.1699 497.3039 10.2455 + 25712.7324 488.8049 10.1451 + 25729.3047 464.1066 9.8765 + 25745.8887 460.3437 9.8235 + 25762.4844 487.0811 10.0998 + 25779.0898 642.3539 11.5892 + 25795.7051 1197.0653 15.7943 + 25812.3320 1806.2919 19.3722 + 25828.9688 1693.8188 18.7510 + 25845.6172 1357.6512 16.7697 + 25862.2754 1131.3060 15.2934 + 25878.9453 1005.3441 14.4024 + 25895.6270 925.3934 13.7945 + 25912.3184 845.3720 13.1725 + 25929.0195 787.1859 12.7005 + 25945.7324 731.9758 12.2336 + 25962.4551 693.1599 11.8942 + 25979.1895 629.1278 11.3129 + 25995.9355 615.6280 11.1833 + 26012.6914 609.7115 11.1234 + 26029.4570 600.9314 11.0191 + 26046.2344 565.1715 10.6834 + 26063.0234 532.7280 10.3602 + 26079.8223 518.9868 10.2224 + 26096.6309 496.0852 9.9758 + 26113.4531 481.3344 9.8151 + 26130.2832 453.2868 9.5071 + 26147.1270 450.7164 9.4776 + 26163.9805 448.4399 9.4457 + 26180.8438 532.3387 10.2845 + 26197.7188 636.8301 11.2303 + 26214.6055 636.5037 11.2216 + 26231.5020 557.5212 10.4887 + 26248.4082 528.6854 10.2025 + 26265.3281 506.9785 9.9850 + 26282.2578 488.0760 9.7839 + 26299.1973 448.7213 9.3725 + 26316.1484 451.0369 9.3871 + 26333.1113 445.0329 9.3197 + 26350.0840 433.1112 9.1797 + 26367.0684 414.3374 8.9754 + 26384.0625 414.4057 8.9675 + 26401.0684 403.6974 8.8351 + 26418.0859 395.1076 8.7349 + 26435.1133 384.9936 8.6135 + 26452.1523 385.2772 8.6136 + 26469.2031 382.0466 8.5695 + 26486.2637 375.0635 8.4801 + 26503.3359 366.0465 8.3672 + 26520.4180 376.9543 8.4844 + 26537.5117 370.0660 8.4004 + 26554.6172 364.8518 8.3382 + 26571.7324 413.5258 8.8634 + 26588.8594 547.0012 10.1884 + 26605.9980 756.6720 11.9680 + 26623.1465 737.2629 11.8026 + 26640.3066 638.0652 10.9690 + 26657.4785 579.6536 10.4483 + 26674.6602 523.8574 9.9218 + 26691.8535 499.7510 9.6851 + 26709.0586 487.4750 9.5596 + 26726.2734 462.5424 9.3007 + 26743.5000 442.2195 9.0853 + 26760.7383 430.6022 8.9598 + 26777.9863 429.2678 8.9395 + 26795.2461 418.8147 8.8184 + 26812.5176 407.0702 8.6912 + 26829.7988 409.4083 8.7113 + 26847.0918 401.1790 8.6124 + 26864.3965 379.7758 8.3719 + 26881.7129 385.9545 8.4332 + 26899.0391 382.1713 8.3839 + 26916.3770 373.5570 8.2858 + 26933.7266 386.8635 8.4224 + 26951.0859 371.4827 8.2440 + 26968.4570 418.9041 8.7525 + 26985.8398 584.2639 10.3266 + 27003.2344 1443.0741 16.2121 + 27020.6387 3638.0112 25.7065 + 27038.0547 5134.4277 30.5200 + 27055.4824 4367.0381 28.1348 + 27072.9219 3399.9773 24.8052 + 27090.3711 2812.0852 22.5343 + 27107.8340 2428.5972 20.9279 + 27125.3047 2090.1147 19.4005 + 27142.7891 1880.4896 18.3904 + 27160.2852 1675.5222 17.3433 + 27177.7910 1488.0754 16.3310 + 27195.3086 1348.1401 15.5282 + 27212.8379 1243.4503 14.9046 + 27230.3770 1120.6519 14.1440 + 27247.9277 1040.2517 13.6147 + 27265.4922 961.4279 13.0721 + 27283.0664 876.6717 12.4768 + 27300.6504 812.8658 12.0046 + 27318.2480 746.9742 11.5029 + 27335.8555 694.6484 11.0788 + 27353.4746 660.3250 10.8002 + 27371.1055 637.7531 10.6067 + 27388.7480 604.7653 10.3226 + 27406.4023 568.4223 10.0012 + 27424.0664 554.0930 9.8690 + 27441.7422 537.0137 9.7047 + 27459.4316 507.5980 9.4296 + 27477.1289 501.0521 9.3597 + 27494.8398 470.8156 9.0687 + 27512.5625 448.6362 8.8440 + 27530.2949 439.6323 8.7495 + 27548.0410 440.9509 8.7568 + 27565.7969 425.3090 8.5981 + 27583.5645 402.1946 8.3517 + 27601.3438 408.2457 8.4072 + 27619.1348 404.5206 8.3674 + 27636.9355 393.0442 8.2462 + 27654.7500 387.2570 8.1787 + 27672.5742 382.2621 8.1189 + 27690.4102 370.4621 7.9854 + 27708.2598 378.7781 8.0766 + 27726.1191 373.4352 8.0109 + 27743.9902 365.3600 7.9164 + 27761.8711 366.0891 7.9182 + 27779.7656 365.7820 7.9110 + 27797.6719 353.2998 7.7723 + 27815.5879 355.1054 7.7921 + 27833.5176 354.3645 7.7812 + 27851.4570 357.3381 7.8031 + 27869.4102 362.5474 7.8583 + 27887.3730 356.3477 7.7866 + 27905.3477 360.4666 7.8247 + 27923.3340 396.0281 8.1994 + 27941.3320 456.8293 8.7971 + 27959.3418 463.1322 8.8575 + 27977.3633 447.4818 8.7028 + 27995.3965 429.4880 8.5159 + 28013.4414 404.6531 8.2655 + 28031.4980 401.1418 8.2263 + 28049.5645 391.6640 8.1228 + 28067.6445 374.8543 7.9404 + 28085.7363 374.7076 7.9347 + 28103.8379 361.8938 7.7923 + 28121.9531 361.4643 7.7858 + 28140.0781 352.7327 7.6849 + 28158.2168 363.7298 7.7986 + 28176.3672 368.1951 7.8435 + 28194.5273 366.7594 7.8251 + 28212.7012 347.1961 7.6135 + 28230.8848 347.6312 7.6115 + 28249.0820 336.3246 7.4787 + 28267.2891 350.7135 7.6366 + 28285.5098 346.2519 7.5809 + 28303.7402 347.1922 7.5900 + 28321.9844 361.9644 7.7430 + 28340.2383 389.7897 8.0315 + 28358.5059 471.0090 8.8264 + 28376.7852 510.9246 9.1878 + 28395.0742 538.0827 9.4229 + 28413.3770 704.7156 10.7771 + 28431.6914 1193.8010 14.0129 + 28450.0176 1552.2535 15.9745 + 28468.3555 1392.5585 15.1296 + 28486.7031 1147.3685 13.7260 + 28505.0645 996.0944 12.7827 + 28523.4375 883.5295 12.0296 + 28541.8223 811.1140 11.5172 + 28560.2207 755.9879 11.1150 + 28578.6289 697.0367 10.6649 + 28597.0488 649.2933 10.2884 + 28615.4805 591.1505 9.8113 + 28633.9258 566.9835 9.6063 + 28652.3809 532.0488 9.2972 + 28670.8496 500.4836 9.0140 + 28689.3301 487.1995 8.8877 + 28707.8223 456.1059 8.5968 + 28726.3262 460.3518 8.6329 + 28744.8418 448.6761 8.5196 + 28763.3691 425.6766 8.2956 + 28781.9082 408.7703 8.1228 + 28800.4590 408.3654 8.1156 + 28819.0234 403.7596 8.0637 + 28837.5977 385.9119 7.8797 + 28856.1855 395.5681 7.9782 + 28874.7852 387.0861 7.8868 + 28893.3965 394.4595 7.9551 + 28912.0195 485.6738 8.8255 + 28930.6562 871.6121 11.8171 + 28949.3027 2005.2246 17.9029 + 28967.9629 3152.1140 22.4374 + 28986.6328 2991.9758 21.8570 + 29005.3164 2431.3384 19.6956 + 29024.0137 2039.6527 18.0276 + 29042.7207 1753.6582 16.7093 + 29061.4395 1555.8710 15.7337 + 29080.1719 1361.6331 14.7091 + 29098.9160 1208.9182 13.8515 + 29117.6719 1103.7469 13.2277 + 29136.4395 995.0858 12.5559 + 29155.2188 905.4281 11.9713 + 29174.0117 841.0566 11.5360 + 29192.8164 771.1113 11.0394 + 29211.6328 705.1108 10.5514 + 29230.4609 676.0971 10.3304 + 29249.3008 622.0825 9.9012 + 29268.1543 585.4778 9.6005 + 29287.0195 554.1213 9.3349 + 29305.8965 540.9374 9.2178 + 29324.7852 509.3648 8.9394 + 29343.6855 479.9058 8.6770 + 29362.5996 458.1708 8.4736 + 29381.5254 455.6067 8.4431 + 29400.4648 445.3118 8.3436 + 29419.4141 439.5913 8.2876 + 29438.3770 426.5925 8.1584 + 29457.3516 452.7637 8.4022 + 29476.3379 576.5334 9.4749 + 29495.3379 1045.5995 12.7514 + 29514.3477 1776.5831 16.6067 + 29533.3730 1860.8190 16.9925 + 29552.4082 1610.0947 15.7972 + 29571.4570 1357.1996 14.4988 + 29590.5156 1181.4906 13.5186 + 29609.5898 1036.7316 12.6552 + 29628.6738 949.4423 12.1085 + 29647.7715 850.8251 11.4554 + 29666.8809 775.9346 10.9305 + 29686.0039 716.0587 10.4939 + 29705.1367 666.8513 10.1242 + 29724.2832 630.6046 9.8385 + 29743.4434 604.4549 9.6285 + 29762.6133 559.9978 9.2638 + 29781.7969 527.6954 8.9858 + 29800.9941 515.8707 8.8779 + 29820.2031 484.3659 8.5979 + 29839.4238 465.2411 8.4247 + 29858.6562 449.6646 8.2694 + 29877.9023 427.1382 8.0556 + 29897.1602 412.0999 7.9083 + 29916.4297 412.4346 7.9123 + 29935.7129 408.7880 7.8749 + 29955.0078 393.6288 7.7188 + 29974.3164 381.2125 7.5888 + 29993.6348 372.0000 7.4897 + 30012.9688 382.9108 7.5949 + 30032.3125 378.9189 7.5533 + 30051.6699 453.3270 8.2564 + 30071.0410 805.2067 10.9968 + 30090.4238 1631.8345 15.6307 + 30109.8184 2179.4639 18.0548 + 30129.2246 1929.8690 16.9849 + 30148.6445 1602.2722 15.4677 + 30168.0781 1371.2515 14.2957 + 30187.5234 1199.5264 13.3629 + 30206.9805 1062.6428 12.5680 + 30226.4512 943.1572 11.8323 + 30245.9336 848.6449 11.2152 + 30265.4277 790.8956 10.8228 + 30284.9355 704.0244 10.2022 + 30304.4551 673.6942 9.9717 + 30323.9883 630.0427 9.6373 + 30343.5352 584.0349 9.2702 + 30363.0918 545.4445 8.9510 + 30382.6641 511.6111 8.6632 + 30402.2461 491.6575 8.4886 + 30421.8418 482.9600 8.4064 + 30441.4512 459.5693 8.1939 + 30461.0723 434.9321 7.9634 + 30480.7051 421.4090 7.8346 + 30500.3516 409.5148 7.7180 + 30520.0117 407.8152 7.6983 + 30539.6836 391.4680 7.5346 + 30559.3672 376.9366 7.3914 + 30579.0645 378.4142 7.3987 + 30598.7754 375.9777 7.3723 + 30618.4980 368.6240 7.2932 + 30638.2324 372.7309 7.3313 + 30657.9805 386.0853 7.4548 + 30677.7422 432.3499 7.8849 + 30697.5156 608.7203 9.3477 + 30717.3008 924.5898 11.5063 + 30737.0996 1046.5479 12.2431 + 30756.9121 938.7422 11.5881 + 30776.7363 806.4487 10.7304 + 30796.5742 721.6279 10.1479 + 30816.4238 657.7863 9.6829 + 30836.2871 603.2618 9.2654 + 30856.1621 566.2450 8.9717 + 30876.0508 520.9529 8.6014 + 30895.9512 495.1933 8.3801 + 30915.8672 476.0857 8.2135 + 30935.7930 447.4274 7.9588 + 30955.7324 432.5678 7.8185 + 30975.6855 419.8737 7.6985 + 30995.6504 397.7449 7.4876 + 31015.6289 391.7392 7.4283 + 31035.6211 384.5781 7.3553 + 31055.6250 375.6141 7.2672 + 31075.6426 368.9943 7.1983 + 31095.6719 354.5977 7.0513 + 31115.7148 348.0027 6.9832 + 31135.7715 366.8014 7.1650 + 31155.8398 349.6151 6.9919 + 31175.9219 346.3059 6.9527 + 31196.0156 339.3689 6.8811 + 31216.1230 336.8066 6.8489 + 31236.2441 330.8192 6.7854 + 31256.3770 331.0703 6.7872 + 31276.5234 333.8594 6.8104 + 31296.6836 345.4518 6.9252 + 31316.8555 371.4704 7.1755 + 31337.0410 488.2758 8.2219 + 31357.2383 936.2676 11.3772 + 31377.4512 1768.0790 15.6214 + 31397.6758 2018.7972 16.6937 + 31417.9121 1770.3557 15.6281 + 31438.1641 1489.7483 14.3278 + 31458.4277 1300.5941 13.3811 + 31478.7031 1133.4960 12.4893 + 31498.9941 1007.6794 11.7679 + 31519.2969 906.1144 11.1552 + 31539.6113 829.7026 10.6705 + 31559.9414 761.6723 10.2185 + 31580.2832 695.7505 9.7611 + 31600.6387 645.3979 9.3975 + 31621.0059 597.8745 9.0396 + 31641.3887 554.9389 8.7064 + 31661.7832 515.0318 8.3820 + 31682.1914 493.6013 8.2044 + 31702.6113 466.9710 7.9750 + 31723.0449 453.0881 7.8528 + 31743.4922 437.1031 7.7100 + 31763.9531 418.9827 7.5485 + 31784.4277 410.1069 7.4663 + 31804.9141 397.5783 7.3449 + 31825.4141 376.8039 7.1503 + 31845.9277 380.6807 7.1846 + 31866.4531 377.5682 7.1537 + 31886.9922 364.6276 7.0268 + 31907.5449 360.6483 6.9849 + 31928.1113 355.1929 6.9287 + 31948.6914 350.0345 6.8775 + 31969.2832 342.9231 6.8049 + 31989.8906 348.2439 6.8568 + 32010.5098 352.6566 6.8999 + 32031.1426 407.0404 7.4091 + 32051.7871 623.2251 9.1632 + 32072.4473 1212.5267 12.7743 + 32093.1191 1785.6542 15.5021 + 32113.8047 1703.9274 15.1451 + 32134.5039 1427.7263 13.8586 + 32155.2168 1203.5311 12.7230 + 32175.9414 1068.6653 11.9847 + 32196.6816 944.0625 11.2599 + 32217.4336 846.6754 10.6646 + 32238.1992 771.4042 10.1759 + 32258.9785 711.0556 9.7674 + 32279.7715 644.6965 9.2993 + 32300.5781 599.1289 8.9629 + 32321.3965 550.2950 8.5860 + 32342.2305 515.2922 8.3083 + 32363.0762 491.3342 8.1105 + 32383.9355 478.0501 7.9986 + 32404.8105 459.6846 7.8440 + 32425.6953 426.3422 7.5517 + 32446.5957 414.3000 7.4436 + 32467.5098 403.2407 7.3410 + 32488.4375 385.7132 7.1776 + 32509.3770 376.8083 7.0942 + 32530.3320 387.3654 7.1928 + 32551.2988 366.7114 6.9973 + 32572.2812 364.0685 6.9703 + 32593.2754 352.9187 6.8590 + 32614.2832 336.3971 6.6985 + 32635.3047 339.6426 6.7294 + 32656.3398 341.1211 6.7424 + 32677.3887 343.4492 6.7633 + 32698.4512 334.2681 6.6715 + 32719.5273 349.5182 6.8216 + 32740.6172 374.5914 7.0615 + 32761.7207 398.7384 7.2870 + 32782.8359 426.9323 7.5379 + 32803.9688 576.3857 8.7561 + 32825.1094 1037.8612 11.7415 + 32846.2695 1569.2587 14.4387 + 32867.4414 1553.0278 14.3676 + 32888.6250 1328.2937 13.2863 + 32909.8242 1140.6200 12.3106 + 32931.0352 992.8140 11.4836 + 32952.2617 857.3978 10.6705 + 32973.5000 791.2730 10.2498 + 32994.7539 721.1734 9.7860 + 33016.0195 655.4689 9.3271 + 33037.3008 598.0533 8.9071 + 33058.5938 569.1667 8.6868 + 33079.9023 528.2378 8.3684 + 33101.2266 509.2814 8.2162 + 33122.5625 474.2450 7.9265 + 33143.9102 453.8584 7.7539 + 33165.2734 427.8890 7.5309 + 33186.6484 410.1147 7.3725 + 33208.0391 401.3155 7.2873 + 33229.4453 400.2968 7.2795 + 33250.8633 386.2200 7.1494 + 33272.2969 362.6649 6.9264 + 33293.7422 360.5426 6.9070 + 33315.1992 361.6271 6.9157 + 33336.6758 348.1990 6.7878 + 33358.1602 335.5617 6.6601 + 33379.6641 345.1821 6.7551 + 33401.1797 338.8482 6.6915 + 33422.7070 329.7018 6.6009 + 33444.2500 329.1539 6.5951 + 33465.8047 335.3523 6.6538 + 33487.3750 327.9615 6.5803 + 33508.9609 328.9432 6.5909 + 33530.5586 312.8914 6.4272 + 33552.1719 313.1548 6.4266 + 33573.7969 316.5295 6.4624 + 33595.4375 328.7517 6.5847 + 33617.0938 372.8109 7.0157 + 33638.7617 482.6463 7.9800 + 33660.4414 597.3749 8.8773 + 33682.1367 584.9423 8.7846 + 33703.8477 526.7621 8.3364 + 33725.5742 482.4279 7.9768 + 33747.3086 454.0812 7.7392 + 33769.0625 443.9572 7.6511 + 33790.8281 413.1714 7.3798 + 33812.6094 393.3606 7.2021 + 33834.4023 378.9362 7.0686 + 33856.2109 370.5244 6.9886 + 33878.0312 352.7722 6.8185 + 33899.8672 353.9749 6.8305 + 33921.7188 346.1455 6.7532 + 33943.5820 339.2556 6.6875 + 33965.4609 330.6557 6.6028 + 33987.3555 326.6263 6.5612 + 34009.2617 331.8713 6.6114 + 34031.1836 328.3430 6.5760 + 34053.1172 329.3243 6.5882 + 34075.0664 312.1160 6.4122 + 34097.0312 306.2594 6.3535 + 34119.0078 315.5128 6.4494 + 34141.0000 316.5060 6.4582 + 34163.0039 323.8381 6.5315 + 34185.0234 364.1831 6.9262 + 34207.0586 403.0061 7.2868 + 34229.1055 406.6602 7.3224 + 34251.1680 405.9911 7.3133 + 34273.2461 383.6540 7.1113 + 34295.3359 378.6050 7.0655 + 34317.4414 357.1606 6.8638 + 34339.5625 362.0000 6.9081 + 34361.6953 357.9593 6.8700 + 34383.8438 355.4333 6.8458 + 34406.0039 346.9642 6.7630 + 34428.1836 338.7608 6.6828 + 34450.3711 421.3089 7.4516 + 34472.5781 710.6610 9.6761 + 34494.7969 1806.8317 15.4256 + 34517.0312 4278.9204 23.7460 + 34539.2812 6021.2163 28.1848 + 34561.5430 5506.7124 26.9574 + 34583.8203 4520.1968 24.4260 + 34606.1094 3708.6228 22.1263 + 34628.4141 3130.7371 20.3325 + 34650.7344 2648.8967 18.7000 + 34673.0703 2265.7554 17.2948 + 34695.4180 1955.1045 16.0690 + 34717.7812 1712.7629 15.0413 + 34740.1602 1505.7463 14.1060 + 34762.5508 1333.9338 13.2757 + 34784.9570 1172.0593 12.4440 + 34807.3789 1047.7230 11.7670 + 34829.8125 942.0343 11.1574 + 34852.2617 861.7789 10.6720 + 34874.7266 766.3950 10.0657 + 34897.2070 711.1855 9.6993 + 34919.6992 670.6707 9.4208 + 34942.2070 620.6510 9.0631 + 34964.7305 561.8162 8.6215 + 34987.2656 530.9608 8.3822 + 35009.8164 513.0478 8.2387 + 35032.3828 476.0464 7.9375 + 35054.9609 451.9317 7.7356 + 35077.5586 439.9485 7.6342 + 35100.1680 423.9167 7.4943 + 35122.7891 403.1721 7.3087 + 35145.4297 396.9709 7.2539 + 35168.0820 382.7854 7.1240 + 35190.7500 372.3652 7.0269 + 35213.4336 371.4529 7.0186 + 35236.1289 372.6503 7.0290 + 35258.8398 364.4278 6.9514 + 35281.5664 357.3018 6.8839 + 35304.3086 346.2179 6.7781 + 35327.0625 341.7572 6.7357 + 35349.8359 332.5886 6.6454 + 35372.6211 337.9967 6.6989 + 35395.4180 357.6685 6.8894 + 35418.2344 449.7053 7.7297 + 35441.0625 776.6765 10.1566 + 35463.9062 1509.3162 14.1611 + 35486.7656 1967.5186 16.1750 + 35509.6367 1775.0128 15.3709 + 35532.5234 1478.0950 14.0259 + 35555.4297 1275.9642 13.0336 + 35578.3438 1111.6879 12.1661 + 35601.2773 964.5865 11.3355 + 35624.2227 847.3730 10.6231 + 35647.1875 762.4060 10.0760 + 35670.1641 694.1010 9.6190 + 35693.1523 641.2728 9.2479 + 35716.1602 586.7111 8.8465 + 35739.1797 542.2740 8.5049 + 35762.2188 500.0924 8.1692 + 35785.2695 469.8526 7.9217 + 35808.3320 456.3116 7.8050 + 35831.4141 426.7451 7.5479 + 35854.5078 412.3752 7.4194 + 35877.6211 401.8852 7.3281 + 35900.7461 375.4437 7.0865 + 35923.8828 370.7010 7.0409 + 35947.0391 366.4626 6.9995 + 35970.2109 354.9104 6.8911 + 35993.3945 352.5452 6.8691 + 36016.5938 335.6573 6.7027 + 36039.8086 327.1108 6.6191 + 36063.0391 333.6479 6.6885 + 36086.2812 326.9473 6.6203 + 36109.5430 321.2175 6.5626 + 36132.8164 310.2912 6.4502 + 36156.1055 318.6809 6.5384 + 36179.4102 310.4707 6.4576 + 36202.7305 306.7355 6.4214 + 36226.0664 310.1391 6.4573 + 36249.4141 303.7567 6.3899 + 36272.7812 307.2347 6.4280 + 36296.1602 308.0464 6.4384 + 36319.5547 302.2350 6.3774 + 36342.9648 295.3891 6.3059 + 36366.3906 301.6892 6.3738 + 36389.8281 291.6897 6.2680 + 36413.2852 302.8510 6.3898 + 36436.7539 320.3549 6.5734 + 36460.2422 431.2040 7.6281 + 36483.7422 728.1656 9.9130 + 36507.2578 1050.8354 11.9154 + 36530.7891 1062.2635 11.9888 + 36554.3320 927.6041 11.2045 + 36577.8945 818.4404 10.5278 + 36601.4727 728.9467 9.9363 + 36625.0625 622.7156 9.1848 + 36648.6719 572.8832 8.8108 + 36672.2930 522.1495 8.4156 + 36695.9297 481.1440 8.0782 + 36719.5820 458.4246 7.8852 + 36743.2500 425.3059 7.6018 + 36766.9336 404.4868 7.4139 + 36790.6328 381.1782 7.1994 + 36814.3438 376.2814 7.1555 + 36838.0742 371.4838 7.1114 + 36861.8164 355.1862 6.9576 + 36885.5781 337.7117 6.7848 + 36909.3516 335.0702 6.7604 + 36933.1406 329.7469 6.7079 + 36956.9492 329.8318 6.7095 + 36980.7695 327.8622 6.6935 + 37004.6055 323.4039 6.6475 + 37028.4570 322.5874 6.6449 + 37052.3242 312.4471 6.5400 + 37076.2031 306.4419 6.4748 + 37100.1016 304.3735 6.4554 + 37124.0156 302.9556 6.4442 + 37147.9453 293.2177 6.3419 + 37171.8867 290.2541 6.3098 + 37195.8477 305.5560 6.4758 + 37219.8203 291.8028 6.3290 + 37243.8125 290.3099 6.3151 + 37267.8164 291.6281 6.3321 + 37291.8398 291.1486 6.3288 + 37315.8750 292.1823 6.3405 + 37339.9297 283.8742 6.2554 + 37363.9961 286.1446 6.2749 + 37388.0781 292.6168 6.3495 + 37412.1758 287.9255 6.2989 + 37436.2930 294.0967 6.3698 + 37460.4219 298.8259 6.4211 + 37484.5664 289.3239 6.3195 + 37508.7266 305.9892 6.5024 + 37532.9023 365.1519 7.1026 + 37557.0938 575.8528 8.9129 + 37581.3047 1299.0536 13.3888 + 37605.5273 3336.2256 21.4778 + 37629.7656 5791.3691 28.3263 + 37654.0195 6032.4170 28.9231 + 37678.2891 5020.3447 26.3897 + 37702.5742 4117.3716 23.9032 + 37726.8750 3420.3569 21.7880 + 37751.1953 2852.1284 19.9038 + 37775.5273 2382.1985 18.1941 + 37799.8750 2048.5693 16.8750 + 37824.2383 1748.4994 15.5917 + 37848.6172 1509.2328 14.4890 + 37873.0156 1316.5082 13.5353 + 37897.4258 1146.8685 12.6367 + 37921.8516 1030.8224 11.9809 + 37946.2969 915.2740 11.2918 + 37970.7539 838.9029 10.8137 + 37995.2266 740.2060 10.1629 + 38019.7188 675.2853 9.7093 + 38044.2227 628.7139 9.3700 + 38068.7461 577.5190 8.9811 + 38093.2812 541.2654 8.6980 + 38117.8359 509.6530 8.4450 + 38142.4062 477.9752 8.1797 + 38166.9883 463.8263 8.0571 + 38191.5898 438.3730 7.8347 + 38216.2070 407.3601 7.5529 + 38240.8398 395.0970 7.4405 + 38265.4883 374.5620 7.2483 + 38290.1523 361.6029 7.1242 + 38314.8320 354.9258 7.0610 + 38339.5273 359.4302 7.1094 + 38364.2383 351.3997 7.0329 + 38388.9688 340.9680 6.9263 + 38413.7109 337.7609 6.9018 + 38438.4727 342.4938 6.9478 + 38463.2461 325.0801 6.7707 + 38488.0391 318.5903 6.7047 + 38512.8477 319.9126 6.7186 + 38537.6719 316.6266 6.6895 + 38562.5117 320.9546 6.7399 + 38587.3672 313.4480 6.6615 + 38612.2383 308.9619 6.6126 + 38637.1250 299.1313 6.5059 + 38662.0273 306.7696 6.5873 + 38686.9492 310.3837 6.6344 + 38711.8828 318.2613 6.7146 + 38736.8359 329.5703 6.8354 + 38761.8047 397.9839 7.5135 + 38786.7891 673.0838 9.7697 + 38811.7891 1649.1455 15.2913 + 38836.8047 4369.3413 24.9135 + 38861.8359 7995.6870 33.7450 + 38886.8867 8607.7666 35.0382 + 38911.9492 7257.4360 32.1780 + 38937.0312 5881.8853 28.9752 + 38962.1289 4831.4297 26.2670 + 38987.2422 3939.6704 23.7261 + 39012.3711 3350.6313 21.8894 + 39037.5156 2823.6626 20.0990 + 39062.6797 2402.9758 18.5453 + 39087.8555 2022.6711 17.0200 + 39113.0508 1747.5881 15.8247 + 39138.2617 1508.6440 14.7076 + 39163.4883 1311.2522 13.7171 + 39188.7305 1175.8124 12.9924 + 39213.9922 1035.4380 12.1977 + 39239.2656 929.7620 11.5587 + 39264.5586 815.4781 10.8284 + 39289.8672 756.4173 10.4323 + 39315.1914 695.4395 10.0096 + 39340.5312 629.8605 9.5278 + 39365.8867 588.9688 9.2150 + 39391.2617 562.9108 9.0098 + 39416.6523 515.0840 8.6219 + 39442.0586 480.8961 8.3342 + 39467.4805 465.5266 8.2096 + 39492.9180 445.3469 8.0267 + 39518.3750 425.0335 7.8433 + 39543.8477 409.9417 7.7076 + 39569.3359 388.2915 7.5049 + 39594.8398 375.0682 7.3759 + 39620.3594 357.6341 7.2084 + 39645.8984 352.5877 7.1624 + 39671.4531 348.2220 7.1164 + 39697.0234 331.7190 6.9485 + 39722.6094 329.5252 6.9270 + 39748.2109 329.9722 6.9341 + 39773.8320 332.5076 6.9673 + 39799.4688 329.0082 6.9371 + 39825.1211 319.8445 6.8407 + 39850.7891 312.4586 6.7619 + 39876.4766 313.7300 6.7784 + 39902.1797 314.2266 6.7838 + 39927.8984 299.8645 6.6349 + 39953.6328 299.8819 6.6335 + 39979.3867 293.4336 6.5651 + 40005.1562 302.4054 6.6667 + 40030.9414 329.1729 6.9591 + 40056.7422 386.1984 7.5347 + 40082.5625 592.3824 9.3319 + 40108.3984 920.1427 11.6406 + 40134.2500 1073.3063 12.5858 + 40160.1172 981.2328 12.0443 + 40186.0039 855.7130 11.2518 + 40211.9062 722.1697 10.3385 + 40237.8242 642.8586 9.7576 + 40263.7617 580.7186 9.2799 + 40289.7109 528.2283 8.8542 + 40315.6797 490.9538 8.5423 + 40341.6680 462.0080 8.2928 + 40367.6680 420.1813 7.9110 + 40393.6875 408.2202 7.8049 + 40419.7227 379.5372 7.5287 + 40445.7773 369.7265 7.4308 + 40471.8477 355.2427 7.2861 + 40497.9336 343.1927 7.1631 + 40524.0352 332.4313 7.0615 + 40550.1562 322.6346 6.9595 + 40576.2930 316.7486 6.8918 + 40602.4453 317.8032 6.9076 + 40628.6172 307.3954 6.7944 + 40654.8047 302.3855 6.7468 + 40681.0078 295.8354 6.6765 + 40707.2305 294.0339 6.6599 + 40733.4688 297.3461 6.7038 + 40759.7227 296.4122 6.6909 + 40785.9961 296.9302 6.7054 + 40812.2812 283.1931 6.5496 + 40838.5898 291.3257 6.6453 + 40864.9102 274.9641 6.4599 + 40891.2500 274.9423 6.4588 + 40917.6094 278.4351 6.5089 + 40943.9805 283.5734 6.5759 + 40970.3711 287.3516 6.6215 + 40996.7812 277.3242 6.5094 + 41023.2031 284.4227 6.5905 + 41049.6445 281.4211 6.5562 + 41076.1055 272.1785 6.4544 + 41102.5820 279.1123 6.5372 + 41129.0742 287.4173 6.6377 + 41155.5820 284.1993 6.6019 + 41182.1094 288.4524 6.6556 + 41208.6562 281.3463 6.5781 + 41235.2148 287.6370 6.6532 + 41261.7930 289.5048 6.6792 + 41288.3906 274.8033 6.5088 + 41315.0039 274.6380 6.5110 + 41341.6328 287.0154 6.6581 + 41368.2773 286.5156 6.6514 + 41394.9414 282.7464 6.6128 + 41421.6250 282.4275 6.6168 + 41448.3242 275.8751 6.5399 + 41475.0391 279.8110 6.5883 + 41501.7734 280.9662 6.6045 + 41528.5234 288.9310 6.7009 + 41555.2891 282.3134 6.6301 + 41582.0742 295.1647 6.7801 + 41608.8750 310.1175 6.9515 + 41635.6953 402.8444 7.9197 + 41662.5312 761.6860 10.8876 + 41689.3867 1940.2998 17.3883 + 41716.2578 5332.0542 28.8462 + 41743.1445 9901.3027 39.3545 + 41770.0508 10786.4414 41.1091 + 41796.9727 9142.9014 37.8600 + 41823.9141 7377.5825 34.0186 + 41850.8711 5968.1875 30.6073 + 41877.8477 4847.1040 27.5946 + 41904.8398 4020.3213 25.1437 + 41931.8477 3337.4814 22.9150 + 41958.8750 2785.2522 20.9377 + 41985.9219 2326.0886 19.1408 + 42012.9844 1993.4026 17.7269 + 42040.0625 1706.5642 16.4053 + 42067.1602 1477.0480 15.2671 + 42094.2734 1267.7053 14.1487 + 42121.4062 1131.1721 13.3674 + 42148.5586 992.2777 12.5248 + 42175.7227 873.5231 11.7581 + 42202.9102 774.9612 11.0765 + 42230.1094 708.0826 10.5877 + 42257.3320 656.3905 10.1992 + 42284.5664 600.0419 9.7538 + 42311.8203 568.7948 9.4962 + 42339.0938 526.4344 9.1373 + 42366.3828 497.3904 8.8816 + 42393.6914 464.4233 8.5824 + 42421.0156 430.5604 8.2636 + 42448.3594 424.3898 8.2076 + 42475.7188 393.7900 7.9092 + 42503.0977 385.9736 7.8302 + 42530.4922 373.4686 7.7014 + 42557.9062 362.2162 7.5832 + 42585.3359 353.4580 7.4911 + 42612.7852 351.7442 7.4770 + 42640.2539 334.9469 7.2974 + 42667.7344 332.4059 7.2673 + 42695.2383 323.3142 7.1658 + 42722.7578 309.7118 7.0166 + 42750.2930 311.7393 7.0363 + 42777.8477 304.6158 6.9580 + 42805.4219 293.3880 6.8321 + 42833.0117 299.4852 6.8986 + 42860.6211 306.2042 6.9769 + 42888.2461 294.9785 6.8452 + 42915.8906 281.4988 6.6812 + 42943.5508 286.3945 6.7395 + 42971.2305 288.8239 6.7691 + 42998.9297 280.2828 6.6683 + 43026.6445 276.4532 6.6178 + 43054.3789 279.6607 6.6601 + 43082.1289 281.5616 6.6800 + 43109.8984 281.2213 6.6766 + 43137.6836 289.8734 6.7737 + 43165.4883 283.0448 6.6919 + 43193.3086 269.9731 6.5333 + 43221.1523 274.5630 6.5892 + 43249.0078 273.7980 6.5780 + 43276.8867 275.3705 6.5971 + 43304.7812 285.9703 6.7204 + 43332.6914 274.9060 6.5858 + 43360.6211 290.0648 6.7649 + 43388.5703 316.7433 7.0666 + 43416.5391 388.7233 7.8291 + 43444.5195 515.6020 9.0158 + 43472.5234 552.4878 9.3313 + 43500.5430 508.1618 8.9476 + 43528.5820 445.8824 8.3796 + 43556.6406 415.7180 8.0874 + 43584.7148 396.4409 7.8984 + 43612.8086 372.7618 7.6585 + 43640.9180 350.5644 7.4247 + 43669.0469 322.1758 7.1199 + 43697.1953 322.2479 7.1201 + 43725.3594 313.2021 7.0198 + 43753.5430 315.0004 7.0374 + 43781.7422 313.7740 7.0239 + 43809.9648 308.5536 6.9645 + 43838.2031 304.8125 6.9186 + 43866.4570 290.0771 6.7463 + 43894.7305 279.2706 6.6223 + 43923.0234 274.9009 6.5685 + 43951.3359 286.9950 6.7083 + 43979.6641 277.9637 6.6015 + 44008.0117 273.4328 6.5479 + 44036.3789 275.2445 6.5660 + 44064.7617 275.1323 6.5639 + 44093.1641 272.5855 6.5301 + 44121.5820 275.9881 6.5691 + 44150.0234 275.1590 6.5562 + 44178.4805 265.6050 6.4402 + 44206.9531 269.7736 6.4846 + 44235.4492 272.5877 6.5171 + 44263.9609 270.6145 6.4929 + 44292.4922 277.1424 6.5691 + 44321.0391 281.9359 6.6227 + 44349.6094 294.5330 6.7657 + 44378.1914 306.6688 6.9019 + 44406.7969 313.9411 6.9776 + 44435.4219 330.3719 7.1580 + 44464.0625 329.1508 7.1427 + 44492.7227 330.2085 7.1506 + 44521.3984 323.0085 7.0675 + 44550.0938 317.8754 7.0069 + 44578.8086 310.0871 6.9223 + 44607.5430 302.3200 6.8317 + 44636.2969 298.1557 6.7867 + 44665.0664 291.2664 6.7016 + 44693.8555 294.8249 6.7398 + 44722.6641 291.4635 6.7053 + 44751.4883 291.0940 6.6954 + 44780.3320 277.7191 6.5370 + 44809.1953 273.1004 6.4909 + 44838.0781 283.8698 6.6174 + 44866.9805 280.9791 6.5813 + 44895.8984 273.0252 6.4858 + 44924.8359 283.2784 6.6032 + 44953.7930 271.5627 6.4677 + 44982.7695 273.8820 6.4952 + 45011.7617 269.4333 6.4399 + 45040.7734 272.2920 6.4763 + 45069.8047 271.3262 6.4678 + 45098.8555 279.2671 6.5616 + 45127.9258 285.0577 6.6307 + 45157.0117 290.0536 6.6895 + 45186.1172 291.4636 6.7030 + 45215.2422 306.4038 6.8720 + 45244.3867 358.9908 7.4392 + 45273.5508 586.4579 9.5059 + 45302.7305 1408.2202 14.7286 + 45331.9297 3875.4253 24.4397 + 45361.1484 9431.2871 38.1549 + 45390.3867 14049.5479 46.6059 + 45419.6445 13459.7734 45.6312 + 45448.9180 10937.7002 41.1382 + 45478.2148 8656.0547 36.6007 + 45507.5273 6872.2217 32.6123 + 45536.8594 5538.7466 29.2796 + 45566.2109 4488.4160 26.3653 + 45595.5781 3694.8101 23.9213 + 45624.9688 3023.8462 21.6452 + 45654.3750 2511.2017 19.7284 + 45683.8047 2084.1594 17.9782 + 45713.2500 1772.6013 16.5794 + 45742.7148 1514.3623 15.3262 + 45772.1992 1275.7634 14.0707 + 45801.6992 1128.3513 13.2331 + 45831.2227 1000.7846 12.4607 + 45860.7617 882.9467 11.7053 + 45890.3242 778.1186 10.9924 + 45919.9023 709.6714 10.5019 + 45949.5000 649.6591 10.0514 + 45979.1172 592.5939 9.5981 + 46008.7539 549.1334 9.2405 + 46038.4062 507.8153 8.8879 + 46068.0820 476.2225 8.6061 + 46097.7734 457.3626 8.4382 + 46127.4883 437.7069 8.2525 + 46157.2188 408.6328 7.9759 + 46186.9688 388.1490 7.7776 + 46216.7383 371.5106 7.6071 + 46246.5273 367.5476 7.5699 + 46276.3359 358.7086 7.4798 + 46306.1641 346.0005 7.3472 + 46336.0117 334.4243 7.2235 + 46365.8789 318.8836 7.0593 + 46395.7617 321.8889 7.0921 + 46425.6680 323.1383 7.1030 + 46455.5938 320.6691 7.0792 + 46485.5352 303.6116 6.8951 + 46515.4961 308.6904 6.9506 + 46545.4805 294.4386 6.7903 + 46575.4805 294.2894 6.7872 + 46605.5000 287.7295 6.7133 + 46635.5391 295.5712 6.8087 + 46665.6016 283.9796 6.6754 + 46695.6797 299.1469 6.8504 + 46725.7773 288.7154 6.7300 + 46755.8945 279.8324 6.6329 + 46786.0312 271.6542 6.5341 + 46816.1875 272.4578 6.5441 + 46846.3633 282.7513 6.6686 + 46876.5586 291.7857 6.7778 + 46906.7734 285.5934 6.7055 + 46937.0039 267.2130 6.4899 + 46967.2578 265.9659 6.4765 + 46997.5312 272.6849 6.5559 + 47027.8242 267.3467 6.4950 + 47058.1367 275.4028 6.5942 + 47088.4688 277.3974 6.6197 + 47118.8203 270.1570 6.5314 + 47149.1914 259.1626 6.3993 + 47179.5820 276.6348 6.6165 + 47209.9883 271.2749 6.5559 + 47240.4180 258.8003 6.4019 + 47270.8672 267.1387 6.5040 + 47301.3359 269.1348 6.5310 + 47331.8242 273.5929 6.5847 + 47362.3320 280.2250 6.6678 + 47392.8594 280.8751 6.6786 + 47423.4102 288.2117 6.7702 + 47453.9766 319.5898 7.1268 + 47484.5625 439.3455 8.3529 + 47515.1680 835.0953 11.5134 + 47545.7930 2003.1881 17.8325 + 47576.4414 4502.8813 26.7650 + 47607.1055 6505.9590 32.2046 + 47637.7930 6172.4297 31.3786 + 47668.4961 4946.6953 28.0955 + 47699.2227 3958.4478 25.1385 + 47729.9648 3175.5212 22.5178 + 47760.7305 2560.8813 20.2222 + 47791.5156 2089.7578 18.2719 + 47822.3203 1707.7932 16.5240 + 47853.1445 1425.6035 15.0972 + 47883.9883 1211.5938 13.9171 + 47914.8516 1025.2579 12.8042 + 47945.7344 888.8423 11.9226 + 47976.6406 785.6584 11.2141 + 48007.5625 681.7659 10.4502 + 48038.5039 600.5933 9.8086 + 48069.4688 546.5834 9.3562 + 48100.4531 515.2087 9.0859 + 48131.4570 471.3997 8.6897 + 48162.4805 446.6695 8.4615 + 48193.5234 418.2606 8.1883 + 48224.5859 400.1459 8.0103 + 48255.6680 385.6787 7.8664 + 48286.7734 367.2187 7.6720 + 48317.8945 340.4987 7.3911 + 48349.0391 337.2990 7.3616 + 48380.2031 324.2765 7.2170 + 48411.3867 314.0441 7.1017 + 48442.5898 305.5913 7.0068 + 48473.8164 311.9889 7.0808 + 48505.0586 302.3354 6.9732 + 48536.3242 299.7639 6.9436 + 48567.6055 299.9876 6.9456 + 48598.9102 294.9695 6.8872 + 48630.2383 291.0459 6.8396 + 48661.5820 288.3627 6.8126 + 48692.9453 282.3689 6.7443 + 48724.3320 277.1729 6.6809 + 48755.7383 280.2458 6.7191 + 48787.1641 282.6883 6.7470 + 48818.6094 276.8465 6.6776 + 48850.0742 280.5203 6.7207 + 48881.5625 258.8691 6.4590 + 48913.0703 261.3833 6.4922 + 48944.5938 258.6056 6.4562 + 48976.1445 260.3201 6.4803 + 49007.7109 260.0172 6.4764 + 49039.3008 265.3863 6.5457 + 49070.9062 264.6421 6.5327 + 49102.5352 276.1261 6.6701 + 49134.1875 259.0712 6.4647 + 49165.8555 255.3075 6.4188 + 49197.5469 263.0693 6.5157 + 49229.2578 265.1079 6.5396 + 49260.9883 262.5380 6.5078 + 49292.7383 261.7676 6.4969 + 49324.5117 260.7806 6.4863 + 49356.3008 268.4820 6.5786 + 49388.1172 257.5783 6.4497 + 49419.9492 266.4901 6.5565 + 49451.8008 261.6003 6.4978 + 49483.6758 263.0718 6.5189 + 49515.5703 250.9941 6.3678 + 49547.4883 246.2910 6.3101 + 49579.4219 258.0448 6.4547 + 49611.3789 254.0939 6.4067 + 49643.3555 251.1144 6.3709 + 49675.3555 244.6115 6.2904 + 49707.3750 259.5914 6.4814 + 49739.4141 259.1812 6.4763 + 49771.4727 257.1287 6.4519 + 49803.5547 262.4779 6.5200 + 49835.6523 256.9005 6.4522 + 49867.7773 258.1555 6.4680 + 49899.9180 257.4963 6.4615 + 49932.0820 262.4357 6.5268 + 49964.2656 274.3253 6.6721 + 49996.4688 288.2775 6.8387 + 50028.6953 320.1523 7.2092 + 50060.9414 444.7556 8.4966 + 50093.2109 863.8527 11.8427 + 50125.4961 2010.8892 18.0727 + 50157.8047 4072.8689 25.7424 + 50190.1367 5144.6006 28.9589 + 50222.4844 4562.7930 27.2828 + 50254.8555 3614.4817 24.2852 + 50287.2500 2827.9377 21.4923 + 50319.6602 2250.3232 19.1756 + 50352.0938 1843.4539 17.3589 + 50384.5508 1503.8937 15.6873 + 50417.0234 1233.8313 14.2132 + 50449.5234 1043.1099 13.0715 + 50482.0391 874.1473 11.9722 + 50514.5781 769.3928 11.2386 + 50547.1367 677.5942 10.5519 + 50579.7188 605.6512 9.9769 + 50612.3203 529.2737 9.3312 + 50644.9414 478.0658 8.8707 + 50677.5859 439.6796 8.5108 + 50710.2500 420.3920 8.3254 + 50742.9336 388.1462 8.0025 + 50775.6406 371.3309 7.8328 + 50808.3672 356.3414 7.6756 + 50841.1172 340.1362 7.5031 + 50873.8867 316.9594 7.2408 + 50906.6797 310.5108 7.1750 + 50939.4922 296.3379 7.0112 + 50972.3242 288.2198 6.9190 + 51005.1797 300.3845 7.0654 + 51038.0547 287.0974 6.9102 + 51070.9492 281.0902 6.8373 + 51103.8672 290.1821 6.9516 + 51136.8086 288.7698 6.9471 + 51169.7695 282.9384 6.8794 + 51202.7500 273.8648 6.7663 + 51235.7539 270.4483 6.7282 + 51268.7773 271.8320 6.7517 + 51301.8242 267.3323 6.6961 + 51334.8906 259.5670 6.5977 + 51367.9766 270.7702 6.7429 + 51401.0859 263.8806 6.6592 + 51434.2188 258.2302 6.5953 + 51467.3711 256.0325 6.5681 + 51500.5430 272.2101 6.7727 + 51533.7383 267.8840 6.7277 + 51566.9570 261.0171 6.6446 + 51600.1914 266.6304 6.7268 + 51633.4531 277.5110 6.8624 + 51666.7344 260.4788 6.6522 + 51700.0352 269.0447 6.7635 + 51733.3594 264.6299 6.7172 + 51766.7031 265.4461 6.7278 + 51800.0703 262.0609 6.6888 + 51833.4570 258.2103 6.6335 + 51866.8672 259.0327 6.6518 + 51900.2969 270.9666 6.8111 + 51933.7500 249.6669 6.5412 + 51967.2266 256.2059 6.6308 + 52000.7188 248.9281 6.5343 + 52034.2383 261.6651 6.7118 + 52067.7773 258.4745 6.6717 + 52101.3359 256.4878 6.6500 + 52134.9180 259.0629 6.6884 + 52168.5234 260.6266 6.7149 + 52202.1484 252.3417 6.6102 + 52235.7969 260.8112 6.7236 + 52269.4648 253.4530 6.6214 + 52303.1562 248.5656 6.5679 + 52336.8672 253.7255 6.6358 + 52370.6016 244.0216 6.5223 + 52404.3555 250.6123 6.6139 + 52438.1367 246.3356 6.5610 + 52471.9336 256.4273 6.7031 + 52505.7539 258.6277 6.7317 + 52539.5977 250.6310 6.6280 + 52573.4609 266.2225 6.8311 + 52607.3477 260.3825 6.7600 + 52641.2578 264.4254 6.8248 + 52675.1875 265.5481 6.8423 + 52709.1406 261.2889 6.7956 + 52743.1133 252.6489 6.6840 + 52777.1094 256.1879 6.7298 + 52811.1289 249.8419 6.6499 + 52845.1680 245.0325 6.5959 + 52879.2266 256.9951 6.7580 + 52913.3125 254.5230 6.7392 + 52947.4180 252.5571 6.7115 + 52981.5430 259.9653 6.8120 + 53015.6953 267.1332 6.9158 + 53049.8672 267.3242 6.9122 + 53084.0586 314.7007 7.5028 + 53118.2734 466.5391 9.1428 + 53152.5117 845.4902 12.3155 + 53186.7734 1705.1316 17.5187 + 53221.0547 2523.1877 21.3547 + 53255.3594 2477.4521 21.1741 + 53289.6836 2056.8040 19.3054 + 53324.0312 1636.1472 17.2241 + 53358.4023 1313.8253 15.4404 + 53392.7930 1075.0142 13.9753 + 53427.2109 879.2128 12.6495 + 53461.6445 736.1237 11.5817 + 53496.1055 639.2496 10.8014 + 53530.5859 555.1170 10.0723 + 53565.0898 501.2296 9.5773 + 53599.6133 459.5367 9.1803 + 53634.1641 413.5253 8.7140 + 53668.7344 385.3464 8.4254 + 53703.3242 357.0344 8.1095 + 53737.9414 339.3349 7.9124 + 53772.5781 330.8272 7.8104 + 53807.2383 309.2554 7.5592 + 53841.9180 304.5711 7.5082 + 53876.6211 294.4493 7.3868 + 53911.3477 291.1164 7.3483 + 53946.0977 287.5205 7.3096 + 53980.8672 282.0818 7.2492 + 54015.6641 282.2393 7.2596 + 54050.4805 281.3415 7.2530 + 54085.3164 269.6702 7.1051 + 54120.1797 265.6973 7.0587 + 54155.0625 274.9257 7.1825 + 54189.9688 264.5940 7.0583 + 54224.8945 266.4087 7.0858 + 54259.8477 264.0135 7.0584 + 54294.8203 258.8483 6.9907 + 54329.8164 254.3238 6.9344 + 54364.8359 251.9780 6.9066 + 54399.8750 254.9548 6.9556 + 54434.9414 254.2947 6.9554 + 54470.0273 253.3641 6.9474 + 54505.1328 249.4711 6.8963 + 54540.2656 249.2577 6.8988 + 54575.4219 251.5679 6.9340 + 54610.5977 258.9102 7.0403 + 54645.7969 260.3452 7.0627 + 54681.0195 262.5285 7.1029 + 54716.2656 259.5160 7.0711 + 54751.5312 249.3444 6.9376 + 54786.8203 257.0817 7.0428 + 54822.1367 258.1796 7.0661 + 54857.4727 262.2748 7.1306 + 54892.8281 255.1651 7.0238 + 54928.2109 248.0238 6.9340 + 54963.6133 257.1777 7.0652 + 54999.0430 251.4803 6.9922 + 55034.4922 257.2131 7.0783 + 55069.9648 249.4747 6.9734 + 55105.4609 250.6015 6.9961 + 55140.9805 255.4454 7.0721 + 55176.5195 257.0081 7.0947 + 55212.0859 251.0200 7.0167 + 55247.6719 259.1075 7.1322 + 55283.2812 263.8748 7.2085 + 55318.9141 255.4604 7.0986 + 55354.5703 254.3676 7.0935 + 55390.2500 258.1055 7.1460 + 55425.9531 254.2820 7.0987 + 55461.6758 248.3185 7.0315 + 55497.4258 252.0384 7.0805 + 55533.1953 249.9671 7.0564 + 55568.9922 244.0699 6.9739 + 55604.8086 246.7986 7.0214 + 55640.6484 249.4991 7.0709 + 55676.5117 242.3179 6.9621 + 55712.3984 250.5698 7.0920 + 55748.3086 253.9015 7.1437 + 55784.2422 270.3417 7.3711 + 55820.1953 267.1490 7.3366 + 55856.1758 265.2547 7.3239 + 55892.1797 255.1597 7.1909 + 55928.2031 258.8750 7.2479 + 55964.2539 250.8352 7.1461 + 56000.3242 253.7879 7.1884 + 56036.4180 250.8069 7.1451 + 56072.5391 254.7833 7.2023 + 56108.6797 254.9608 7.2106 + 56144.8438 251.4859 7.1818 + 56181.0352 242.4436 7.0503 + 56217.2461 248.8690 7.1410 + 56253.4805 264.4472 7.3727 + 56289.7383 255.8914 7.2626 + 56326.0195 262.5078 7.3601 + 56362.3242 254.2899 7.2479 + 56398.6562 254.2697 7.2474 + 56435.0078 257.4750 7.3043 + 56471.3828 250.4960 7.1995 + 56507.7812 265.1005 7.4146 + 56544.2031 258.1895 7.3273 + 56580.6484 257.9564 7.3380 + 56617.1172 279.9157 7.6464 + 56653.6094 309.5488 8.0417 + 56690.1289 394.9725 9.0890 + 56726.6680 530.9557 10.5474 + 56763.2305 670.2857 11.8509 + 56799.8164 913.2484 13.8284 + 56836.4297 1627.9695 18.4977 + 56873.0625 2895.8557 24.7215 + 56909.7188 3426.2363 26.9156 + 56946.4023 3044.7043 25.3914 + 56983.1055 2408.8259 22.5957 + 57019.8359 1894.2432 20.0537 + 57056.5898 1483.8070 17.7684 + 57093.3633 1195.6050 15.9479 + 57130.1641 997.2427 14.5795 + 57166.9883 837.2570 13.3719 + 57203.8359 692.5579 12.1640 + 57240.7070 590.3216 11.2523 + 57277.6016 514.5963 10.5097 + 57314.5195 470.1041 10.0522 + 57351.4609 422.5041 9.5371 + 57388.4258 397.2219 9.2532 + 57425.4180 360.3894 8.8226 + 57462.4297 346.3887 8.6537 + 57499.4688 338.4845 8.5644 + 57536.5312 329.4282 8.4635 + 57573.6172 326.5924 8.4180 + 57610.7266 310.5090 8.2219 + 57647.8594 292.6776 7.9901 + 57685.0156 281.0825 7.8317 + 57722.1953 280.2864 7.8330 + 57759.4023 272.7025 7.7370 + 57796.6328 275.8807 7.7822 + 57833.8828 264.4182 7.6188 + 57871.1602 259.5797 7.5572 + 57908.4609 258.5984 7.5586 + 57945.7891 263.8823 7.6382 + 57983.1367 258.4868 7.5616 + 58020.5117 257.9756 7.5643 + 58057.9062 263.5451 7.6555 + 58095.3281 266.4251 7.7001 + 58132.7734 271.8646 7.7652 + 58170.2461 276.8938 7.8529 + 58207.7383 260.3539 7.6128 + 58245.2578 262.2725 7.6508 + 58282.7969 254.1349 7.5447 + 58320.3633 253.9587 7.5432 + 58357.9570 257.7404 7.6186 + 58395.5703 255.7675 7.5914 + 58433.2109 264.1518 7.7124 + 58470.8750 256.1991 7.6061 + 58508.5625 250.7575 7.5302 + 58546.2734 250.2513 7.5240 + 58584.0078 254.3638 7.5841 + 58621.7695 255.5750 7.6124 + 58659.5547 256.7677 7.6422 + 58697.3633 257.6510 7.6575 + 58735.1992 253.4976 7.6062 + 58773.0547 260.3789 7.7132 + 58810.9375 250.9175 7.5699 + 58848.8438 252.7447 7.6139 + 58886.7773 257.6849 7.6932 + 58924.7305 249.5900 7.5742 + 58962.7109 259.1649 7.7342 + 59000.7188 251.0794 7.6187 + 59038.7461 256.2051 7.7044 + 59076.8008 256.0225 7.7033 + 59114.8789 261.1522 7.7838 + 59152.9805 258.1339 7.7458 + 59191.1094 258.0684 7.7457 + 59229.2617 254.1989 7.6999 + 59267.4375 258.6754 7.7786 + 59305.6367 264.5618 7.8784 + 59343.8633 253.4400 7.7141 + 59382.1133 255.7602 7.7565 + 59420.3906 256.7093 7.7690 + 59458.6875 248.6145 7.6599 + 59497.0117 242.5561 7.5721 + 59535.3633 256.5344 7.7998 + 59573.7344 253.6034 7.7606 + 59612.1328 254.5043 7.7755 + 59650.5586 253.2666 7.7607 + 59689.0039 246.5595 7.6713 + 59727.4766 245.7601 7.6637 + 59765.9766 264.6519 7.9662 + 59804.5000 255.2833 7.8284 + 59843.0469 256.5850 7.8566 + 59881.6172 259.7614 7.9073 + 59920.2148 251.1470 7.7857 + 59958.8359 252.8657 7.8140 + 59997.4844 260.3644 7.9355 + 60036.1562 253.6192 7.8304 + 60074.8516 252.2162 7.8142 + 60113.5742 251.4133 7.8164 + 60152.3203 248.6000 7.7817 + 60191.0898 251.8768 7.8464 + 60229.8867 265.2603 8.0624 + 60268.7109 267.8607 8.1104 + 60307.5547 264.5314 8.0593 + 60346.4258 247.9579 7.7949 + 60385.3242 253.0874 7.8948 + 60424.2461 252.9288 7.9056 + 60463.1914 259.5750 8.0244 + 60502.1641 258.9303 8.0195 + 60541.1602 251.0158 7.8951 + 60580.1836 254.8431 7.9631 + 60619.2305 260.0753 8.0501 + 60658.3008 260.6520 8.0598 + 60697.3984 254.8744 7.9740 + 60736.5234 250.0862 7.9074 + 60775.6719 243.2538 7.8032 + 60814.8438 250.0393 7.9195 + 60854.0430 252.4487 7.9640 + 60893.2656 246.8390 7.8851 + 60932.5156 264.4885 8.1651 + 60971.7891 256.6814 8.0563 + 61011.0898 254.4153 8.0225 + 61050.4141 257.3948 8.0755 + 61089.7656 256.7126 8.0788 + 61129.1406 252.8154 8.0206 + 61168.5430 252.7415 8.0282 + 61207.9688 269.2477 8.2989 + 61247.4180 269.8795 8.3149 + 61286.8984 321.2714 9.0662 + 61326.3984 438.9988 10.6075 + 61365.9297 760.5710 13.9680 + 61405.4805 1473.4425 19.4804 + 61445.0625 2297.6809 24.3984 + 61484.6641 2383.4167 24.8673 + 61524.2969 1930.2520 22.3792 + 61563.9531 1533.9747 19.9730 + 61603.6328 1192.6674 17.6160 + 61643.3398 926.4744 15.5439 + 61683.0742 788.8455 14.3637 + 61722.8320 666.5258 13.2018 + 61762.6133 552.4268 12.0331 + 61802.4219 503.3532 11.5045 + 61842.2578 438.2661 10.7560 + 61882.1211 404.8841 10.3354 + 61922.0078 365.5536 9.8249 + 61961.9180 336.4413 9.4394 + 62001.8555 331.9586 9.3834 + 62041.8203 321.1015 9.2395 + 62081.8086 304.4466 8.9993 + 62121.8242 297.0293 8.8913 + 62161.8633 299.9811 8.9399 + 62201.9297 283.8366 8.7134 + 62242.0234 270.5093 8.5313 + 62282.1406 276.2532 8.6257 + 62322.2852 267.4555 8.4819 + 62362.4570 267.5411 8.4847 + 62402.6523 257.9308 8.3431 + 62442.8750 256.2441 8.3234 + 62483.1211 261.8573 8.4192 + 62523.3945 257.7644 8.3634 + 62563.6953 274.5352 8.6448 + 62604.0234 266.3282 8.5112 + 62644.3750 266.8110 8.5347 + 62684.7500 269.6784 8.5851 + 62725.1562 262.8295 8.5032 + 62765.5859 266.4453 8.5676 + 62806.0391 271.9757 8.6377 + 62846.5234 251.6154 8.3205 + 62887.0312 256.7452 8.4103 + 62927.5664 241.2168 8.1626 + 62968.1250 249.0323 8.2918 + 63008.7109 256.6977 8.4241 + 63049.3242 250.6166 8.3354 + 63089.9609 259.0085 8.4961 + 63130.6289 249.4277 8.3361 + 63171.3203 255.6478 8.4579 + 63212.0352 248.2287 8.3439 + 63252.7812 262.9709 8.5959 + 63293.5508 263.4173 8.6115 + 63334.3477 255.0848 8.4802 + 63375.1680 251.1690 8.4318 + 63416.0156 258.5378 8.5439 + 63456.8906 250.0327 8.4050 + 63497.7930 253.3745 8.4751 + 63538.7227 252.1947 8.4490 + 63579.6758 250.3130 8.4351 + 63620.6562 255.2650 8.5361 + 63661.6641 258.7484 8.5967 + 63702.6953 263.8095 8.6961 + 63743.7578 270.1225 8.8028 + 63784.8438 256.7070 8.5978 + 63825.9570 241.5022 8.3530 + 63867.0938 255.7148 8.5911 + 63908.2617 261.3045 8.6871 + 63949.4531 260.4572 8.6914 + 63990.6719 255.8164 8.6205 + 64031.9180 251.6774 8.5551 + 64073.1914 255.6446 8.6267 + 64114.4883 252.9962 8.6102 + 64155.8125 262.5971 8.7655 + 64197.1641 251.3244 8.5793 + 64238.5430 256.2817 8.6758 + 64279.9492 250.8344 8.5939 + 64321.3828 254.3848 8.6711 + 64362.8398 247.7876 8.5782 + 64404.3242 260.0940 8.7724 + 64445.8359 246.0284 8.5446 + 64487.3750 246.8306 8.5727 + 64528.9414 246.9207 8.5640 + 64570.5352 265.8631 8.9076 + 64612.1523 249.4213 8.6403 + 64653.8008 268.3510 8.9849 + 64695.4727 269.1327 9.0145 + 64737.1719 248.6358 8.6619 + 64778.8984 253.1509 8.7453 + 64820.6523 246.0893 8.6302 + 64862.4336 252.0553 8.7355 + 64904.2422 254.7072 8.7985 + 64946.0742 254.7246 8.8032 + 64987.9375 249.1442 8.6923 + 65029.8242 251.3576 8.7501 + 65071.7383 242.8716 8.6214 + 65113.6836 250.5004 8.7579 + 65155.6523 256.8533 8.8668 + 65197.6484 252.8248 8.8197 + 65239.6719 249.7394 8.7682 + 65281.7227 269.0967 9.1136 + 65323.8008 255.1939 8.8723 + 65365.9023 262.2251 9.0095 + 65408.0352 314.0713 9.8709 + 65450.1953 408.6759 11.2733 + 65492.3828 530.1345 12.8468 + 65534.5938 565.9858 13.2864 + 65576.8359 524.8708 12.8224 + 65619.1016 449.6776 11.8776 + 65661.3984 416.8133 11.4382 + 65703.7188 387.1624 11.0458 + 65746.0703 343.1063 10.4096 + 65788.4453 307.4844 9.8641 + 65830.8516 299.7722 9.7467 + 65873.2812 289.9473 9.5954 + 65915.7422 271.4166 9.2997 + 65958.2266 285.3075 9.5331 + 66000.7422 261.2158 9.1174 + 66043.2812 250.8491 8.9512 + 66085.8516 260.7974 9.1536 + 66128.4453 270.2549 9.3237 + 66171.0703 264.2986 9.2114 + 66213.7188 254.7242 9.0717 + 66256.3984 265.5553 9.2707 + 66299.1094 268.7000 9.3337 + 66341.8359 260.6056 9.2125 + 66384.6016 255.9044 9.1369 + 66427.3906 264.8032 9.2985 + 66470.2031 259.6927 9.2101 + 66513.0469 266.6724 9.3296 + 66555.9219 267.5211 9.3623 + 66598.8203 265.6607 9.3295 + 66641.7422 250.8712 9.0933 + 66684.7031 252.7906 9.1383 + 66727.6797 260.4824 9.2916 + 66770.6875 264.5847 9.3679 + 66813.7266 253.0016 9.1507 + 66856.7969 260.2515 9.3012 + 66899.8828 268.0173 9.4638 + 66943.0078 254.7560 9.2354 + 66986.1562 258.6006 9.3136 + 67029.3281 257.0063 9.2741 + 67072.5391 252.6023 9.2088 + 67115.7656 283.0654 9.7604 + 67159.0312 358.7963 10.9945 + 67202.3125 515.2650 13.1658 + 67245.6328 878.5516 17.2316 + 67288.9766 1498.4982 22.5841 + 67332.3438 1806.8547 24.8372 + 67375.7422 1571.2385 23.1512 + 67419.1719 1255.3936 20.7272 + 67462.6250 1007.6801 18.5784 + 67506.1094 790.6357 16.4671 + 67549.6250 653.7325 14.9939 + 67593.1641 550.2539 13.7655 + 67636.7266 475.6922 12.7940 + 67680.3281 410.8764 11.9163 + 67723.9453 390.2678 11.6279 + 67767.6016 352.1285 11.0544 + 67811.2812 329.5636 10.7012 + 67854.9844 330.6125 10.7319 + 67898.7266 308.8593 10.3896 + 67942.4922 294.0987 10.1485 + 67986.2812 273.5239 9.7891 + 68030.1016 282.0447 9.9470 + 68073.9531 276.4974 9.8606 + 68117.8281 268.3559 9.7215 + 68161.7344 272.1705 9.8345 + 68205.6719 258.9155 9.5902 + 68249.6328 259.4962 9.5967 + 68293.6250 260.1848 9.6205 + 68337.6406 267.6691 9.7676 + 68381.6875 255.2231 9.5602 + 68425.7656 265.4144 9.7532 + 68469.8672 278.7641 10.0067 + 68514.0000 264.4514 9.7494 + 68558.1641 261.1013 9.6966 + 68602.3516 261.6355 9.7095 + 68646.5703 248.6590 9.4978 + 68690.8125 249.0925 9.4857 + 68735.0938 257.1290 9.6746 + 68779.3906 249.5174 9.5444 + 68823.7266 257.3676 9.6818 + 68868.0859 268.1412 9.8894 + 68912.4766 257.7256 9.7010 + 68956.8906 248.3670 9.5434 + 69001.3438 254.0955 9.6659 + 69045.8125 247.8026 9.5552 + 69090.3203 263.0236 9.8758 + 69134.8516 257.9502 9.7663 + 69179.4141 265.3393 9.9220 + 69224.0000 260.4285 9.8423 + 69268.6250 267.9201 9.9700 + 69313.2656 259.4340 9.8180 + 69357.9453 254.9000 9.7566 + 69402.6484 266.5726 9.9871 + 69447.3828 274.3337 10.1495 + 69492.1484 270.4095 10.0982 + 69536.9375 257.6618 9.8673 + 69581.7578 275.1640 10.1908 + 69626.6094 282.5131 10.3462 + 69671.4844 254.3000 9.8362 + 69716.3906 260.1346 9.9526 + 69761.3281 257.2056 9.9110 + 69806.2969 260.0229 9.9522 + 69851.2891 269.7125 10.1473 + 69896.3125 256.5043 9.9149 + 69941.3594 243.3318 9.6728 + 69986.4453 251.7551 9.8354 + 70031.5547 257.8016 9.9871 + 70076.6953 245.5303 9.7418 + 70121.8594 245.3363 9.7414 + 70167.0547 246.3560 9.7929 + 70212.2812 262.3522 10.1105 + 70257.5391 269.3208 10.2749 + 70302.8281 266.2375 10.2208 + 70348.1406 256.1530 10.0165 + 70393.4844 253.2407 9.9666 + 70438.8516 243.6591 9.7745 + 70484.2578 247.1187 9.8646 + 70529.6875 240.7842 9.7528 + 70575.1484 264.7438 10.2456 + 70620.6406 265.0836 10.2859 + 70666.1562 248.2238 9.9589 + 70711.7031 243.1598 9.8580 + 70757.2812 260.9017 10.1948 + 70802.8906 257.6731 10.1645 + 70848.5234 250.1008 10.0237 + 70894.1875 257.3225 10.1688 + 70939.8828 270.0421 10.4320 + 70985.6094 262.8907 10.3200 + 71031.3672 260.0212 10.2910 + 71077.1484 259.2697 10.2683 + 71122.9609 258.6077 10.2714 + 71168.8047 249.9463 10.1169 + 71214.6797 265.1338 10.4269 + 71260.5781 261.3882 10.3452 + 71306.5078 264.6953 10.4198 + 71352.4688 270.4565 10.5413 + 71398.4609 260.0766 10.3483 + 71444.4844 260.3288 10.3683 + 71490.5312 260.7536 10.3862 + 71536.6094 249.0530 10.1541 + 71582.7188 258.3533 10.3748 + 71628.8594 258.3768 10.3748 + 71675.0312 239.8077 9.9984 + 71721.2266 246.4464 10.1528 + 71767.4531 260.2638 10.4130 + 71813.7109 259.2087 10.4370 + 71860.0000 259.1043 10.4307 + 71906.3203 240.1359 10.0607 + 71952.6641 236.9080 10.0037 + 71999.0469 250.8378 10.3067 + 72045.4531 264.2311 10.5887 + 72091.8906 270.6955 10.7284 + 72138.3516 249.3897 10.3121 + 72184.8516 245.2258 10.1989 + 72231.3828 256.1683 10.4517 + 72277.9375 277.9166 10.9020 + 72324.5234 259.2826 10.5668 + 72371.1406 262.7736 10.6610 + 72417.7891 270.6611 10.8147 + 72464.4609 262.4580 10.6597 + 72511.1719 250.0083 10.4054 + 72557.9062 258.0005 10.5591 + 72604.6797 269.9826 10.8225 + 72651.4766 258.5092 10.6107 + 72698.3047 266.8020 10.7970 + 72745.1641 273.4387 10.9458 + 72792.0469 276.1083 11.0363 + 72838.9688 275.9033 11.0371 + 72885.9141 254.9010 10.6047 + 72932.8984 256.7860 10.6591 + 72979.9062 257.5851 10.6949 + 73026.9453 270.5171 10.9801 + 73074.0156 252.8194 10.6271 + 73121.1172 254.2927 10.6675 + 73168.2422 238.8143 10.3544 + 73215.4062 245.7671 10.4880 + 73262.5938 259.1566 10.7842 + 73309.8203 250.9167 10.6428 + 73357.0703 264.0155 10.9304 + 73404.3516 256.2730 10.7658 + 73451.6641 256.1744 10.7704 + 73499.0078 247.7268 10.6270 + 73546.3828 242.7211 10.5409 + 73593.7891 263.1595 10.9635 + 73641.2266 249.6540 10.6779 + 73688.6875 255.8017 10.8417 + 73736.1875 250.8192 10.7404 + 73783.7109 239.9663 10.5305 + 73831.2734 250.2481 10.7647 + 73878.8594 260.1192 10.9715 + 73926.4766 262.6873 11.0312 + 73974.1250 268.5092 11.2068 + 74021.8047 255.8776 10.9433 + 74069.5156 253.8743 10.8815 + 74117.2578 246.0886 10.7380 + 74165.0312 244.3541 10.7187 + 74212.8359 257.8244 10.9823 + 74260.6719 263.1932 11.1521 + 74308.5391 259.9096 11.0841 + 74356.4297 262.7869 11.1693 + 74404.3594 265.6441 11.2288 + 74452.3203 252.0766 10.9445 + 74500.3047 261.1256 11.1601 + 74548.3281 273.5038 11.4279 + 74596.3750 273.0587 11.4462 + 74644.4531 268.4302 11.3654 + 74692.5703 275.1843 11.5120 + 74740.7109 276.2445 11.5387 + 74788.8906 265.8820 11.3266 + 74837.0938 276.8847 11.5634 + 74885.3281 275.1338 11.5615 + 74933.5938 273.8173 11.5289 + 74981.8984 327.6480 12.6105 + 75030.2266 490.5475 15.4441 + 75078.5859 904.9319 20.9667 + 75126.9766 1896.6675 30.3894 + 75175.3984 4096.1040 44.7828 + 75223.8594 8069.1938 63.1480 + 75272.3438 10360.6455 71.6785 + 75320.8594 9164.8643 67.4452 + 75369.4062 7018.9951 59.0271 + 75417.9844 5101.4302 50.3544 + 75466.6016 3720.8208 43.0560 + 75515.2422 2675.3730 36.5193 + 75563.9141 2037.2885 31.9112 + 75612.6172 1574.1243 28.0832 + 75661.3594 1238.8220 24.9365 + 75710.1250 999.9042 22.4385 + 75758.9219 832.1713 20.4837 + 75807.7578 695.7492 18.7218 + 75856.6172 605.1224 17.5138 + 75905.5078 513.8391 16.1570 + 75954.4375 481.4805 15.6541 + 76003.3906 440.7122 15.0089 + 76052.3828 395.7792 14.2236 + 76101.3984 369.2010 13.7484 + 76150.4531 347.3613 13.3592 + 76199.5391 343.7502 13.3304 + 76248.6484 320.6012 12.8628 + 76297.7969 314.9186 12.7579 + 76346.9766 317.6320 12.8246 + 76396.1875 312.1664 12.7348 + 76445.4297 291.5181 12.3190 + 76494.7031 276.5828 12.0140 + 76544.0078 294.6126 12.4303 + 76593.3438 281.8859 12.1558 + 76642.7109 300.3528 12.5844 + 76692.1094 285.0797 12.2599 + 76741.5391 260.8280 11.7445 + 76791.0078 249.9887 11.5261 + 76840.5000 270.4525 11.9805 + 76890.0312 277.9094 12.1371 + 76939.5938 271.3320 12.0079 + 76989.1797 283.5830 12.3415 + 77038.8047 293.0448 12.5060 + 77088.4609 271.9925 12.0464 + 77138.1484 257.4707 11.7461 + 77187.8672 261.5924 11.8395 + 77237.6172 243.2965 11.4616 + 77287.4062 251.8037 11.6947 + 77337.2188 264.3626 11.9424 + 77387.0703 272.7895 12.1592 + 77436.9453 255.0467 11.7746 + 77486.8594 292.5938 12.6393 + 77536.8047 280.3313 12.3875 + 77586.7812 269.2845 12.1638 + 77636.7891 258.0048 11.9110 + 77686.8359 264.7030 12.0764 + 77736.9062 280.3596 12.4345 + 77787.0156 276.2832 12.3486 + 77837.1484 271.6382 12.2764 + 77887.3203 271.8076 12.2678 + 77937.5234 263.5536 12.0856 + 77987.7578 258.3612 12.0010 + 78038.0234 260.4888 12.0961 + 78088.3281 266.5944 12.2348 + 78138.6562 274.0434 12.4291 + 78189.0234 263.0309 12.1991 + 78239.4219 287.6495 12.7288 + 78289.8516 259.8593 12.1280 + 78340.3125 258.2579 12.1408 + 78390.8047 266.1880 12.3007 + 78441.3359 264.8357 12.2728 + 78491.8906 265.8442 12.3162 + 78542.4844 270.2254 12.4302 + 78593.1094 240.8069 11.7646 + 78643.7656 256.7626 12.1596 + 78694.4531 263.6814 12.3280 + 78745.1797 259.9180 12.2494 + 78795.9375 279.0522 12.7208 + 78846.7266 263.4193 12.3690 + 78897.5469 260.8398 12.3058 + 78948.3984 241.6341 11.8355 + 78999.2812 248.9497 12.0399 + 79050.2031 257.6482 12.2537 + 79101.1562 273.1801 12.6685 + 79152.1406 273.2151 12.6706 + 79203.1562 263.1924 12.4616 + 79254.2109 262.7177 12.4778 + 79305.2969 249.6886 12.1665 + 79356.4141 273.0451 12.7189 + 79407.5625 257.2526 12.3234 + 79458.7422 249.1199 12.1858 + 79509.9609 262.8233 12.5354 + 79561.2031 262.3513 12.5426 + 79612.4844 260.7128 12.5023 + 79663.8047 250.2644 12.2598 + 79715.1484 249.8761 12.2385 + 79766.5312 256.4603 12.4202 + 79817.9453 255.5394 12.4267 + 79869.3906 257.8180 12.5073 + 79920.8750 263.4221 12.6298 + 79972.3828 270.1823 12.8196 + 80023.9297 268.1319 12.8114 + 80075.5156 251.8644 12.3992 + 80127.1250 249.0287 12.3473 + 80178.7734 275.4720 12.9854 + 80230.4531 269.3607 12.8603 + 80282.1641 263.5235 12.7804 + 80333.9062 266.9939 12.8793 + 80385.6875 253.4480 12.5332 + 80437.5000 271.9732 12.9798 + 80489.3516 266.9640 12.9051 + 80541.2266 256.4366 12.6760 + 80593.1406 263.3997 12.8308 + 80645.0859 242.7766 12.3395 + 80697.0703 241.9437 12.3334 + 80749.0859 245.2727 12.4390 + 80801.1328 278.4493 13.2614 + 80853.2109 279.7182 13.3021 + 80905.3281 270.2363 13.1318 + 80957.4766 275.9940 13.2691 + 81009.6562 275.6718 13.2326 + 81061.8672 279.5283 13.3473 + 81114.1172 280.1295 13.3937 + 81166.3984 263.5688 13.0321 + 81218.7188 248.5972 12.6192 + 81271.0703 248.7164 12.6563 + 81323.4531 263.6221 13.0692 + 81375.8672 271.1533 13.2590 + 81428.3203 284.9174 13.5952 + 81480.8047 266.7918 13.1797 + 81533.3203 257.5417 12.9969 + 81585.8750 292.7429 13.8675 + 81638.4609 261.1057 13.0860 + 81691.0859 259.5127 13.0836 + 81743.7344 270.1755 13.3322 + 81796.4219 281.4186 13.6566 + 81849.1484 274.8133 13.5385 + 81901.9062 262.2370 13.2151 + 81954.6953 248.5297 12.8844 + 82007.5156 245.0089 12.7420 + 82060.3750 256.8867 13.0598 + 82113.2656 253.6696 13.0338 + 82166.1953 266.2845 13.3718 + 82219.1562 268.6189 13.4392 + 82272.1484 271.0739 13.5261 + 82325.1797 257.5231 13.1845 + 82378.2422 279.5231 13.7332 + 82431.3438 267.6809 13.4749 + 82484.4688 266.0935 13.4871 + 82537.6406 263.7010 13.4101 + 82590.8359 244.7250 12.9471 + 82644.0703 270.0798 13.6266 + 82697.3438 278.3840 13.8335 + 82750.6406 263.5820 13.4685 + 82803.9844 261.9987 13.4634 + 82857.3516 274.6695 13.8108 + 82910.7578 258.5374 13.3819 + 82964.1953 282.6954 14.0271 + 83017.6719 257.3064 13.3692 + 83071.1797 254.5971 13.3151 + 83124.7266 275.7488 13.8735 + 83178.3047 267.9103 13.7191 + 83231.9219 254.6446 13.3911 + 83285.5625 249.3577 13.2640 + 83339.2500 252.5304 13.3446 + 83392.9688 255.0463 13.4480 + 83446.7188 260.3898 13.5807 + 83500.5000 254.6625 13.4716 + 83554.3203 270.8833 13.8952 + 83608.1797 255.3065 13.5034 + 83662.0703 279.3717 14.1643 + 83715.9922 291.2354 14.4898 + 83769.9531 281.0921 14.2657 + 83823.9453 269.1862 13.9383 + 83877.9766 272.6443 14.0391 + 83932.0391 263.9827 13.8233 + 83986.1406 282.0929 14.3718 + 84040.2734 292.1313 14.6017 + 84094.4375 280.0166 14.3139 + 84148.6406 276.5519 14.2223 + 84202.8828 267.8740 14.0382 + 84257.1562 273.8746 14.1961 + 84311.4609 263.2078 13.9348 + 84365.8047 269.1463 14.0965 + 84420.1875 282.4574 14.4572 + 84474.6016 276.8737 14.3274 + 84529.0469 279.2681 14.3841 + 84583.5312 282.5381 14.5300 + 84638.0469 266.0088 14.0837 + 84692.6016 264.5602 14.0613 + 84747.1953 266.1990 14.1250 + 84801.8203 280.9240 14.5037 + 84856.4766 277.6644 14.4360 + 84911.1719 272.2487 14.3646 + 84965.8984 269.1483 14.2980 + 85020.6641 264.9105 14.2120 + 85075.4688 267.7790 14.3306 + 85130.3047 251.3803 13.8741 + 85185.1719 283.3022 14.7215 + 85240.0781 272.2262 14.4633 + 85295.0234 275.3670 14.6020 + 85350.0000 276.6143 14.6042 + 85405.0156 278.2899 14.6546 + 85460.0625 279.6508 14.7320 + 85515.1406 294.3023 15.1261 + 85570.2656 270.6489 14.5377 + 85625.4219 269.9285 14.5405 + 85680.6094 267.3769 14.4142 + 85735.8359 266.8720 14.3971 + 85791.0938 274.5434 14.6753 + 85846.3906 259.2837 14.3333 + 85901.7266 260.1129 14.3315 + 85957.0938 256.2314 14.2396 + 86012.5000 262.4141 14.4254 + 86067.9375 287.8066 15.0963 + 86123.4141 266.7073 14.5993 + 86178.9219 263.5322 14.4767 + 86234.4688 278.2680 14.9169 + 86290.0547 268.6111 14.6821 + 86345.6719 262.7956 14.5219 + 86401.3281 276.1567 14.9120 + 86457.0156 270.5974 14.7818 + 86512.7422 282.9117 15.1920 + 86568.5078 328.4400 16.3122 + 86624.3047 435.7206 18.7559 + 86680.1406 714.3862 24.0732 + 86736.0078 1418.0741 33.9473 + 86791.9141 2845.1177 48.1739 + 86847.8594 5420.6113 66.8056 + 86903.8359 7182.8638 77.0742 + 86959.8516 6598.7686 73.9197 + 87015.8984 5073.1099 64.8050 + 87071.9844 3661.6526 55.0794 + 87128.1094 2608.9778 46.4905 + 87184.2656 1872.7019 39.4426 + 87240.4609 1383.3173 33.9559 + 87296.6953 1045.7588 29.5422 + 87352.9609 851.9377 26.6703 + 87409.2656 701.3489 24.2534 + 87465.6016 599.5305 22.4657 + 87521.9844 520.2104 20.9639 + 87578.3906 445.3131 19.4468 + 87634.8438 419.4400 18.9036 + 87691.3281 390.2977 18.2381 + 87747.8516 354.1345 17.3822 + 87804.4062 326.3370 16.7292 + 87861.0000 306.3571 16.2354 + 87917.6328 295.4618 15.9185 + 87974.3047 318.8792 16.6034 + 88031.0078 305.3911 16.2692 + 88087.7500 288.3366 15.8152 + 88144.5234 288.0264 15.8495 + 88201.3359 277.0075 15.5491 + 88258.1875 272.4965 15.4444 + 88315.0781 262.7645 15.1309 + 88372.0000 280.9338 15.6567 + 88428.9609 288.0132 15.9304 + 88485.9609 286.4955 15.8481 + 88542.9922 300.9463 16.3145 + 88600.0625 279.9435 15.7217 + 88657.1719 295.2885 16.1891 + 88714.3125 277.2764 15.6751 + 88771.5000 261.1017 15.2822 + 88828.7109 250.2568 14.9976 + 88885.9688 273.8921 15.7019 + 88943.2578 245.5299 14.8571 + 89000.5938 244.7642 14.8010 + 89057.9531 276.1168 15.7894 + 89115.3594 255.4356 15.2474 + 89172.7969 258.0033 15.3404 + 89230.2734 279.7187 15.9574 + 89287.7891 246.8270 15.0107 + 89345.3438 272.5329 15.7712 + 89402.9297 263.6580 15.5741 + 89460.5547 260.2109 15.4811 + 89518.2188 267.8811 15.7183 + 89575.9141 288.1108 16.2934 + 89633.6484 264.1495 15.6157 + 89691.4219 241.1506 14.9581 + 89749.2344 264.1750 15.6773 + 89807.0859 264.6324 15.7291 + 89864.9688 276.3806 16.1251 + 89922.8906 260.7544 15.6463 + 89980.8516 268.7905 15.8657 + 90038.8516 267.4530 15.9072 + 90096.8828 269.4508 15.9540 + 90154.9609 261.4595 15.7387 + 90213.0703 258.4502 15.6877 + 90271.2188 271.9455 16.0712 + 90329.3984 265.7211 15.9084 + 90387.6250 270.3719 16.1152 + 90445.8828 267.2299 16.0603 + 90504.1797 285.7676 16.6190 + 90562.5156 268.1979 16.0974 + 90620.8828 284.2444 16.5843 + 90679.2969 264.9463 16.0372 + 90737.7422 276.3158 16.3972 + 90796.2266 278.3987 16.4488 + 90854.7500 258.0247 15.9137 + 90913.3125 286.1985 16.7902 + 90971.9141 278.7650 16.5022 + 91030.5469 280.6605 16.5722 + 91089.2266 256.7780 15.8942 + 91147.9375 268.2937 16.3312 + 91206.6875 280.7703 16.7159 + 91265.4688 248.9949 15.7077 + 91324.2969 246.2947 15.6181 + 91383.1641 249.8121 15.8134 + 91442.0625 241.9221 15.5277 + 91501.0000 256.4408 16.0183 + 91559.9766 256.6162 16.0330 + 91618.9922 256.4857 16.0612 + 91678.0469 261.1556 16.2092 + 91737.1406 270.5374 16.4903 + 91796.2734 278.6199 16.8090 + 91855.4375 272.4470 16.6664 + 91914.6406 269.5604 16.6174 + 91973.8906 267.8909 16.5154 + 92033.1719 260.8351 16.3203 + 92092.4922 272.2898 16.6788 + 92151.8516 259.2721 16.2245 + 92211.2422 255.3320 16.1906 + 92270.6797 271.2130 16.7831 + 92330.1562 260.9244 16.4366 + 92389.6641 264.3062 16.5130 + 92449.2188 291.9935 17.4047 + 92508.8047 274.4711 16.8975 + 92568.4297 270.0018 16.8237 + 92628.0938 267.7968 16.7661 + 92687.8047 270.9388 16.8547 + 92747.5469 283.9427 17.2946 + 92807.3203 260.4738 16.5820 + 92867.1406 245.9207 16.1106 + 92927.0000 261.1551 16.5856 + 92986.8984 251.7823 16.3425 + 93046.8359 251.1087 16.3678 + 93106.8047 278.3051 17.2169 + 93166.8203 273.2188 17.0293 + 93226.8672 247.0923 16.2077 + 93286.9609 251.2118 16.3893 + 93347.0859 243.3616 16.1987 + 93407.2578 248.4655 16.4016 + 93467.4609 285.4457 17.6019 + 93527.7109 274.7018 17.3327 + 93587.9922 247.0466 16.3509 + 93648.3125 257.7623 16.7496 + 93708.6719 265.8626 17.0423 + 93769.0781 275.9577 17.4024 + 93829.5156 252.6862 16.7041 + 93889.9922 238.5590 16.2065 + 93950.5078 279.3557 17.5418 + 94011.0625 245.8015 16.4967 + 94071.6641 288.8815 17.9829 + 94132.2969 291.3573 18.0057 + 94192.9688 275.9107 17.4455 + 94253.6797 259.1791 17.0190 + 94314.4297 249.0364 16.6742 + 94375.2266 271.6638 17.3829 + 94436.0547 271.9082 17.4662 + 94496.9219 258.3617 17.0558 + 94557.8281 261.7594 17.2361 + 94618.7812 239.5202 16.5031 + 94679.7656 263.1251 17.2865 + 94740.7891 258.4572 17.1393 + 94801.8594 267.7771 17.4590 + 94862.9609 266.8516 17.4359 + 94924.1094 293.7442 18.3541 + 94985.2891 296.7957 18.5255 + 95046.5156 281.3228 18.0220 + 95107.7813 263.3769 17.5014 + 95169.0781 258.3719 17.3209 + 95230.4219 274.6964 17.8565 + 95291.8047 285.6022 18.1969 + 95353.2266 271.1156 17.7155 + 95414.6797 264.7986 17.6213 + 95476.1797 279.3500 18.1447 + 95537.7266 265.8787 17.6825 + 95599.3047 255.6431 17.3634 + 95660.9219 274.0182 17.9837 + 95722.5781 266.5771 17.7391 + 95784.2812 245.8515 17.0786 + 95846.0156 278.0469 18.2313 + 95907.7969 267.7524 17.9095 + 95969.6094 255.7690 17.4945 + 96031.4688 273.6458 18.1141 + 96093.3672 265.9035 17.8206 + 96155.3047 269.4383 18.0127 + 96217.2812 268.7639 18.0327 + 96279.2969 265.9274 17.8930 + 96341.3594 273.4120 18.2093 + 96403.4531 287.2242 18.7535 + 96465.5938 246.7943 17.4230 + 96527.7656 241.1776 17.1570 + 96589.9844 257.1521 17.7795 + 96652.2422 258.7235 17.9176 + 96714.5391 266.8317 18.2035 + 96776.8828 280.8885 18.6985 + 96839.2578 267.6420 18.2332 + 96901.6719 280.4637 18.7072 + 96964.1328 261.0558 18.0589 + 97026.6328 261.1298 18.0752 + 97089.1719 275.8836 18.5782 + 97151.7500 281.7576 18.7379 + 97214.3672 268.4265 18.3075 + 97277.0313 233.9308 17.1777 + 97339.7344 264.6630 18.3381 + 97402.4688 270.4955 18.5801 + 97465.2500 282.2752 18.9629 + 97528.0781 260.4120 18.2225 + 97590.9375 258.8930 18.2190 + 97653.8359 274.8491 18.9883 + 97716.7812 287.5186 19.5616 + 97779.7656 269.8541 19.0872 + 97842.7891 256.5622 18.8037 + 97905.8594 265.6983 19.3508 + 97968.9609 265.1781 19.4895 + 98032.1094 276.9889 20.1346 + 98095.2969 257.4734 19.6470 + 98158.5234 268.2968 20.2032 + 98221.7891 273.1878 20.7136 + 98285.1016 253.9707 20.1526 + 98348.4531 249.7314 20.1590 + 98411.8438 273.4920 21.2802 + 98475.2734 277.8152 21.6915 + 98538.7500 264.7870 21.4379 + 98602.2578 266.6172 21.7063 + 98665.8125 253.9033 21.4150 + 98729.4062 250.7668 21.4684 + 98793.0469 267.3593 22.3574 + 98856.7266 285.4277 23.3759 + 98920.4453 253.0699 22.3776 + 98984.2031 283.9312 23.8306 + 99048.0000 280.0121 23.8403 + 99111.8438 276.6949 23.8697 + 99175.7266 259.8979 23.4103 + 99239.6484 259.9278 23.6931 + 99303.6172 262.0354 24.0833 + 99367.6250 222.6518 22.4209 + 99431.6719 263.2142 24.5074 + 99495.7578 273.6101 25.4260 + 99559.8906 253.7388 24.6942 + 99624.0625 245.6422 24.4406 + 99688.2734 270.6448 25.9247 + 99752.5312 275.6089 26.5067 + 99816.8281 290.3733 27.4921 + 99881.1641 287.8034 27.7908 + 99945.5469 297.9274 28.5467 + 100009.9609 291.4879 28.4384 diff --git a/tests/functional_tests/fitting/test_single-fit.py b/tests/functional_tests/fitting/test_single-fit.py index ce60f306..027b6c00 100644 --- a/tests/functional_tests/fitting/test_single-fit.py +++ b/tests/functional_tests/fitting/test_single-fit.py @@ -202,3 +202,111 @@ def test_single_fit_neutron_pd_tof_si() -> None: # Compare fit quality assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 3.19, decimal=1) + + +def test_single_fit_neutron_pd_tof_ncaf() -> None: + # Create and configure sample model + model = SampleModel("ncaf") + model.space_group.name = "I 21 3" + model.space_group.setting = 1 + model.cell.length_a = 10.250256 + model.cell.length_b = 10.250256 + model.cell.length_c = 10.250256 + model.atom_sites.add("Ca", "Ca", 0.4661, 0.0, 0.25, b_iso=0.9) + model.atom_sites.add("Al", "Al", 0.25171, 0.25171, 0.25171, b_iso=0.66) + model.atom_sites.add("Na", "Na", 0.08481, 0.08481, 0.08481, b_iso=1.9) + model.atom_sites.add("F1", "F", 0.1375, 0.3053, 0.1195, b_iso=0.9) + model.atom_sites.add("F2", "F", 0.3626, 0.3634, 0.1867, b_iso=1.28) + model.atom_sites.add("F3", "F", 0.4612, 0.4612, 0.4612, b_iso=0.79) + model.show_as_cif() + + # Create and configure experiment + expt = Experiment("npd", beam_mode="time-of-flight", data_path="examples/data/wish.xye") + expt.instrument.setup_twotheta_bank = 152.827 + expt.instrument.calib_d_to_tof_offset = 0.0 + expt.instrument.calib_d_to_tof_linear = 20770 + expt.instrument.calib_d_to_tof_quad = -1.08308 + expt.peak_profile_type = "pseudo-voigt * ikeda-carpenter" + expt.peak.broad_gauss_sigma_0 = 0.0 + expt.peak.broad_gauss_sigma_1 = 0.0 + expt.peak.broad_gauss_sigma_2 = 5.0 + expt.peak.broad_mix_beta_0 = 0.01 + expt.peak.broad_mix_beta_1 = 0.01 + expt.peak.asym_alpha_0 = 0.0 + expt.peak.asym_alpha_1 = 0.1 + expt.linked_phases.add("ncaf", scale=0.5) + for x, y in [ + (9162, 465), + (11136, 593), + (13313, 497), + (14906, 546), + (16454, 533), + (17352, 496), + (18743, 428), + (20179, 452), + (21368, 397), + (22176, 468), + (22827, 477), + (24644, 380), + (26439, 381), + (28257, 378), + (31196, 343), + (34034, 328), + (37265, 310), + (41214, 323), + (44827, 283), + (49830, 273), + (52905, 257), + (58204, 260), + (62916, 261), + (70186, 262), + (74204, 262), + (82103, 268), + (91958, 268), + (102712, 262) + ]: + expt.background.add(x, y) + expt.show_as_cif() + + # Create project and add sample model and experiments + project = Project() + project.sample_models.add(model) + project.experiments.add(expt) + + # Set calculator, minimizer and refinement strategy + project.analysis.current_calculator = "cryspy" + project.analysis.current_minimizer = "lmfit (leastsq)" + + # Compare measured and calculated patterns + project.analysis.show_meas_vs_calc_chart('npd', 37000, 40000) + + # ------------ 1st fitting ------------ + + # Define free parameters + #model.cell.length_a.free = True + expt.linked_phases["ncaf"].scale.free = True + expt.instrument.calib_d_to_tof_offset.free = True + project.analysis.show_free_params() + + # Start fitting + project.analysis.fit() + project.analysis.show_meas_vs_calc_chart('npd', 37000, 40000) + + # Compare fit quality + assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 78.40, decimal=1) + + # ------------ 2nd fitting ------------ + + # Define more free parameters + expt.peak.broad_gauss_sigma_2.free = True + expt.peak.broad_mix_beta_0.free = True + expt.peak.broad_mix_beta_1.free = True + expt.peak.asym_alpha_1.free = True + project.analysis.show_free_params() + + # Start fitting + project.analysis.fit() + project.analysis.show_meas_vs_calc_chart('npd', 37000, 40000, show_residual=True) + + # Compare fit quality + assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 15.59, decimal=1) From 1822a5ceba3d9ad4d66915e43b894414e01ccd06 Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Thu, 3 Apr 2025 11:46:25 +0200 Subject: [PATCH 09/17] First attempt to speed up cryspy calculations --- .../analysis/calculators/calculator_base.py | 14 +- .../calculators/calculator_crysfml.py | 5 +- .../analysis/calculators/calculator_cryspy.py | 149 ++++++++++++++---- .../analysis/calculators/calculator_pdffit.py | 9 +- src/easydiffraction/analysis/minimization.py | 4 +- src/easydiffraction/core/component.py | 3 + 6 files changed, 147 insertions(+), 37 deletions(-) diff --git a/src/easydiffraction/analysis/calculators/calculator_base.py b/src/easydiffraction/analysis/calculators/calculator_base.py index 2791a3ae..73c9215d 100644 --- a/src/easydiffraction/analysis/calculators/calculator_base.py +++ b/src/easydiffraction/analysis/calculators/calculator_base.py @@ -22,7 +22,10 @@ def calculate_structure_factors(self, sample_model, experiment): # Single sample model, single experiment pass - def calculate_pattern(self, sample_models, experiment): + def calculate_pattern(self, + sample_models, + experiment, + called_by_minimizer=False): # Multiple sample models, single experiment x_data = experiment.datastore.pattern.x @@ -37,7 +40,9 @@ def calculate_pattern(self, sample_models, experiment): sample_model_scale = linked_phase.scale.value sample_model = sample_models[sample_model_id] - sample_model_y_calc = self._calculate_single_model_pattern(sample_model, experiment) + sample_model_y_calc = self._calculate_single_model_pattern(sample_model, + experiment, + called_by_minimizer=called_by_minimizer) sample_model_y_calc_scaled = sample_model_scale * sample_model_y_calc y_calc_scaled += sample_model_y_calc_scaled @@ -53,7 +58,10 @@ def calculate_pattern(self, sample_models, experiment): return y_calc_total @abstractmethod - def _calculate_single_model_pattern(self, sample_model, experiment): + def _calculate_single_model_pattern(self, + sample_model, + experiment, + called_by_minimizer): pass def _get_valid_linked_phases(self, sample_models, experiment): diff --git a/src/easydiffraction/analysis/calculators/calculator_crysfml.py b/src/easydiffraction/analysis/calculators/calculator_crysfml.py index 6c7c97cd..b9a00881 100644 --- a/src/easydiffraction/analysis/calculators/calculator_crysfml.py +++ b/src/easydiffraction/analysis/calculators/calculator_crysfml.py @@ -23,7 +23,10 @@ def calculate_structure_factors(self, sample_models, experiments): # Call Crysfml to calculate structure factors raise NotImplementedError("HKL calculation is not implemented for CryspyCalculator.") - def _calculate_single_model_pattern(self, sample_model, experiment): + def _calculate_single_model_pattern(self, + sample_model, + experiment, + called_by_minimizer=False): """ Calculates the diffraction pattern using Crysfml for the given sample model and experiment. """ diff --git a/src/easydiffraction/analysis/calculators/calculator_cryspy.py b/src/easydiffraction/analysis/calculators/calculator_cryspy.py index f14da374..3d503d39 100644 --- a/src/easydiffraction/analysis/calculators/calculator_cryspy.py +++ b/src/easydiffraction/analysis/calculators/calculator_cryspy.py @@ -1,3 +1,5 @@ +import copy +import numpy as np from .calculator_base import CalculatorBase # Assuming you have a base interface from easydiffraction.utils.formatting import warning @@ -22,30 +24,37 @@ class CryspyCalculator(CalculatorBase): def name(self): return "cryspy" + def __init__(self): + super().__init__() + self._cryspy_dicts = {} + def calculate_structure_factors(self, sample_models, experiments): raise NotImplementedError("HKL calculation is not implemented for CryspyCalculator.") - def _calculate_single_model_pattern(self, sample_model, experiment): - cryspy_obj = str_to_globaln('') - - # Add single sample model to cryspy_obj - cryspy_sample_model_cif = self._convert_sample_model_to_cif(sample_model) - cryspy_sample_model_obj = str_to_globaln(cryspy_sample_model_cif) - cryspy_obj.add_items(cryspy_sample_model_obj.items) - - # Add single experiment to cryspy_obj - cryspy_experiment_cif = self._convert_experiment_to_cif(experiment, - linked_phase=sample_model) - cryspy_experiment_obj = str_to_globaln(cryspy_experiment_cif) - cryspy_obj.add_items(cryspy_experiment_obj.items) - - # Get cryspy_dict from cryspy_obj - cryspy_dict = cryspy_obj.get_dictionary() - + def _calculate_single_model_pattern(self, + sample_model, + experiment, + called_by_minimizer=False): # TODO: We need to avoid re-creating the cryspy object every time. # Instead, we should update the cryspy_dict with the new sample model # and experiment. Expected to speed up the calculation 10 times! + #_cryspy_expt_id = experiment.id + #_is_cryspy_dict = bool(self._cryspy_dict) + #_called_by_minimizer = called_by_minimizer + + if called_by_minimizer: + if self._cryspy_dicts and experiment.id in self._cryspy_dicts: + cryspy_dict = self._recreate_cryspy_dict(sample_model, experiment) + else: + cryspy_obj = self._recreate_cryspy_obj(sample_model, experiment) + cryspy_dict = cryspy_obj.get_dictionary() + else: + cryspy_obj = self._recreate_cryspy_obj(sample_model, experiment) + cryspy_dict = cryspy_obj.get_dictionary() + + self._cryspy_dicts[experiment.id] = copy.deepcopy(cryspy_dict) + # Calculate pattern using cryspy cryspy_in_out_dict = {} calc_result = rhochi_calc_chi_sq_by_dictionary( @@ -75,18 +84,94 @@ def _calculate_single_model_pattern(self, sample_model, experiment): return y_calc_total - def _convert_sample_model_to_cif(self, sample_model): + def _recreate_cryspy_dict(self, sample_model, experiment): + cryspy_dict = copy.deepcopy(self._cryspy_dicts[experiment.id]) + + # ---------- Update sample model parameters ---------- + + cryspy_model_id = f'crystal_{sample_model.model_id}' + cryspy_model_dict = cryspy_dict[cryspy_model_id] + + # Cell + cryspy_cell = cryspy_model_dict['unit_cell_parameters'] + cryspy_cell[0] = sample_model.cell.length_a.value + cryspy_cell[1] = sample_model.cell.length_b.value + cryspy_cell[2] = sample_model.cell.length_c.value + cryspy_cell[3] = np.deg2rad(sample_model.cell.angle_alpha.value) + cryspy_cell[4] = np.deg2rad(sample_model.cell.angle_beta.value) + cryspy_cell[5] = np.deg2rad(sample_model.cell.angle_gamma.value) + + # Atomic coordinates + cryspy_xyz = cryspy_model_dict['atom_fract_xyz'] + for idx, atom_site in enumerate(sample_model.atom_sites): + cryspy_xyz[0][idx] = atom_site.fract_x.value + cryspy_xyz[1][idx] = atom_site.fract_y.value + cryspy_xyz[2][idx] = atom_site.fract_z.value + + # Atomic occupancies + cryspy_occ =cryspy_model_dict['atom_occupancy'] + for idx, atom_site in enumerate(sample_model.atom_sites): + cryspy_occ[idx] = atom_site.occupancy.value + + # Atomic ADPs - Biso + cryspy_biso = cryspy_model_dict['atom_b_iso'] + for idx, atom_site in enumerate(sample_model.atom_sites): + cryspy_biso[idx] = atom_site.b_iso.value + + # ---------- Update experiment parameters ---------- + + cryspy_expt_id = f'pd_{experiment.id}' # TODO: use expt_id as in the SampleModel? Or change there for id instead of model_id? + cryspy_expt_dict = cryspy_dict[cryspy_expt_id] + + # Instrument + cryspy_expt_dict['offset_ttheta'][0] = np.deg2rad(experiment.instrument.calib_twotheta_offset.value) + cryspy_expt_dict['wavelength'][0] = experiment.instrument.setup_wavelength.value + + # Peak + cryspy_resolution = cryspy_expt_dict['resolution_parameters'] + cryspy_resolution[0] = experiment.peak.broad_gauss_u.value + cryspy_resolution[1] = experiment.peak.broad_gauss_v.value + cryspy_resolution[2] = experiment.peak.broad_gauss_w.value + cryspy_resolution[3] = experiment.peak.broad_lorentz_x.value + cryspy_resolution[4] = experiment.peak.broad_lorentz_y.value + + # Linked phase + ###cryspy_dict[cryspy_expt_id]['phase_scale'][0] = experiment.linked_phases[sample_model.model_id].scale.value + + return cryspy_dict + + + def _recreate_cryspy_obj(self, sample_model, experiment): + cryspy_obj = str_to_globaln('') + + # Add single sample model to cryspy_obj + cryspy_sample_model_cif = self._convert_sample_model_to_cryspy_cif(sample_model) + cryspy_sample_model_obj = str_to_globaln(cryspy_sample_model_cif) + cryspy_obj.add_items(cryspy_sample_model_obj.items) + + # Add single experiment to cryspy_obj + cryspy_experiment_cif = self._convert_experiment_to_cryspy_cif(experiment, + linked_phase=sample_model) + cryspy_experiment_obj = str_to_globaln(cryspy_experiment_cif) + cryspy_obj.add_items(cryspy_experiment_obj.items) + + return cryspy_obj + + def _convert_sample_model_to_cryspy_cif(self, sample_model): return sample_model.as_cif() - def _convert_experiment_to_cif(self, experiment, linked_phase): + def _convert_experiment_to_cryspy_cif(self, experiment, linked_phase): expt_type = getattr(experiment, "type", None) instrument = getattr(experiment, "instrument", None) peak = getattr(experiment, "peak", None) cif_lines = [f"data_{experiment.id}"] + # STANDARD CATEGORIES + # Experiment type category if expt_type is not None: + cif_lines.append("") radiation_probe = expt_type.radiation_probe.value radiation_probe = radiation_probe.replace("neutron", "neutrons") radiation_probe = radiation_probe.replace("xray", "X-rays") @@ -104,6 +189,7 @@ def _convert_experiment_to_cif(self, experiment, linked_phase): "calib_d_to_tof_linear": "_tof_parameters_Dtt1", "calib_d_to_tof_quad": "_tof_parameters_dtt2", } + cif_lines.append("") for local_attr_name, engine_key_name in instrument_mapping.items(): if hasattr(instrument, local_attr_name): attr_value = getattr(instrument, local_attr_name).value @@ -127,6 +213,7 @@ def _convert_experiment_to_cif(self, experiment, linked_phase): "asym_alpha_0": "_tof_profile_alpha0", "asym_alpha_1": "_tof_profile_alpha1", } + cif_lines.append("") if expt_type.beam_mode.value == "time-of-flight": cif_lines.append(f"_tof_profile_peak_shape Gauss") for local_attr_name, engine_key_name in peak_mapping.items(): @@ -134,19 +221,12 @@ def _convert_experiment_to_cif(self, experiment, linked_phase): attr_value = getattr(peak, local_attr_name).value cif_lines.append(f"{engine_key_name} {attr_value}") - # Linked phases category - # Force single linked phase to be used, as we handle multiple phases - # with their scales independently of the calculation engines - cif_lines.append("loop_") - cif_lines.append("_phase_label") - cif_lines.append("_phase_scale") - cif_lines.append(f"{linked_phase.model_id} 1.0") - # Experiment range category # Extract measurement range dynamically x_data = experiment.datastore.pattern.x two_theta_min = float(x_data.min()) two_theta_max = float(x_data.max()) + cif_lines.append("") if expt_type.beam_mode.value == "constant wavelength": cif_lines.append(f"_range_2theta_min {two_theta_min}") cif_lines.append(f"_range_2theta_max {two_theta_max}") @@ -154,16 +234,29 @@ def _convert_experiment_to_cif(self, experiment, linked_phase): cif_lines.append(f"_range_time_min {two_theta_min}") cif_lines.append(f"_range_time_max {two_theta_max}") + # ITERABLE CATEGORIES (LOOPS) + + # Linked phases category + # Force single linked phase to be used, as we handle multiple phases + # with their scales independently of the calculation engines + cif_lines.append("") + cif_lines.append("loop_") + cif_lines.append("_phase_label") + cif_lines.append("_phase_scale") + cif_lines.append(f"{linked_phase.model_id} 1.0") + # Background category # Force background to be zero, as we handle it independently of the # calculation engines if expt_type.beam_mode.value == "constant wavelength": + cif_lines.append("") cif_lines.append("loop_") cif_lines.append("_pd_background_2theta") cif_lines.append("_pd_background_intensity") cif_lines.append(f"{two_theta_min} 0.0") cif_lines.append(f"{two_theta_max} 0.0") elif expt_type.beam_mode.value == "time-of-flight": + cif_lines.append("") cif_lines.append("loop_") cif_lines.append("_tof_backgroundpoint_time") cif_lines.append("_tof_backgroundpoint_intensity") @@ -172,11 +265,13 @@ def _convert_experiment_to_cif(self, experiment, linked_phase): # Measured data category if expt_type.beam_mode.value == "constant wavelength": + cif_lines.append("") cif_lines.append("loop_") cif_lines.append("_pd_meas_2theta") cif_lines.append("_pd_meas_intensity") cif_lines.append("_pd_meas_intensity_sigma") elif expt_type.beam_mode.value == "time-of-flight": + cif_lines.append("") cif_lines.append("loop_") cif_lines.append("_tof_meas_time") cif_lines.append("_tof_meas_intensity") diff --git a/src/easydiffraction/analysis/calculators/calculator_pdffit.py b/src/easydiffraction/analysis/calculators/calculator_pdffit.py index 524a9ea4..c11b809a 100644 --- a/src/easydiffraction/analysis/calculators/calculator_pdffit.py +++ b/src/easydiffraction/analysis/calculators/calculator_pdffit.py @@ -23,10 +23,9 @@ def calculate_structure_factors(self, sample_models, experiments): print("[PdfFit] Calculating HKLs (not applicable)...") return [] - def calculate_pattern(self, sample_models, experiments): - print("[PdfFit] Not implemented yet.") - return [] - - def _calculate_single_model_pattern(self, sample_model, experiment): + def _calculate_single_model_pattern(self, + sample_model, + experiment, + called_by_minimizer=False): print("[PdfFit] Not implemented yet.") return [] diff --git a/src/easydiffraction/analysis/minimization.py b/src/easydiffraction/analysis/minimization.py index 495e103f..0ea1aca6 100644 --- a/src/easydiffraction/analysis/minimization.py +++ b/src/easydiffraction/analysis/minimization.py @@ -60,7 +60,9 @@ def _residual_function(self, engine_params, parameters, sample_models, experimen residuals = [] for expt_id, experiment in experiments._items.items(): - y_calc = calculator.calculate_pattern(sample_models, experiment) + y_calc = calculator.calculate_pattern(sample_models, + experiment, + called_by_minimizer=True) y_meas = experiment.datastore.pattern.meas y_meas_su = experiment.datastore.pattern.meas_su diff = (y_meas - y_calc) / y_meas_su diff --git a/src/easydiffraction/core/component.py b/src/easydiffraction/core/component.py index deb4001d..6f08e398 100644 --- a/src/easydiffraction/core/component.py +++ b/src/easydiffraction/core/component.py @@ -88,6 +88,9 @@ def as_cif(self): key = f"{self.cif_category_name}.{attr_obj.cif_name}" value = attr_obj.value + if value is None: + continue + if isinstance(value, str) and " " in value: value = f'"{value}"' From 4e3e9d170341fc4b5a42cf1a4a134f35e0ba3744 Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Fri, 4 Apr 2025 14:34:36 +0200 Subject: [PATCH 10/17] Updates Cryspy calculator for TOF experiments --- .../analysis/calculators/calculator_cryspy.py | 61 +++++++++++++------ 1 file changed, 43 insertions(+), 18 deletions(-) diff --git a/src/easydiffraction/analysis/calculators/calculator_cryspy.py b/src/easydiffraction/analysis/calculators/calculator_cryspy.py index 3d503d39..5ac3fc89 100644 --- a/src/easydiffraction/analysis/calculators/calculator_cryspy.py +++ b/src/easydiffraction/analysis/calculators/calculator_cryspy.py @@ -92,6 +92,9 @@ def _recreate_cryspy_dict(self, sample_model, experiment): cryspy_model_id = f'crystal_{sample_model.model_id}' cryspy_model_dict = cryspy_dict[cryspy_model_id] + # Apply symmetry constraints + sample_model.apply_symmetry_constraints() + # Cell cryspy_cell = cryspy_model_dict['unit_cell_parameters'] cryspy_cell[0] = sample_model.cell.length_a.value @@ -113,30 +116,52 @@ def _recreate_cryspy_dict(self, sample_model, experiment): for idx, atom_site in enumerate(sample_model.atom_sites): cryspy_occ[idx] = atom_site.occupancy.value - # Atomic ADPs - Biso + # Atomic ADPs - Biso only for now cryspy_biso = cryspy_model_dict['atom_b_iso'] for idx, atom_site in enumerate(sample_model.atom_sites): cryspy_biso[idx] = atom_site.b_iso.value # ---------- Update experiment parameters ---------- - cryspy_expt_id = f'pd_{experiment.id}' # TODO: use expt_id as in the SampleModel? Or change there for id instead of model_id? - cryspy_expt_dict = cryspy_dict[cryspy_expt_id] - - # Instrument - cryspy_expt_dict['offset_ttheta'][0] = np.deg2rad(experiment.instrument.calib_twotheta_offset.value) - cryspy_expt_dict['wavelength'][0] = experiment.instrument.setup_wavelength.value - - # Peak - cryspy_resolution = cryspy_expt_dict['resolution_parameters'] - cryspy_resolution[0] = experiment.peak.broad_gauss_u.value - cryspy_resolution[1] = experiment.peak.broad_gauss_v.value - cryspy_resolution[2] = experiment.peak.broad_gauss_w.value - cryspy_resolution[3] = experiment.peak.broad_lorentz_x.value - cryspy_resolution[4] = experiment.peak.broad_lorentz_y.value - - # Linked phase - ###cryspy_dict[cryspy_expt_id]['phase_scale'][0] = experiment.linked_phases[sample_model.model_id].scale.value + if experiment.type.beam_mode.value == 'constant wavelength': + cryspy_expt_id = f'pd_{experiment.id}' # TODO: use expt_id as in the SampleModel? Or change there for id instead of model_id? + cryspy_expt_dict = cryspy_dict[cryspy_expt_id] + + # Instrument + cryspy_expt_dict['offset_ttheta'][0] = np.deg2rad(experiment.instrument.calib_twotheta_offset.value) + cryspy_expt_dict['wavelength'][0] = experiment.instrument.setup_wavelength.value + + # Peak + cryspy_resolution = cryspy_expt_dict['resolution_parameters'] + cryspy_resolution[0] = experiment.peak.broad_gauss_u.value + cryspy_resolution[1] = experiment.peak.broad_gauss_v.value + cryspy_resolution[2] = experiment.peak.broad_gauss_w.value + cryspy_resolution[3] = experiment.peak.broad_lorentz_x.value + cryspy_resolution[4] = experiment.peak.broad_lorentz_y.value + + elif experiment.type.beam_mode.value == 'time-of-flight': + cryspy_expt_id = f'tof_{experiment.id}' # TODO: use expt_id as in the SampleModel? Or change there for id instead of model_id? + cryspy_expt_dict = cryspy_dict[cryspy_expt_id] + + # Instrument + cryspy_expt_dict['zero'][0] = experiment.instrument.calib_d_to_tof_offset.value + cryspy_expt_dict['dtt1'][0] = experiment.instrument.calib_d_to_tof_linear.value + cryspy_expt_dict['dtt2'][0] = experiment.instrument.calib_d_to_tof_quad.value + cryspy_expt_dict['ttheta_bank'] = np.deg2rad(experiment.instrument.setup_twotheta_bank.value) + + # Peak + cryspy_sigma = cryspy_expt_dict['profile_sigmas'] + cryspy_sigma[0] = experiment.peak.broad_gauss_sigma_0.value + cryspy_sigma[1] = experiment.peak.broad_gauss_sigma_1.value + cryspy_sigma[2] = experiment.peak.broad_gauss_sigma_2.value + + cryspy_beta = cryspy_expt_dict['profile_betas'] + cryspy_beta[0] = experiment.peak.broad_mix_beta_0.value + cryspy_beta[1] = experiment.peak.broad_mix_beta_1.value + + cryspy_alpha = cryspy_expt_dict['profile_alphas'] + cryspy_alpha[0] = experiment.peak.asym_alpha_0.value + cryspy_alpha[1] = experiment.peak.asym_alpha_1.value return cryspy_dict From 6512bcf09b18022c592f9cbba1776ff2f86a40b4 Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Fri, 4 Apr 2025 14:36:14 +0200 Subject: [PATCH 11/17] First attempt to apply symmetry constrains --- .../crystallography/crystallography.py | 168 ++++++++++++++++++ .../crystallography/space_group_database.py | 79 ++++++++ .../space_group_lookup_tables.py | 17 ++ .../iterable_components/atom_sites.py | 7 + .../sample_models/sample_models.py | 52 ++++++ 5 files changed, 323 insertions(+) create mode 100644 src/easydiffraction/crystallography/crystallography.py create mode 100644 src/easydiffraction/crystallography/space_group_database.py create mode 100644 src/easydiffraction/crystallography/space_group_lookup_tables.py diff --git a/src/easydiffraction/crystallography/crystallography.py b/src/easydiffraction/crystallography/crystallography.py new file mode 100644 index 00000000..d9af91bd --- /dev/null +++ b/src/easydiffraction/crystallography/crystallography.py @@ -0,0 +1,168 @@ +from sympy import symbols, sympify, simplify +from tabulate import tabulate +from .space_group_database import space_group_database +from .space_group_lookup_tables import ( + lookup_by_hm_ref_index, + lookup_by_hm_alt_index, + lookup_by_hall_symbol_index, +) + + +def normalize_hm_symbol(symbol: str) -> str: + stripped = symbol.replace(" ", "") + lowered = stripped.lower() + return lowered + + +def get_space_group_by_hm_ref(hm_ref: str, + coord_code: str = None): + key = (hm_ref, coord_code) + sg_key = lookup_by_hm_ref_index.get(key) + + if sg_key is None: + fallback_key = (hm_ref, None) + sg_key = lookup_by_hm_ref_index.get(fallback_key) + + if sg_key is None: + return None + + sg_entry = space_group_database.get(sg_key) + return sg_entry + + +def get_space_group_by_hm_alt(hm_alt: str): + norm_input = normalize_hm_symbol(hm_alt) + + for stored_symbol, sg_key in lookup_by_hm_alt_index.items(): + stored_normalized = normalize_hm_symbol(stored_symbol) + + if stored_normalized == norm_input: + sg_entry = space_group_database.get(sg_key) + return sg_entry + + return None + + +def get_space_group_by_hall_symbol(hall_symbol: str): + sg_key = lookup_by_hall_symbol_index.get(hall_symbol) + + if sg_key is None: + return None + + sg_entry = space_group_database.get(sg_key) + return sg_entry + + +def get_space_group_by_it_number(it_number: int, + coord_code: str = None): + sg_key = (it_number, coord_code) + sg_entry = space_group_database.get(sg_key) + return sg_entry + + +def apply_cell_symmetry_constraints(cell: dict, + space_group_entry: dict) -> dict: + cs = space_group_entry.get("crystal_system", "unknown").lower() + + if cs == "cubic": + a = cell["lattice_a"] + cell["lattice_b"] = a + cell["lattice_c"] = a + cell["angle_alpha"] = 90 + cell["angle_beta"] = 90 + cell["angle_gamma"] = 90 + + elif cs == "tetragonal": + a = cell["lattice_a"] + cell["lattice_b"] = a + cell["angle_alpha"] = 90 + cell["angle_beta"] = 90 + cell["angle_gamma"] = 90 + + elif cs == "orthorhombic": + cell["angle_alpha"] = 90 + cell["angle_beta"] = 90 + cell["angle_gamma"] = 90 + + elif cs in {"hexagonal", "trigonal"}: + a = cell["lattice_a"] + cell["lattice_b"] = a + cell["angle_alpha"] = 90 + cell["angle_beta"] = 90 + cell["angle_gamma"] = 120 + + elif cs == "monoclinic": + cell["angle_alpha"] = 90 + cell["angle_gamma"] = 90 + + elif cs == "triclinic": + pass # No constraints to apply + + else: + error_msg = f"Unknown or unsupported crystal system: {cs}" + raise ValueError(error_msg) + + return cell + + +def apply_atom_site_symmetry_constraints(atom_site: dict, + space_group_entry: dict, + wyckoff_letter: str) -> dict: + x, y, z = symbols("x y z") + + wyckoff_data = space_group_entry.get("Wyckoff_positions", {}) + wyckoff = wyckoff_data.get(wyckoff_letter) + + if wyckoff is None: + error_msg = f"Wyckoff letter '{wyckoff_letter}' not found." + raise ValueError(error_msg) + + first_position = wyckoff["coords_xyz"][0] + components = first_position.strip("()").split(",") + parsed_exprs = [sympify(comp.strip()) for comp in components] + + x_val = sympify(atom_site["fract_x"]) + y_val = sympify(atom_site["fract_y"]) + z_val = sympify(atom_site["fract_z"]) + + substitutions = { + "x": x_val, + "y": y_val, + "z": z_val + } + + axes = ("x", "y", "z") + symbols_xyz = (x, y, z) + + for i, axis in enumerate(axes): + symbol = symbols_xyz[i] + is_free = any(symbol in expr.free_symbols for expr in parsed_exprs) + + if not is_free: + evaluated = parsed_exprs[i].subs(substitutions) + simplified = simplify(evaluated) + atom_site[f"fract_{axis}"] = float(simplified) + + return atom_site + + +def show_wyckoff_positions_table(space_group_entry: dict): + wyckoff_data = space_group_entry.get("Wyckoff_positions", {}) + headers = ["Letter", "Multiplicity", "Site Symmetry", "Fractional Coordinates"] + + rows = [] + + for letter, data in sorted(wyckoff_data.items()): + multiplicity = data["multiplicity"] + symmetry = data["site_symmetry"] + coords = ", ".join(data["coords_xyz"]) + + row = [letter, multiplicity, symmetry, coords] + rows.append(row) + + table = tabulate(rows, + headers=headers, + tablefmt="fancy_outline", + numalign="left", + showindex=False) + print(table) \ No newline at end of file diff --git a/src/easydiffraction/crystallography/space_group_database.py b/src/easydiffraction/crystallography/space_group_database.py new file mode 100644 index 00000000..6f1180a1 --- /dev/null +++ b/src/easydiffraction/crystallography/space_group_database.py @@ -0,0 +1,79 @@ +space_group_database = { + (62, "cab"): { + "IT_number": 62, + "setting": 3, + "IT_coordinate_system_code": "cab", + "name_H-M_ref": "P n m a", + "name_H-M_full": "P 21/n 21/m 21/a", + "name_H-M_alt": "P b n m", + "name_Hall": "-P 2c 2ab", + "crystal_system": "orthorhombic", + "Wyckoff_positions": { + "d": { + "multiplicity": 8, + "site_symmetry": "1", + "coords_xyz": [ + "(x,y,z)", "(x+1/2,-y+1/2,-z)", "(-x,-y,z+1/2)", "(-x+1/2,y+1/2,-z+1/2)", + "(-x,-y,-z)", "(-x+1/2,y+1/2,z)", "(x,y,-z+1/2)", "(x+1/2,-y+1/2,z+1/2)" + ] + }, + "c": { + "multiplicity": 4, + "site_symmetry": ".m.", + "coords_xyz": [ + "(x,y,1/4)", "(x+1/2,-y+1/2,3/4)", "(-x,-y,3/4)", "(-x+1/2,y+1/2,1/4)" + ] + }, + "b": { + "multiplicity": 4, + "site_symmetry": "-1", + "coords_xyz": [ + "(1/2,0,0)", "(0,1/2,0)", "(1/2,0,1/2)", "(0,1/2,1/2)" + ] + }, + "a": { + "multiplicity": 4, + "site_symmetry": "-1", + "coords_xyz": [ + "(0,0,0)", "(1/2,1/2,0)", "(0,0,1/2)", "(1/2,1/2,1/2)" + ] + } + } + }, + (199, "1"): { + "IT_number": 199, + "setting": 1, + "IT_coordinate_system_code": "1", + "name_H-M_ref": "I 21 3", + "name_H-M_full": "I 21 3", + "name_H-M_alt": "I 21 3", + "name_Hall": "I 2 2 3", + "crystal_system": "cubic", + "Wyckoff_positions": { + "c": { + "multiplicity": 24, + "site_symmetry": "1", + "coords_xyz": [ + "(x,y,z)", "(-x+1/2,-y,z+1/2)", "(-x,y+1/2,-z+1/2)", "(x+1/2,-y+1/2,-z)", + "(z,x,y)", "(z+1/2,-x+1/2,-y)", "(-z+1/2,-x,y+1/2)", "(-z,x+1/2,-y+1/2)", + "(y,z,x)", "(-y,z+1/2,-x+1/2)", "(y+1/2,-z+1/2,-x)", "(-y+1/2,-z,x+1/2)" + ] + }, + "b": { + "multiplicity": 12, + "site_symmetry": "2..", + "coords_xyz": [ + "(x,0,1/4)", "(-x+1/2,0,3/4)", "(1/4,x,0)", + "(3/4,-x+1/2,0)", "(0,1/4,x)", "(0,3/4,-x+1/2)" + ] + }, + "a": { + "multiplicity": 8, + "site_symmetry": ".3.", + "coords_xyz": [ + "(x,x,x)", "(-x+1/2,-x,x+1/2)", "(-x,x+1/2,-x+1/2)", "(x+1/2,-x+1/2,-x)" + ] + } + } + } +} \ No newline at end of file diff --git a/src/easydiffraction/crystallography/space_group_lookup_tables.py b/src/easydiffraction/crystallography/space_group_lookup_tables.py new file mode 100644 index 00000000..7492dd13 --- /dev/null +++ b/src/easydiffraction/crystallography/space_group_lookup_tables.py @@ -0,0 +1,17 @@ +lookup_by_hm_ref_index = { + ("P n m a", "cab"): (62, "cab"), + ("P n m a", None): (62, "cab"), + ("I 21 3", "1"): (199, "1"), + ("I 21 3", None): (199, "1"), +} + +lookup_by_hm_alt_index = { + "P b n m": (62, "cab"), + "P n m a": (62, "cab"), + "I 21 3": (199, "1"), +} + +lookup_by_hall_symbol_index = { + "-P 2c 2ab": (62, "cab"), + "I 2 2 3": (199, "1"), +} \ No newline at end of file diff --git a/src/easydiffraction/sample_models/iterable_components/atom_sites.py b/src/easydiffraction/sample_models/iterable_components/atom_sites.py index 846f0b2e..e52b8613 100644 --- a/src/easydiffraction/sample_models/iterable_components/atom_sites.py +++ b/src/easydiffraction/sample_models/iterable_components/atom_sites.py @@ -11,6 +11,7 @@ class AtomSite(IterableComponentRow): def __init__(self, label: str, type_symbol: str, + wyckoff_letter: str, fract_x: float, fract_y: float, fract_z: float, @@ -31,6 +32,10 @@ def __init__(self, value=adp_type, cif_name="ADP_type" ) + self.wyckoff_letter = Descriptor( + value=wyckoff_letter, + cif_name="Wyckoff_letter" + ) self.fract_x = Parameter( value=fract_x, cif_name="fract_x" @@ -70,6 +75,7 @@ def cif_category_name(self): def add(self, label: str, type_symbol: str, + wyckoff_letter: str, fract_x: float, fract_y: float, fract_z: float, @@ -81,6 +87,7 @@ def add(self, """ site = AtomSite(label, type_symbol, + wyckoff_letter, fract_x, fract_y, fract_z, diff --git a/src/easydiffraction/sample_models/sample_models.py b/src/easydiffraction/sample_models/sample_models.py index 3237d4da..8ecf712e 100644 --- a/src/easydiffraction/sample_models/sample_models.py +++ b/src/easydiffraction/sample_models/sample_models.py @@ -3,6 +3,8 @@ from easydiffraction.sample_models.iterable_components.atom_sites import AtomSites from easydiffraction.core.collection import Collection from easydiffraction.utils.formatting import paragraph +from easydiffraction.crystallography import crystallography +from easydiffraction.crystallography import crystallography as ecr class SampleModel: @@ -22,6 +24,54 @@ def __init__(self, model_id=None, cif_path=None, cif_str=None): elif cif_str: self.load_from_cif_string(cif_str) + def apply_symmetry_constraints(self): + self._apply_cell_symmetry_constraints() + self._apply_atomic_coordinates_symmetry_constraints() + self._apply_atomic_displacement_symmetry_constraints() + + def _apply_cell_symmetry_constraints(self): + dummy_cell = {'lattice_a': self.cell.length_a.value, + 'lattice_b': self.cell.length_b.value, + 'lattice_c': self.cell.length_c.value, + 'angle_alpha': self.cell.angle_alpha.value, + 'angle_beta': self.cell.angle_beta.value, + 'angle_gamma': self.cell.angle_gamma.value} + hm_ref = self.space_group.name.value + coord_code = self.space_group.setting.value + sg = ecr.get_space_group_by_hm_ref(hm_ref=hm_ref, + coord_code=coord_code) + ecr.apply_cell_symmetry_constraints(cell=dummy_cell, + space_group_entry=sg) + self.cell.length_a.value = dummy_cell['lattice_a'] + self.cell.length_b.value = dummy_cell['lattice_b'] + self.cell.length_c.value = dummy_cell['lattice_c'] + self.cell.angle_alpha.value = dummy_cell['angle_alpha'] + self.cell.angle_beta.value = dummy_cell['angle_beta'] + self.cell.angle_gamma.value = dummy_cell['angle_gamma'] + + def _apply_atomic_coordinates_symmetry_constraints(self): + hm_ref = self.space_group.name.value + coord_code = self.space_group.setting.value + sg = ecr.get_space_group_by_hm_ref(hm_ref=hm_ref, + coord_code=coord_code) + for atom in self.atom_sites: + dummy_atom = {"fract_x": atom.fract_x.value, + "fract_y": atom.fract_y.value, + "fract_z": atom.fract_z.value} + wl = atom.wyckoff_letter.value + if not wl: + #raise ValueError("Wyckoff letter is not defined for atom.") + continue + ecr.apply_atom_site_symmetry_constraints(atom_site=dummy_atom, + space_group_entry=sg, + wyckoff_letter=wl) + atom.fract_x.value = dummy_atom['fract_x'] + atom.fract_y.value = dummy_atom['fract_y'] + atom.fract_z.value = dummy_atom['fract_z'] + + def _apply_atomic_displacement_symmetry_constraints(self): + pass + def load_from_cif_file(self, cif_path: str): """Load model data from a CIF file.""" # TODO: Implement CIF parsing here @@ -86,6 +136,8 @@ def show_as_cif(self): print("\n".join(padded_lines)) print(bottom) + + class SampleModels(Collection): """ Collection manager for multiple SampleModel instances. From 4bab99dfe0b5e5c2092d78a6124d03aa45c7c0a7 Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Mon, 7 Apr 2025 09:39:42 +0200 Subject: [PATCH 12/17] First implementation of symmetry constraints --- .../data/hrpt_HSO20_V6x15_1p89_HI_T_300K.xye | 3220 +++++++++++++++++ examples/symmetry-constraints.py | 137 + src/easydiffraction/analysis/analysis.py | 3 +- src/easydiffraction/analysis/minimization.py | 2 +- .../crystallography/crystallography.py | 154 +- .../iterable_components/atom_sites.py | 6 +- .../sample_models/sample_models.py | 16 +- 7 files changed, 3421 insertions(+), 117 deletions(-) create mode 100644 examples/data/hrpt_HSO20_V6x15_1p89_HI_T_300K.xye create mode 100644 examples/symmetry-constraints.py diff --git a/examples/data/hrpt_HSO20_V6x15_1p89_HI_T_300K.xye b/examples/data/hrpt_HSO20_V6x15_1p89_HI_T_300K.xye new file mode 100644 index 00000000..7003f14a --- /dev/null +++ b/examples/data/hrpt_HSO20_V6x15_1p89_HI_T_300K.xye @@ -0,0 +1,3220 @@ + 3.950 645.0 49.5 + 4.000 672.0 51.9 + 4.050 698.0 54.3 + 4.100 596.0 47.6 + 4.150 671.0 53.0 + 4.200 740.0 55.9 + 4.250 670.0 36.6 + 4.300 726.0 55.2 + 4.350 594.0 35.4 + 4.400 658.0 36.2 + 4.450 736.0 39.5 + 4.500 660.0 37.3 + 4.550 648.0 29.6 + 4.600 626.0 36.4 + 4.650 655.0 30.3 + 4.700 630.0 29.1 + 4.750 609.0 29.3 + 4.800 649.0 30.1 + 4.850 630.0 25.3 + 4.900 612.0 29.3 + 4.950 615.0 25.3 + 5.000 575.0 24.2 + 5.050 578.0 24.5 + 5.100 623.0 25.5 + 5.150 606.0 25.0 + 5.200 632.0 25.7 + 5.250 642.0 25.7 + 5.300 633.0 25.5 + 5.350 572.0 24.2 + 5.400 567.0 24.1 + 5.450 637.0 25.4 + 5.500 566.0 24.1 + 5.550 616.0 24.8 + 5.600 590.0 24.5 + 5.650 549.0 23.4 + 5.700 581.0 24.1 + 5.750 577.0 24.0 + 5.800 547.0 23.4 + 5.850 590.0 24.1 + 5.900 575.0 23.9 + 5.950 558.0 23.4 + 6.000 518.0 22.6 + 6.050 575.0 23.7 + 6.100 508.0 22.3 + 6.150 569.0 23.6 + 6.200 564.0 23.5 + 6.250 551.0 23.1 + 6.300 553.0 23.2 + 6.350 535.0 22.8 + 6.400 571.0 23.5 + 6.450 571.0 23.6 + 6.500 543.0 22.9 + 6.550 552.0 23.1 + 6.600 580.0 23.7 + 6.650 528.0 22.6 + 6.700 549.0 23.0 + 6.750 539.0 22.9 + 6.800 500.0 22.0 + 6.850 499.0 21.9 + 6.900 552.0 23.2 + 6.950 528.0 22.6 + 7.000 473.0 21.3 + 7.050 537.0 22.8 + 7.100 512.0 22.2 + 7.150 543.0 22.8 + 7.200 494.0 21.9 + 7.250 496.0 21.9 + 7.300 560.0 23.2 + 7.350 528.0 22.6 + 7.400 497.0 21.9 + 7.450 519.0 22.4 + 7.500 532.0 22.6 + 7.550 491.0 21.8 + 7.600 504.0 22.0 + 7.650 513.0 22.3 + 7.700 492.0 21.8 + 7.750 508.0 22.1 + 7.800 508.0 22.1 + 7.850 471.0 21.3 + 7.900 517.0 22.3 + 7.950 542.0 22.9 + 8.000 479.0 21.5 + 8.050 480.0 21.5 + 8.100 522.0 22.5 + 8.150 471.0 21.3 + 8.200 460.0 21.1 + 8.250 498.0 21.9 + 8.300 521.0 22.5 + 8.350 504.0 21.9 + 8.400 458.0 21.0 + 8.450 460.0 21.1 + 8.500 500.0 21.8 + 8.550 478.0 21.4 + 8.600 483.0 21.6 + 8.650 494.0 21.7 + 8.700 515.0 22.3 + 8.750 499.0 21.9 + 8.800 453.0 20.8 + 8.850 451.0 20.8 + 8.900 477.0 21.4 + 8.950 496.0 21.7 + 9.000 475.0 21.4 + 9.050 503.0 22.0 + 9.100 470.0 21.1 + 9.150 470.0 21.2 + 9.200 476.0 21.4 + 9.250 512.0 22.1 + 9.300 499.0 21.8 + 9.350 513.0 22.2 + 9.400 475.0 21.3 + 9.450 449.0 20.6 + 9.500 466.0 21.1 + 9.550 496.0 21.9 + 9.600 456.0 20.8 + 9.650 478.0 21.4 + 9.700 484.0 21.6 + 9.750 435.0 20.3 + 9.800 475.0 21.4 + 9.850 472.0 21.3 + 9.900 462.0 21.0 + 9.950 470.0 21.4 + 10.000 483.0 21.6 + 10.050 461.0 21.1 + 10.100 460.0 21.1 + 10.150 450.0 21.0 + 10.200 434.0 20.5 + 10.250 489.0 21.9 + 10.300 467.0 21.4 + 10.350 488.0 21.9 + 10.400 463.0 21.3 + 10.450 462.0 21.5 + 10.500 501.0 22.2 + 10.550 452.0 21.3 + 10.600 459.0 21.4 + 10.650 475.0 21.9 + 10.700 431.0 20.8 + 10.750 454.0 21.6 + 10.800 451.0 21.4 + 10.850 470.0 22.0 + 10.900 437.0 21.2 + 10.950 429.0 21.1 + 11.000 465.0 21.9 + 11.050 421.0 21.1 + 11.100 451.0 21.7 + 11.150 441.0 21.5 + 11.200 474.0 22.3 + 11.250 472.0 22.3 + 11.300 457.0 21.8 + 11.350 449.0 21.9 + 11.400 457.0 22.0 + 11.450 433.0 21.5 + 11.500 477.0 22.6 + 11.550 452.0 21.9 + 11.600 471.0 22.4 + 11.650 429.0 21.4 + 11.700 431.0 21.4 + 11.750 448.0 21.7 + 11.800 503.0 23.2 + 11.850 485.0 22.6 + 11.900 472.0 22.3 + 11.950 445.0 21.7 + 12.000 461.0 22.0 + 12.050 466.0 22.1 + 12.100 474.0 22.3 + 12.150 415.0 20.7 + 12.200 436.0 21.3 + 12.250 430.0 21.1 + 12.300 465.0 21.9 + 12.350 472.0 21.9 + 12.400 416.0 20.7 + 12.450 422.0 20.7 + 12.500 448.0 21.4 + 12.550 479.0 22.0 + 12.600 426.0 20.7 + 12.650 426.0 20.6 + 12.700 446.0 21.2 + 12.750 417.0 20.3 + 12.800 465.0 21.5 + 12.850 441.0 20.9 + 12.900 428.0 20.6 + 12.950 472.0 21.5 + 13.000 509.0 22.4 + 13.050 470.0 21.5 + 13.100 434.0 20.6 + 13.150 468.0 21.4 + 13.200 428.0 20.5 + 13.250 473.0 21.5 + 13.300 422.0 20.3 + 13.350 437.0 20.6 + 13.400 447.0 20.9 + 13.450 465.0 21.3 + 13.500 458.0 21.1 + 13.550 463.0 21.2 + 13.600 430.0 20.4 + 13.650 499.0 22.0 + 13.700 443.0 20.8 + 13.750 458.0 21.1 + 13.800 438.0 20.6 + 13.850 450.0 21.0 + 13.900 450.0 20.9 + 13.950 482.0 21.6 + 14.000 404.0 19.9 + 14.050 470.0 21.4 + 14.100 432.0 20.5 + 14.150 438.0 20.7 + 14.200 445.0 20.8 + 14.250 443.0 20.8 + 14.300 461.0 21.3 + 14.350 484.0 21.6 + 14.400 445.0 20.8 + 14.450 414.0 20.1 + 14.500 435.0 20.5 + 14.550 448.0 20.9 + 14.600 451.0 21.0 + 14.650 416.0 20.1 + 14.700 415.0 20.1 + 14.750 453.0 21.0 + 14.800 425.0 20.3 + 14.850 447.0 20.9 + 14.900 430.0 20.5 + 14.950 445.0 20.8 + 15.000 418.0 20.2 + 15.050 417.0 20.2 + 15.100 457.0 21.1 + 15.150 439.0 20.8 + 15.200 430.0 20.5 + 15.250 487.0 21.8 + 15.300 457.0 21.2 + 15.350 440.0 20.7 + 15.400 423.0 20.3 + 15.450 428.0 20.5 + 15.500 455.0 21.0 + 15.550 455.0 21.1 + 15.600 477.0 21.6 + 15.650 400.0 19.7 + 15.700 441.0 20.8 + 15.750 444.0 20.9 + 15.800 445.0 20.8 + 15.850 399.0 19.8 + 15.900 418.0 20.3 + 15.950 446.0 20.9 + 16.000 406.0 19.9 + 16.050 441.0 20.8 + 16.100 465.0 21.3 + 16.150 454.0 21.1 + 16.200 433.0 20.6 + 16.250 454.0 21.2 + 16.300 451.0 21.0 + 16.350 424.0 20.5 + 16.400 428.0 20.6 + 16.450 424.0 20.5 + 16.500 448.0 21.1 + 16.550 445.0 21.2 + 16.600 484.0 21.9 + 16.650 413.0 20.4 + 16.700 422.0 20.6 + 16.750 454.0 21.4 + 16.800 407.0 20.3 + 16.850 410.0 20.5 + 16.900 462.0 21.6 + 16.950 472.0 22.0 + 17.000 468.0 21.9 + 17.050 433.0 21.2 + 17.100 422.0 20.8 + 17.150 435.0 21.4 + 17.200 443.0 21.5 + 17.250 435.0 21.4 + 17.300 408.0 20.7 + 17.350 489.0 22.8 + 17.400 451.0 21.9 + 17.450 423.0 21.3 + 17.500 442.0 21.7 + 17.550 459.0 22.2 + 17.600 472.0 22.5 + 17.650 484.0 22.9 + 17.700 448.0 22.0 + 17.750 452.0 22.2 + 17.800 471.0 22.6 + 17.850 466.0 22.6 + 17.900 483.0 22.9 + 17.950 468.0 22.6 + 18.000 421.0 21.4 + 18.050 450.0 22.1 + 18.100 445.0 22.0 + 18.150 466.0 22.5 + 18.200 476.0 22.7 + 18.250 481.0 22.8 + 18.300 418.0 21.4 + 18.350 439.0 21.8 + 18.400 436.0 21.7 + 18.450 476.0 22.6 + 18.500 464.0 22.4 + 18.550 414.0 20.9 + 18.600 471.0 22.4 + 18.650 471.0 22.2 + 18.700 424.0 21.1 + 18.750 450.0 21.7 + 18.800 449.0 21.7 + 18.850 420.0 20.8 + 18.900 462.0 22.0 + 18.950 414.0 20.6 + 19.000 463.0 21.8 + 19.050 445.0 21.3 + 19.100 426.0 20.9 + 19.150 454.0 21.3 + 19.200 449.0 21.4 + 19.250 442.0 20.9 + 19.300 479.0 21.9 + 19.350 470.0 21.7 + 19.400 473.0 21.7 + 19.450 488.0 21.9 + 19.500 519.0 22.8 + 19.550 522.0 22.5 + 19.600 571.0 23.7 + 19.650 563.0 23.5 + 19.700 650.0 25.1 + 19.750 618.0 24.5 + 19.800 652.0 25.3 + 19.850 658.0 25.2 + 19.900 653.0 25.2 + 19.950 723.0 26.5 + 20.000 715.0 26.2 + 20.050 694.0 26.0 + 20.100 615.0 24.4 + 20.150 640.0 24.8 + 20.200 558.0 23.3 + 20.250 560.0 23.3 + 20.300 546.0 22.9 + 20.350 495.0 21.8 + 20.400 514.0 22.3 + 20.450 495.0 21.9 + 20.500 484.0 21.6 + 20.550 456.0 21.0 + 20.600 449.0 20.9 + 20.650 437.0 20.5 + 20.700 430.0 20.4 + 20.750 444.0 20.7 + 20.800 443.0 20.7 + 20.850 434.0 20.5 + 20.900 479.0 21.5 + 20.950 440.0 20.6 + 21.000 455.0 21.0 + 21.050 444.0 20.8 + 21.100 427.0 20.3 + 21.150 438.0 20.7 + 21.200 476.0 21.5 + 21.250 467.0 21.2 + 21.300 445.0 20.8 + 21.350 503.0 22.1 + 21.400 434.0 20.5 + 21.450 416.0 20.1 + 21.500 422.0 20.2 + 21.550 450.0 20.9 + 21.600 400.0 19.7 + 21.650 466.0 21.2 + 21.700 446.0 20.8 + 21.750 464.0 21.2 + 21.800 442.0 20.7 + 21.850 457.0 21.0 + 21.900 467.0 21.2 + 21.950 410.0 19.9 + 22.000 435.0 20.5 + 22.050 430.0 20.3 + 22.100 455.0 20.9 + 22.150 435.0 20.5 + 22.200 454.0 20.9 + 22.250 399.0 19.6 + 22.300 451.0 20.9 + 22.350 471.0 21.3 + 22.400 424.0 20.2 + 22.450 413.0 20.0 + 22.500 468.0 21.3 + 22.550 472.0 21.4 + 22.600 433.0 20.5 + 22.650 467.0 21.3 + 22.700 467.0 21.2 + 22.750 512.0 22.3 + 22.800 455.0 21.1 + 22.850 518.0 22.5 + 22.900 526.0 22.6 + 22.950 507.0 22.4 + 23.000 553.0 23.2 + 23.050 558.0 23.5 + 23.100 529.0 22.9 + 23.150 540.0 23.1 + 23.200 584.0 24.0 + 23.250 563.0 23.9 + 23.300 552.0 23.4 + 23.350 584.0 24.3 + 23.400 557.0 23.8 + 23.450 588.0 24.4 + 23.500 550.0 23.6 + 23.550 503.0 22.8 + 23.600 481.0 22.0 + 23.650 523.0 23.2 + 23.700 527.0 23.4 + 23.750 542.0 23.7 + 23.800 536.0 23.5 + 23.850 576.0 24.6 + 23.900 537.0 23.6 + 23.950 623.0 25.6 + 24.000 598.0 25.1 + 24.050 620.0 25.5 + 24.100 601.0 25.1 + 24.150 569.0 24.5 + 24.200 575.0 24.6 + 24.250 581.0 24.8 + 24.300 564.0 24.4 + 24.350 560.0 24.4 + 24.400 537.0 23.8 + 24.450 497.0 22.9 + 24.500 456.0 22.0 + 24.550 430.0 21.3 + 24.600 474.0 22.4 + 24.650 451.0 21.8 + 24.700 467.0 22.2 + 24.750 466.0 22.1 + 24.800 493.0 22.8 + 24.850 425.0 21.0 + 24.900 467.0 22.2 + 24.950 446.0 21.4 + 25.000 457.0 21.8 + 25.050 455.0 21.7 + 25.100 410.0 20.6 + 25.150 453.0 21.5 + 25.200 457.0 21.7 + 25.250 420.0 20.7 + 25.300 453.0 21.5 + 25.350 407.0 20.3 + 25.400 448.0 21.3 + 25.450 416.0 20.4 + 25.500 454.0 21.4 + 25.550 470.0 21.6 + 25.600 459.0 21.4 + 25.650 464.0 21.5 + 25.700 416.0 20.4 + 25.750 397.0 19.8 + 25.800 458.0 21.4 + 25.850 431.0 20.6 + 25.900 434.0 20.7 + 25.950 453.0 21.2 + 26.000 484.0 21.9 + 26.050 434.0 20.6 + 26.100 446.0 21.0 + 26.150 473.0 21.6 + 26.200 437.0 20.7 + 26.250 455.0 21.1 + 26.300 460.0 21.2 + 26.350 488.0 21.9 + 26.400 438.0 20.7 + 26.450 402.0 19.8 + 26.500 435.0 20.6 + 26.550 459.0 21.3 + 26.600 466.0 21.4 + 26.650 452.0 21.1 + 26.700 448.0 21.1 + 26.750 457.0 21.2 + 26.800 456.0 21.2 + 26.850 471.0 21.6 + 26.900 433.0 20.6 + 26.950 476.0 21.6 + 27.000 448.0 21.1 + 27.050 420.0 20.3 + 27.100 462.0 21.3 + 27.150 447.0 21.0 + 27.200 429.0 20.5 + 27.250 464.0 21.4 + 27.300 480.0 21.8 + 27.350 443.0 20.9 + 27.400 449.0 21.0 + 27.450 458.0 21.3 + 27.500 450.0 21.1 + 27.550 450.0 21.1 + 27.600 407.0 20.1 + 27.650 453.0 21.2 + 27.700 438.0 20.8 + 27.750 426.0 20.5 + 27.800 443.0 20.9 + 27.850 442.0 20.8 + 27.900 450.0 21.1 + 27.950 485.0 21.9 + 28.000 432.0 20.6 + 28.050 423.0 20.4 + 28.100 457.0 21.3 + 28.150 436.0 20.8 + 28.200 462.0 21.4 + 28.250 446.0 21.0 + 28.300 457.0 21.3 + 28.350 437.0 20.8 + 28.400 451.0 21.1 + 28.450 415.0 20.3 + 28.500 385.0 19.5 + 28.550 452.0 21.2 + 28.600 446.0 21.0 + 28.650 445.0 21.0 + 28.700 457.0 21.3 + 28.750 457.0 21.3 + 28.800 416.0 20.3 + 28.850 458.0 21.3 + 28.900 450.0 21.1 + 28.950 471.0 21.7 + 29.000 499.0 22.2 + 29.050 472.0 21.7 + 29.100 433.0 20.8 + 29.150 442.0 21.0 + 29.200 471.0 21.6 + 29.250 446.0 21.2 + 29.300 483.0 22.0 + 29.350 492.0 22.2 + 29.400 470.0 21.8 + 29.450 443.0 21.1 + 29.500 500.0 22.4 + 29.550 475.0 21.9 + 29.600 440.0 21.0 + 29.650 506.0 22.7 + 29.700 469.0 21.8 + 29.750 479.0 22.1 + 29.800 440.0 21.2 + 29.850 444.0 21.4 + 29.900 510.0 22.8 + 29.950 482.0 22.4 + 30.000 440.0 21.3 + 30.050 428.0 21.1 + 30.100 459.0 21.9 + 30.150 464.0 22.0 + 30.200 444.0 21.5 + 30.250 398.0 20.5 + 30.300 428.0 21.2 + 30.350 439.0 21.5 + 30.400 400.0 20.6 + 30.450 453.0 21.8 + 30.500 416.0 20.9 + 30.550 435.0 21.5 + 30.600 424.0 21.1 + 30.650 468.0 22.2 + 30.700 452.0 21.9 + 30.750 439.0 21.6 + 30.800 445.0 21.7 + 30.850 502.0 23.1 + 30.900 457.0 22.0 + 30.950 431.0 21.3 + 31.000 463.0 22.2 + 31.050 431.0 21.2 + 31.100 426.0 21.2 + 31.150 458.0 21.9 + 31.200 445.0 21.6 + 31.250 463.0 21.9 + 31.300 429.0 21.2 + 31.350 471.0 21.9 + 31.400 451.0 21.6 + 31.450 471.0 22.0 + 31.500 465.0 21.8 + 31.550 450.0 21.3 + 31.600 470.0 22.0 + 31.650 433.0 20.9 + 31.700 487.0 22.2 + 31.750 482.0 22.0 + 31.800 522.0 22.9 + 31.850 477.0 21.7 + 31.900 507.0 22.6 + 31.950 497.0 22.1 + 32.000 543.0 23.2 + 32.050 503.0 22.3 + 32.100 527.0 22.7 + 32.150 540.0 22.9 + 32.200 506.0 22.3 + 32.250 537.0 22.8 + 32.300 494.0 21.9 + 32.350 484.0 21.8 + 32.400 499.0 22.0 + 32.450 495.0 21.8 + 32.500 447.0 20.9 + 32.550 445.0 20.7 + 32.600 447.0 20.7 + 32.650 479.0 21.6 + 32.700 467.0 21.2 + 32.750 475.0 21.4 + 32.800 464.0 21.2 + 32.850 488.0 21.6 + 32.900 448.0 20.8 + 32.950 462.0 21.1 + 33.000 452.0 20.8 + 33.050 497.0 21.9 + 33.100 468.0 21.2 + 33.150 434.0 20.3 + 33.200 454.0 20.9 + 33.250 466.0 21.2 + 33.300 489.0 21.6 + 33.350 496.0 21.9 + 33.400 440.0 20.6 + 33.450 408.0 19.7 + 33.500 460.0 21.1 + 33.550 451.0 20.8 + 33.600 475.0 21.2 + 33.650 460.0 21.1 + 33.700 434.0 20.4 + 33.750 445.0 20.6 + 33.800 479.0 21.5 + 33.850 442.0 20.6 + 33.900 488.0 21.6 + 33.950 441.0 20.6 + 34.000 473.0 21.3 + 34.050 455.0 20.9 + 34.100 421.0 20.2 + 34.150 477.0 21.4 + 34.200 508.0 22.0 + 34.250 498.0 21.9 + 34.300 482.0 21.5 + 34.350 506.0 22.0 + 34.400 516.0 22.3 + 34.450 497.0 21.8 + 34.500 480.0 21.4 + 34.550 479.0 21.5 + 34.600 483.0 21.5 + 34.650 508.0 22.1 + 34.700 504.0 22.0 + 34.750 491.0 21.7 + 34.800 507.0 22.1 + 34.850 485.0 21.6 + 34.900 478.0 21.4 + 34.950 467.0 21.2 + 35.000 498.0 21.9 + 35.050 486.0 21.7 + 35.100 477.0 21.4 + 35.150 511.0 22.3 + 35.200 440.0 20.6 + 35.250 479.0 21.5 + 35.300 481.0 21.7 + 35.350 512.0 22.3 + 35.400 529.0 22.6 + 35.450 527.0 22.8 + 35.500 494.0 21.9 + 35.550 516.0 22.4 + 35.600 547.0 23.2 + 35.650 535.0 23.0 + 35.700 555.0 23.2 + 35.750 581.0 24.0 + 35.800 599.0 24.3 + 35.850 678.0 25.8 + 35.900 715.0 26.7 + 35.950 869.0 29.6 + 36.000 1036.0 31.9 + 36.050 1206.0 35.0 + 36.100 1270.0 35.8 + 36.150 1491.0 38.8 + 36.200 1665.0 41.2 + 36.250 1828.0 43.4 + 36.300 1932.0 44.2 + 36.350 2038.0 45.9 + 36.400 2128.0 46.8 + 36.450 2106.0 46.7 + 36.500 1903.0 44.3 + 36.550 1742.0 42.7 + 36.600 1450.0 38.8 + 36.650 1234.0 36.0 + 36.700 980.0 32.0 + 36.750 879.0 30.5 + 36.800 797.0 28.9 + 36.850 741.0 28.0 + 36.900 691.0 27.1 + 36.950 613.0 25.5 + 37.000 601.0 25.2 + 37.050 567.0 24.6 + 37.100 572.0 24.6 + 37.150 558.0 24.3 + 37.200 556.0 24.3 + 37.250 539.0 23.9 + 37.300 563.0 24.4 + 37.350 558.0 24.2 + 37.400 561.0 24.4 + 37.450 555.0 24.0 + 37.500 604.0 25.2 + 37.550 585.0 24.7 + 37.600 604.0 25.1 + 37.650 730.0 27.5 + 37.700 784.0 28.7 + 37.750 849.0 29.5 + 37.800 925.0 30.9 + 37.850 1013.0 32.2 + 37.900 1076.0 33.2 + 37.950 1170.0 34.4 + 38.000 1198.0 35.0 + 38.050 1343.0 36.8 + 38.100 1240.0 35.4 + 38.150 1248.0 35.3 + 38.200 1234.0 35.2 + 38.250 1032.0 32.1 + 38.300 1002.0 31.6 + 38.350 855.0 29.2 + 38.400 775.0 27.8 + 38.450 780.0 27.7 + 38.500 706.0 26.5 + 38.550 653.0 25.4 + 38.600 622.0 24.7 + 38.650 639.0 25.1 + 38.700 623.0 24.8 + 38.750 635.0 24.9 + 38.800 614.0 24.6 + 38.850 620.0 24.6 + 38.900 661.0 25.4 + 38.950 617.0 24.6 + 39.000 669.0 25.6 + 39.050 626.0 24.7 + 39.100 650.0 25.3 + 39.150 656.0 25.4 + 39.200 678.0 25.7 + 39.250 724.0 26.7 + 39.300 708.0 26.4 + 39.350 816.0 28.2 + 39.400 882.0 29.4 + 39.450 1084.0 32.6 + 39.500 1184.0 34.0 + 39.550 1440.0 37.5 + 39.600 1741.0 41.3 + 39.650 2134.0 45.6 + 39.700 2434.0 48.8 + 39.750 2918.0 53.6 + 39.800 3269.0 56.4 + 39.850 3750.0 60.5 + 39.900 4020.0 63.0 + 39.950 4508.0 66.2 + 40.000 4697.0 67.7 + 40.050 4737.0 68.4 + 40.100 4348.0 65.0 + 40.150 4313.0 65.2 + 40.200 4140.0 63.9 + 40.250 4011.0 62.4 + 40.300 3929.0 62.2 + 40.350 4005.0 62.7 + 40.400 4204.0 63.9 + 40.450 4444.0 66.0 + 40.500 4600.0 67.2 + 40.550 4142.0 63.5 + 40.600 3809.0 61.1 + 40.650 3276.0 56.8 + 40.700 2755.0 51.8 + 40.750 2109.0 45.6 + 40.800 1620.0 40.0 + 40.850 1326.0 36.0 + 40.900 1128.0 33.3 + 40.950 917.0 30.0 + 41.000 769.0 27.4 + 41.050 741.0 27.0 + 41.100 667.0 25.6 + 41.150 659.0 25.4 + 41.200 605.0 24.4 + 41.250 584.0 23.9 + 41.300 556.0 23.4 + 41.350 535.0 22.9 + 41.400 569.0 23.6 + 41.450 533.0 22.9 + 41.500 563.0 23.5 + 41.550 548.0 23.2 + 41.600 521.0 22.7 + 41.650 531.0 22.9 + 41.700 547.0 23.2 + 41.750 499.0 22.2 + 41.800 512.0 22.5 + 41.850 454.0 21.1 + 41.900 513.0 22.5 + 41.950 529.0 22.7 + 42.000 487.0 21.8 + 42.050 531.0 23.0 + 42.100 533.0 22.8 + 42.150 551.0 23.4 + 42.200 509.0 22.5 + 42.250 527.0 22.8 + 42.300 523.0 22.7 + 42.350 472.0 21.7 + 42.400 539.0 23.1 + 42.450 523.0 22.9 + 42.500 541.0 23.3 + 42.550 487.0 22.2 + 42.600 506.0 22.6 + 42.650 492.0 22.4 + 42.700 493.0 22.3 + 42.750 522.0 23.2 + 42.800 477.0 22.1 + 42.850 509.0 22.9 + 42.900 494.0 22.5 + 42.950 524.0 23.3 + 43.000 538.0 23.6 + 43.050 556.0 24.2 + 43.100 546.0 23.8 + 43.150 528.0 23.7 + 43.200 506.0 23.1 + 43.250 547.0 24.0 + 43.300 551.0 24.2 + 43.350 551.0 24.2 + 43.400 575.0 24.5 + 43.450 526.0 23.8 + 43.500 582.0 24.9 + 43.550 577.0 24.8 + 43.600 642.0 26.3 + 43.650 557.0 24.4 + 43.700 609.0 25.4 + 43.750 554.0 24.3 + 43.800 565.0 24.5 + 43.850 513.0 23.2 + 43.900 537.0 24.0 + 43.950 551.0 24.1 + 44.000 533.0 23.6 + 44.050 493.0 22.8 + 44.100 486.0 22.7 + 44.150 498.0 22.6 + 44.200 473.0 22.3 + 44.250 488.0 22.4 + 44.300 517.0 23.0 + 44.350 505.0 22.8 + 44.400 484.0 22.3 + 44.450 484.0 22.1 + 44.500 461.0 21.8 + 44.550 468.0 21.7 + 44.600 490.0 22.2 + 44.650 475.0 25.4 + 44.700 497.0 22.4 + 44.750 463.0 21.4 + 44.800 513.0 26.4 + 44.850 465.0 21.4 + 44.900 510.0 22.5 + 44.950 459.0 24.7 + 45.000 524.0 22.8 + 45.050 508.0 22.3 + 45.100 479.0 25.2 + 45.150 479.0 21.6 + 45.200 488.0 21.8 + 45.250 489.0 25.1 + 45.300 451.0 20.9 + 45.350 447.0 20.8 + 45.400 475.0 24.8 + 45.450 441.0 20.7 + 45.500 496.0 21.9 + 45.550 498.0 25.4 + 45.600 490.0 21.8 + 45.650 499.0 21.9 + 45.700 502.0 25.5 + 45.750 484.0 21.7 + 45.800 488.0 21.7 + 45.850 477.0 21.5 + 45.900 515.0 22.4 + 45.950 427.0 20.3 + 46.000 512.0 22.3 + 46.050 491.0 21.9 + 46.100 474.0 21.4 + 46.150 493.0 21.9 + 46.200 482.0 21.7 + 46.250 461.0 21.2 + 46.300 484.0 21.8 + 46.350 509.0 22.4 + 46.400 468.0 21.3 + 46.450 458.0 21.2 + 46.500 508.0 22.3 + 46.550 480.0 21.7 + 46.600 488.0 21.9 + 46.650 498.0 22.2 + 46.700 500.0 22.1 + 46.750 491.0 22.0 + 46.800 537.0 23.0 + 46.850 534.0 23.0 + 46.900 508.0 22.4 + 46.950 539.0 23.0 + 47.000 514.0 22.5 + 47.050 618.0 24.7 + 47.100 589.0 24.0 + 47.150 604.0 24.4 + 47.200 642.0 25.2 + 47.250 647.0 25.3 + 47.300 688.0 26.1 + 47.350 708.0 26.5 + 47.400 681.0 25.9 + 47.450 688.0 26.0 + 47.500 672.0 25.8 + 47.550 615.0 24.7 + 47.600 647.0 25.3 + 47.650 627.0 25.0 + 47.700 616.0 24.7 + 47.750 601.0 24.3 + 47.800 598.0 24.4 + 47.850 600.0 24.4 + 47.900 549.0 23.3 + 47.950 600.0 24.4 + 48.000 606.0 24.5 + 48.050 593.0 24.2 + 48.100 631.0 25.0 + 48.150 613.0 24.8 + 48.200 628.0 24.9 + 48.250 616.0 24.9 + 48.300 662.0 25.8 + 48.350 684.0 26.1 + 48.400 694.0 26.4 + 48.450 706.0 26.7 + 48.500 796.0 28.1 + 48.550 898.0 30.3 + 48.600 1043.0 32.5 + 48.650 1378.0 37.4 + 48.700 1537.0 39.7 + 48.750 1988.0 45.1 + 48.800 2589.0 51.3 + 48.850 3255.0 58.3 + 48.900 4058.0 64.5 + 48.950 4936.0 71.7 + 49.000 5974.0 78.9 + 49.050 6954.0 85.2 + 49.100 7791.0 90.1 + 49.150 8641.0 96.3 + 49.200 9165.0 97.8 + 49.250 9243.0 99.4 + 49.300 9062.0 98.7 + 49.350 8243.0 93.9 + 49.400 7145.0 87.4 + 49.450 5882.0 80.2 + 49.500 4853.0 72.0 + 49.550 3695.0 63.4 + 49.600 2978.0 57.1 + 49.650 2287.0 49.8 + 49.700 1784.0 44.1 + 49.750 1465.0 40.1 + 49.800 1120.0 34.8 + 49.850 1003.0 33.2 + 49.900 863.0 30.8 + 49.950 832.0 30.2 + 50.000 708.0 27.9 + 50.050 690.0 27.5 + 50.100 650.0 26.7 + 50.150 672.0 27.0 + 50.200 702.0 27.7 + 50.250 677.0 27.1 + 50.300 690.0 27.4 + 50.350 644.0 26.3 + 50.400 677.0 27.1 + 50.450 711.0 27.6 + 50.500 650.0 26.5 + 50.550 696.0 27.2 + 50.600 712.0 27.6 + 50.650 658.0 26.3 + 50.700 690.0 27.0 + 50.750 644.0 25.9 + 50.800 609.0 25.3 + 50.850 636.0 25.7 + 50.900 584.0 24.7 + 50.950 550.0 23.7 + 51.000 520.0 23.1 + 51.050 519.0 23.0 + 51.100 541.0 23.5 + 51.150 548.0 23.5 + 51.200 518.0 23.0 + 51.250 495.0 22.3 + 51.300 479.0 22.0 + 51.350 522.0 22.8 + 51.400 495.0 22.3 + 51.450 490.0 22.0 + 51.500 516.0 22.7 + 51.550 528.0 22.8 + 51.600 521.0 22.7 + 51.650 538.0 23.0 + 51.700 547.0 23.2 + 51.750 506.0 22.3 + 51.800 517.0 22.6 + 51.850 522.0 22.7 + 51.900 529.0 22.8 + 51.950 505.0 22.3 + 52.000 527.0 22.8 + 52.050 540.0 23.0 + 52.100 550.0 23.2 + 52.150 575.0 23.8 + 52.200 608.0 24.4 + 52.250 624.0 24.6 + 52.300 628.0 24.8 + 52.350 596.0 24.1 + 52.400 684.0 25.8 + 52.450 660.0 25.3 + 52.500 712.0 26.3 + 52.550 677.0 25.6 + 52.600 654.0 25.2 + 52.650 650.0 25.2 + 52.700 613.0 24.4 + 52.750 564.0 23.4 + 52.800 573.0 23.6 + 52.850 588.0 23.9 + 52.900 520.0 22.4 + 52.950 519.0 22.5 + 53.000 493.0 21.9 + 53.050 467.0 21.2 + 53.100 485.0 21.8 + 53.150 493.0 21.8 + 53.200 484.0 21.6 + 53.250 464.0 21.2 + 53.300 458.0 21.0 + 53.350 498.0 21.9 + 53.400 522.0 22.5 + 53.450 503.0 22.0 + 53.500 488.0 21.7 + 53.550 470.0 21.4 + 53.600 482.0 21.6 + 53.650 492.0 21.8 + 53.700 483.0 21.7 + 53.750 483.0 21.6 + 53.800 512.0 22.2 + 53.850 533.0 22.8 + 53.900 459.0 21.1 + 53.950 507.0 22.1 + 54.000 504.0 22.1 + 54.050 526.0 22.5 + 54.100 480.0 21.5 + 54.150 476.0 21.4 + 54.200 454.0 20.9 + 54.250 482.0 21.5 + 54.300 473.0 21.4 + 54.350 537.0 22.7 + 54.400 485.0 21.6 + 54.450 498.0 21.9 + 54.500 526.0 22.5 + 54.550 540.0 22.9 + 54.600 550.0 23.1 + 54.650 588.0 23.9 + 54.700 671.0 25.6 + 54.750 691.0 25.9 + 54.800 783.0 27.6 + 54.850 830.0 28.5 + 54.900 892.0 29.4 + 54.950 966.0 30.8 + 55.000 1083.0 32.6 + 55.050 1157.0 33.6 + 55.100 1090.0 32.7 + 55.150 1121.0 33.4 + 55.200 1016.0 31.5 + 55.250 949.0 30.8 + 55.300 828.0 28.7 + 55.350 748.0 27.3 + 55.400 669.0 25.9 + 55.450 640.0 25.6 + 55.500 580.0 24.0 + 55.550 550.0 23.8 + 55.600 566.0 24.1 + 55.650 527.0 23.2 + 55.700 506.0 22.9 + 55.750 515.0 23.1 + 55.800 476.0 22.0 + 55.850 467.0 22.1 + 55.900 508.0 23.0 + 55.950 527.0 23.5 + 56.000 490.0 22.7 + 56.050 507.0 23.2 + 56.100 484.0 22.5 + 56.150 511.0 23.2 + 56.200 508.0 23.2 + 56.250 477.0 22.5 + 56.300 503.0 23.1 + 56.350 518.0 23.5 + 56.400 514.0 23.4 + 56.450 478.0 22.5 + 56.500 484.0 22.7 + 56.550 497.0 22.9 + 56.600 506.0 23.1 + 56.650 563.0 24.4 + 56.700 565.0 24.4 + 56.750 573.0 24.5 + 56.800 594.0 25.0 + 56.850 551.0 23.9 + 56.900 645.0 26.0 + 56.950 662.0 26.2 + 57.000 665.0 26.3 + 57.050 696.0 26.7 + 57.100 666.0 26.3 + 57.150 701.0 26.7 + 57.200 695.0 26.6 + 57.250 701.0 26.6 + 57.300 647.0 25.6 + 57.350 605.0 24.6 + 57.400 563.0 23.8 + 57.450 584.0 24.1 + 57.500 588.0 24.3 + 57.550 530.0 22.9 + 57.600 558.0 23.6 + 57.650 523.0 22.7 + 57.700 527.0 22.8 + 57.750 556.0 23.4 + 57.800 569.0 23.7 + 57.850 614.0 24.5 + 57.900 669.0 25.6 + 57.950 659.0 25.3 + 58.000 714.0 26.5 + 58.050 733.0 26.7 + 58.100 816.0 28.1 + 58.150 879.0 29.2 + 58.200 873.0 29.1 + 58.250 963.0 30.6 + 58.300 1071.0 32.3 + 58.350 1091.0 32.6 + 58.400 1036.0 31.7 + 58.450 982.0 30.9 + 58.500 896.0 29.5 + 58.550 886.0 29.4 + 58.600 793.0 27.8 + 58.650 738.0 26.8 + 58.700 712.0 26.4 + 58.750 659.0 25.3 + 58.800 704.0 26.2 + 58.850 739.0 26.9 + 58.900 813.0 28.1 + 58.950 812.0 28.1 + 59.000 913.0 29.9 + 59.050 1011.0 31.2 + 59.100 1136.0 33.3 + 59.150 1278.0 35.5 + 59.200 1323.0 35.7 + 59.250 1546.0 39.0 + 59.300 1586.0 39.6 + 59.350 1665.0 40.1 + 59.400 1576.0 39.4 + 59.450 1578.0 39.5 + 59.500 1432.0 37.2 + 59.550 1311.0 35.9 + 59.600 1114.0 33.2 + 59.650 929.0 30.2 + 59.700 829.0 28.6 + 59.750 764.0 27.5 + 59.800 654.0 25.3 + 59.850 626.0 24.8 + 59.900 609.0 24.6 + 59.950 539.0 23.0 + 60.000 612.0 24.5 + 60.050 574.0 23.8 + 60.100 575.0 23.7 + 60.150 511.0 22.4 + 60.200 539.0 23.1 + 60.250 537.0 22.9 + 60.300 561.0 23.5 + 60.350 502.0 22.3 + 60.400 514.0 22.4 + 60.450 534.0 22.8 + 60.500 511.0 22.4 + 60.550 514.0 22.5 + 60.600 480.0 21.6 + 60.650 519.0 22.6 + 60.700 493.0 22.0 + 60.750 520.0 22.6 + 60.800 509.0 22.4 + 60.850 563.0 23.5 + 60.900 518.0 22.5 + 60.950 503.0 22.2 + 61.000 539.0 23.0 + 61.050 521.0 22.7 + 61.100 555.0 23.3 + 61.150 545.0 23.2 + 61.200 522.0 22.7 + 61.250 554.0 23.4 + 61.300 527.0 22.9 + 61.350 480.0 22.0 + 61.400 503.0 22.3 + 61.450 522.0 22.9 + 61.500 528.0 23.0 + 61.550 564.0 23.7 + 61.600 531.0 23.1 + 61.650 514.0 23.0 + 61.700 576.0 24.0 + 61.750 558.0 23.8 + 61.800 592.0 24.6 + 61.850 640.0 25.5 + 61.900 699.0 26.7 + 61.950 742.0 27.9 + 62.000 823.0 28.9 + 62.050 961.0 31.6 + 62.100 1064.0 33.3 + 62.150 1283.0 36.4 + 62.200 1548.0 40.1 + 62.250 1777.0 43.3 + 62.300 2044.0 46.0 + 62.350 2199.0 48.0 + 62.400 2490.0 51.3 + 62.450 2513.0 51.3 + 62.500 2490.0 51.1 + 62.550 2318.0 49.6 + 62.600 1999.0 45.8 + 62.650 1738.0 42.7 + 62.700 1450.0 39.2 + 62.750 1220.0 35.9 + 62.800 1064.0 33.4 + 62.850 905.0 30.9 + 62.900 791.0 28.9 + 62.950 779.0 28.5 + 63.000 620.0 25.6 + 63.050 585.0 24.7 + 63.100 614.0 25.3 + 63.150 569.0 24.3 + 63.200 542.0 23.8 + 63.250 554.0 23.8 + 63.300 556.0 24.0 + 63.350 510.0 22.8 + 63.400 486.0 22.3 + 63.450 506.0 22.6 + 63.500 564.0 24.0 + 63.550 555.0 23.5 + 63.600 509.0 22.7 + 63.650 512.0 22.6 + 63.700 474.0 21.7 + 63.750 514.0 22.5 + 63.800 557.0 23.6 + 63.850 559.0 23.4 + 63.900 494.0 22.1 + 63.950 509.0 22.3 + 64.000 509.0 22.3 + 64.050 495.0 21.8 + 64.100 481.0 21.7 + 64.150 549.0 23.0 + 64.200 503.0 22.0 + 64.250 541.0 22.8 + 64.300 508.0 22.1 + 64.350 497.0 21.8 + 64.400 565.0 23.3 + 64.450 516.0 22.2 + 64.500 536.0 22.7 + 64.550 551.0 23.0 + 64.600 542.0 22.8 + 64.650 519.0 22.3 + 64.700 554.0 23.1 + 64.750 563.0 23.3 + 64.800 561.0 23.1 + 64.850 614.0 24.3 + 64.900 594.0 23.9 + 64.950 689.0 25.7 + 65.000 660.0 25.2 + 65.050 669.0 25.3 + 65.100 693.0 25.8 + 65.150 754.0 27.0 + 65.200 747.0 26.8 + 65.250 724.0 26.4 + 65.300 675.0 25.5 + 65.350 649.0 25.0 + 65.400 591.0 23.8 + 65.450 636.0 24.8 + 65.500 626.0 24.5 + 65.550 596.0 24.0 + 65.600 581.0 23.7 + 65.650 582.0 23.7 + 65.700 566.0 23.4 + 65.750 587.0 23.8 + 65.800 565.0 23.4 + 65.850 577.0 23.6 + 65.900 567.0 23.5 + 65.950 619.0 24.4 + 66.000 629.0 24.6 + 66.050 608.0 24.3 + 66.100 601.0 24.0 + 66.150 652.0 25.0 + 66.200 650.0 25.1 + 66.250 688.0 25.7 + 66.300 694.0 25.8 + 66.350 800.0 27.9 + 66.400 877.0 29.1 + 66.450 1012.0 31.2 + 66.500 1257.0 34.9 + 66.550 1440.0 37.3 + 66.600 1776.0 41.4 + 66.650 2150.0 45.7 + 66.700 2669.0 50.8 + 66.750 3004.0 54.0 + 66.800 3737.0 60.3 + 66.850 4108.0 63.2 + 66.900 4586.0 66.7 + 66.950 4872.0 68.9 + 67.000 4946.0 69.4 + 67.050 4721.0 68.0 + 67.100 4242.0 64.3 + 67.150 3747.0 60.6 + 67.200 3067.0 54.8 + 67.250 2384.0 48.3 + 67.300 1984.0 44.0 + 67.350 1620.0 39.9 + 67.400 1315.0 35.8 + 67.450 1198.0 34.5 + 67.500 1084.0 32.7 + 67.550 910.0 30.0 + 67.600 885.0 29.7 + 67.650 904.0 30.0 + 67.700 874.0 29.4 + 67.750 872.0 29.7 + 67.800 885.0 29.7 + 67.850 987.0 31.5 + 67.900 900.0 30.1 + 67.950 912.0 30.2 + 68.000 952.0 30.9 + 68.050 865.0 29.7 + 68.100 832.0 28.8 + 68.150 734.0 27.4 + 68.200 697.0 26.7 + 68.250 671.0 26.2 + 68.300 670.0 26.2 + 68.350 628.0 25.5 + 68.400 604.0 24.9 + 68.450 595.0 24.9 + 68.500 593.0 24.8 + 68.550 560.0 24.1 + 68.600 609.0 25.2 + 68.650 558.0 24.1 + 68.700 583.0 24.6 + 68.750 573.0 24.6 + 68.800 610.0 25.2 + 68.850 642.0 26.0 + 68.900 678.0 26.8 + 68.950 591.0 24.9 + 69.000 665.0 26.4 + 69.050 642.0 26.1 + 69.100 655.0 26.1 + 69.150 652.0 26.2 + 69.200 658.0 26.5 + 69.250 653.0 26.1 + 69.300 602.0 25.2 + 69.350 591.0 25.0 + 69.400 554.0 24.0 + 69.450 538.0 23.7 + 69.500 557.0 24.3 + 69.550 543.0 23.7 + 69.600 537.0 23.6 + 69.650 493.0 22.6 + 69.700 541.0 23.7 + 69.750 520.0 23.1 + 69.800 514.0 23.0 + 69.850 542.0 23.4 + 69.900 518.0 23.0 + 69.950 505.0 22.6 + 70.000 513.0 22.7 + 70.050 530.0 23.1 + 70.100 557.0 23.7 + 70.150 524.0 22.8 + 70.200 510.0 22.7 + 70.250 541.0 23.2 + 70.300 565.0 23.7 + 70.350 574.0 23.9 + 70.400 559.0 23.6 + 70.450 609.0 24.5 + 70.500 561.0 23.6 + 70.550 592.0 24.1 + 70.600 588.0 24.1 + 70.650 560.0 23.5 + 70.700 537.0 23.0 + 70.750 601.0 24.3 + 70.800 594.0 24.2 + 70.850 589.0 24.1 + 70.900 541.0 23.0 + 70.950 516.0 22.4 + 71.000 562.0 23.5 + 71.050 586.0 24.0 + 71.100 526.0 22.6 + 71.150 519.0 22.6 + 71.200 557.0 23.4 + 71.250 539.0 22.9 + 71.300 477.0 21.7 + 71.350 589.0 24.0 + 71.400 522.0 22.6 + 71.450 536.0 23.0 + 71.500 554.0 23.3 + 71.550 560.0 23.4 + 71.600 589.0 24.1 + 71.650 625.0 24.7 + 71.700 625.0 24.7 + 71.750 629.0 24.9 + 71.800 699.0 26.2 + 71.850 768.0 27.5 + 71.900 829.0 28.6 + 71.950 1051.0 32.1 + 72.000 1038.0 31.9 + 72.050 1215.0 34.6 + 72.100 1379.0 36.7 + 72.150 1489.0 38.3 + 72.200 1670.0 40.5 + 72.250 1666.0 40.3 + 72.300 1678.0 40.7 + 72.350 1697.0 40.8 + 72.400 1439.0 37.5 + 72.450 1290.0 35.6 + 72.500 1142.0 33.4 + 72.550 956.0 30.5 + 72.600 863.0 29.1 + 72.650 722.0 26.6 + 72.700 740.0 26.8 + 72.750 669.0 25.5 + 72.800 589.0 24.0 + 72.850 579.0 23.7 + 72.900 559.0 23.3 + 72.950 598.0 24.2 + 73.000 545.0 23.0 + 73.050 530.0 22.7 + 73.100 500.0 22.2 + 73.150 518.0 22.5 + 73.200 537.0 22.8 + 73.250 543.0 23.1 + 73.300 557.0 23.3 + 73.350 545.0 23.0 + 73.400 535.0 22.9 + 73.450 530.0 22.8 + 73.500 522.0 22.5 + 73.550 552.0 23.3 + 73.600 529.0 22.8 + 73.650 512.0 22.4 + 73.700 557.0 23.4 + 73.750 538.0 23.1 + 73.800 487.0 21.8 + 73.850 528.0 22.8 + 73.900 537.0 23.1 + 73.950 526.0 22.8 + 74.000 528.0 22.8 + 74.050 531.0 23.0 + 74.100 533.0 23.0 + 74.150 532.0 23.0 + 74.200 513.0 22.6 + 74.250 525.0 22.9 + 74.300 518.0 22.7 + 74.350 526.0 23.0 + 74.400 572.0 23.9 + 74.450 545.0 23.6 + 74.500 537.0 23.3 + 74.550 523.0 23.1 + 74.600 560.0 23.9 + 74.650 531.0 23.4 + 74.700 524.0 23.2 + 74.750 509.0 23.1 + 74.800 512.0 23.1 + 74.850 511.0 23.2 + 74.900 541.0 23.8 + 74.950 548.0 24.1 + 75.000 543.0 23.9 + 75.050 526.0 23.9 + 75.100 559.0 24.3 + 75.150 528.0 23.8 + 75.200 544.0 24.3 + 75.250 534.0 24.0 + 75.300 522.0 23.6 + 75.350 524.0 24.0 + 75.400 537.0 24.1 + 75.450 558.0 24.6 + 75.500 549.0 24.6 + 75.550 539.0 24.3 + 75.600 606.0 25.7 + 75.650 558.0 24.7 + 75.700 565.0 24.8 + 75.750 631.0 26.2 + 75.800 549.0 24.5 + 75.850 575.0 24.8 + 75.900 576.0 25.1 + 75.950 591.0 25.3 + 76.000 547.0 24.2 + 76.050 558.0 24.4 + 76.100 596.0 25.4 + 76.150 568.0 24.4 + 76.200 618.0 25.7 + 76.250 573.0 24.6 + 76.300 618.0 25.5 + 76.350 679.0 26.6 + 76.400 705.0 27.3 + 76.450 646.0 25.6 + 76.500 681.0 26.7 + 76.550 806.0 28.7 + 76.600 853.0 29.5 + 76.650 1016.0 32.2 + 76.700 1167.0 34.6 + 76.750 1346.0 36.6 + 76.800 1562.0 39.9 + 76.850 1808.0 42.6 + 76.900 2223.0 47.0 + 76.950 2555.0 50.2 + 77.000 2935.0 54.3 + 77.050 3212.0 56.3 + 77.100 3435.0 58.2 + 77.150 3599.0 59.4 + 77.200 3680.0 60.3 + 77.250 3558.0 59.0 + 77.300 3258.0 56.5 + 77.350 2846.0 52.8 + 77.400 2409.0 48.6 + 77.450 2022.0 44.3 + 77.500 1708.0 40.9 + 77.550 1346.0 36.3 + 77.600 1185.0 33.9 + 77.650 1070.0 32.2 + 77.700 976.0 30.9 + 77.750 1002.0 31.2 + 77.800 1022.0 31.4 + 77.850 1005.0 31.3 + 77.900 1033.0 31.7 + 77.950 1129.0 33.0 + 78.000 1205.0 34.2 + 78.050 1226.0 34.5 + 78.100 1284.0 35.2 + 78.150 1250.0 34.9 + 78.200 1195.0 34.1 + 78.250 1150.0 33.3 + 78.300 1057.0 32.1 + 78.350 964.0 30.6 + 78.400 935.0 30.0 + 78.450 849.0 28.8 + 78.500 768.0 27.3 + 78.550 720.0 26.3 + 78.600 724.0 26.6 + 78.650 641.0 25.2 + 78.700 686.0 25.6 + 78.750 651.0 25.1 + 78.800 626.0 24.9 + 78.850 617.0 24.3 + 78.900 611.0 24.3 + 78.950 539.0 23.2 + 79.000 626.0 24.5 + 79.050 608.0 24.2 + 79.100 590.0 24.2 + 79.150 568.0 23.4 + 79.200 607.0 24.2 + 79.250 615.0 24.7 + 79.300 641.0 24.8 + 79.350 716.0 26.5 + 79.400 674.0 25.8 + 79.450 754.0 26.9 + 79.500 758.0 27.2 + 79.550 751.0 27.1 + 79.600 825.0 28.1 + 79.650 865.0 33.5 + 79.700 798.0 28.0 + 79.750 828.0 32.6 + 79.800 784.0 32.0 + 79.850 742.0 26.6 + 79.900 687.0 29.7 + 79.950 628.0 28.7 + 80.000 618.0 24.2 + 80.050 592.0 27.8 + 80.100 574.0 27.5 + 80.150 516.0 22.2 + 80.200 505.0 25.7 + 80.250 538.0 26.8 + 80.300 518.0 22.2 + 80.350 543.0 26.9 + 80.400 522.0 26.4 + 80.450 539.0 22.9 + 80.500 495.0 25.7 + 80.550 515.0 26.5 + 80.600 512.0 22.3 + 80.650 522.0 26.7 + 80.700 460.0 25.0 + 80.750 512.0 22.6 + 80.800 495.0 26.0 + 80.850 523.0 23.2 + 80.900 500.0 22.3 + 80.950 529.0 23.5 + 81.000 511.0 22.9 + 81.050 484.0 22.4 + 81.100 475.0 22.2 + 81.150 498.0 22.9 + 81.200 514.0 23.0 + 81.250 561.0 24.4 + 81.300 511.0 23.2 + 81.350 495.0 22.8 + 81.400 482.0 22.7 + 81.450 546.0 24.1 + 81.500 537.0 23.8 + 81.550 496.0 23.2 + 81.600 535.0 23.9 + 81.650 523.0 23.6 + 81.700 477.0 22.7 + 81.750 555.0 24.4 + 81.800 492.0 22.9 + 81.850 517.0 23.7 + 81.900 484.0 22.8 + 81.950 536.0 24.1 + 82.000 553.0 24.5 + 82.050 485.0 22.8 + 82.100 549.0 24.4 + 82.150 526.0 23.7 + 82.200 538.0 24.0 + 82.250 512.0 23.4 + 82.300 509.0 23.3 + 82.350 540.0 23.8 + 82.400 556.0 24.4 + 82.450 527.0 23.4 + 82.500 556.0 24.2 + 82.550 543.0 23.8 + 82.600 575.0 24.4 + 82.650 570.0 24.2 + 82.700 564.0 24.3 + 82.750 567.0 24.0 + 82.800 591.0 24.6 + 82.850 594.0 24.6 + 82.900 600.0 24.7 + 82.950 569.0 23.8 + 83.000 646.0 25.6 + 83.050 604.0 24.5 + 83.100 625.0 25.0 + 83.150 601.0 24.4 + 83.200 596.0 24.3 + 83.250 568.0 23.5 + 83.300 605.0 24.5 + 83.350 567.0 23.5 + 83.400 529.0 22.7 + 83.450 569.0 23.6 + 83.500 564.0 23.4 + 83.550 545.0 22.9 + 83.600 515.0 22.4 + 83.650 554.0 23.1 + 83.700 561.0 23.3 + 83.750 528.0 22.6 + 83.800 527.0 22.6 + 83.850 516.0 22.3 + 83.900 541.0 22.8 + 83.950 525.0 22.5 + 84.000 493.0 21.8 + 84.050 526.0 22.4 + 84.100 531.0 22.6 + 84.150 514.0 22.2 + 84.200 559.0 23.1 + 84.250 536.0 22.7 + 84.300 567.0 23.3 + 84.350 568.0 23.3 + 84.400 575.0 23.5 + 84.450 535.0 22.7 + 84.500 547.0 22.8 + 84.550 552.0 23.0 + 84.600 576.0 23.5 + 84.650 540.0 22.6 + 84.700 573.0 23.5 + 84.750 533.0 22.7 + 84.800 568.0 23.2 + 84.850 574.0 23.5 + 84.900 613.0 24.4 + 84.950 611.0 24.2 + 85.000 638.0 24.8 + 85.050 654.0 25.2 + 85.100 671.0 25.3 + 85.150 690.0 25.8 + 85.200 750.0 26.9 + 85.250 785.0 27.5 + 85.300 846.0 28.5 + 85.350 889.0 29.4 + 85.400 991.0 30.9 + 85.450 1174.0 33.8 + 85.500 1310.0 35.7 + 85.550 1472.0 37.8 + 85.600 1667.0 40.3 + 85.650 1952.0 43.7 + 85.700 2123.0 45.4 + 85.750 2252.0 46.8 + 85.800 2470.0 49.1 + 85.850 2548.0 49.9 + 85.900 2469.0 49.0 + 85.950 2559.0 50.0 + 86.000 2353.0 47.9 + 86.050 2229.0 46.8 + 86.100 2050.0 44.8 + 86.150 1751.0 41.5 + 86.200 1516.0 38.6 + 86.250 1356.0 36.5 + 86.300 1177.0 34.0 + 86.350 1108.0 33.0 + 86.400 1040.0 31.9 + 86.450 1013.0 31.6 + 86.500 1052.0 32.2 + 86.550 990.0 31.3 + 86.600 1116.0 33.2 + 86.650 1126.0 33.4 + 86.700 1218.0 34.7 + 86.750 1310.0 36.1 + 86.800 1389.0 37.1 + 86.850 1485.0 38.5 + 86.900 1558.0 39.4 + 86.950 1623.0 40.3 + 87.000 1710.0 41.3 + 87.050 1820.0 42.8 + 87.100 1849.0 43.0 + 87.150 2076.0 46.1 + 87.200 2140.0 46.4 + 87.250 2159.0 46.9 + 87.300 2380.0 49.3 + 87.350 2413.0 49.8 + 87.400 2343.0 48.8 + 87.450 2207.0 48.0 + 87.500 1913.0 44.3 + 87.550 1695.0 42.0 + 87.600 1492.0 39.5 + 87.650 1208.0 35.6 + 87.700 1008.0 32.4 + 87.750 871.0 30.4 + 87.800 829.0 29.5 + 87.850 750.0 28.2 + 87.900 719.0 27.7 + 87.950 638.0 25.9 + 88.000 594.0 25.0 + 88.050 594.0 25.3 + 88.100 574.0 24.6 + 88.150 558.0 24.3 + 88.200 594.0 25.2 + 88.250 571.0 24.6 + 88.300 554.0 24.2 + 88.350 604.0 25.3 + 88.400 580.0 24.8 + 88.450 536.0 23.8 + 88.500 522.0 23.5 + 88.550 572.0 24.4 + 88.600 539.0 23.8 + 88.650 524.0 23.4 + 88.700 547.0 23.9 + 88.750 528.0 23.3 + 88.800 548.0 24.0 + 88.850 523.0 23.1 + 88.900 490.0 22.4 + 88.950 518.0 23.0 + 89.000 526.0 23.2 + 89.050 505.0 22.4 + 89.100 507.0 22.7 + 89.150 506.0 22.4 + 89.200 514.0 22.6 + 89.250 509.0 22.5 + 89.300 515.0 22.6 + 89.350 498.0 22.1 + 89.400 492.0 22.1 + 89.450 522.0 22.5 + 89.500 503.0 22.2 + 89.550 493.0 21.9 + 89.600 491.0 21.8 + 89.650 487.0 21.7 + 89.700 458.0 21.1 + 89.750 522.0 22.3 + 89.800 515.0 22.3 + 89.850 486.0 21.6 + 89.900 476.0 21.3 + 89.950 498.0 21.9 + 90.000 493.0 21.8 + 90.050 476.0 21.3 + 90.100 523.0 22.5 + 90.150 530.0 22.5 + 90.200 553.0 23.0 + 90.250 554.0 23.2 + 90.300 523.0 22.3 + 90.350 490.0 21.6 + 90.400 510.0 22.2 + 90.450 473.0 21.3 + 90.500 535.0 22.6 + 90.550 473.0 21.4 + 90.600 496.0 21.8 + 90.650 516.0 22.2 + 90.700 483.0 21.6 + 90.750 516.0 22.3 + 90.800 513.0 22.2 + 90.850 504.0 22.2 + 90.900 527.0 22.6 + 90.950 517.0 22.3 + 91.000 539.0 23.0 + 91.050 519.0 22.5 + 91.100 502.0 22.0 + 91.150 556.0 23.3 + 91.200 540.0 22.9 + 91.250 524.0 22.5 + 91.300 578.0 23.8 + 91.350 542.0 23.1 + 91.400 543.0 22.9 + 91.450 527.0 22.7 + 91.500 596.0 24.2 + 91.550 578.0 23.8 + 91.600 622.0 24.7 + 91.650 696.0 26.2 + 91.700 699.0 26.1 + 91.750 705.0 26.3 + 91.800 794.0 28.0 + 91.850 805.0 28.0 + 91.900 848.0 28.8 + 91.950 792.0 27.8 + 92.000 816.0 28.2 + 92.050 860.0 29.0 + 92.100 776.0 27.5 + 92.150 765.0 27.4 + 92.200 819.0 28.3 + 92.250 685.0 25.7 + 92.300 690.0 26.0 + 92.350 666.0 25.5 + 92.400 605.0 24.2 + 92.450 657.0 25.2 + 92.500 617.0 24.5 + 92.550 574.0 23.5 + 92.600 512.0 22.3 + 92.650 522.0 22.6 + 92.700 542.0 22.8 + 92.750 568.0 23.4 + 92.800 548.0 23.1 + 92.850 549.0 23.0 + 92.900 552.0 23.1 + 92.950 564.0 23.4 + 93.000 548.0 23.0 + 93.050 560.0 23.3 + 93.100 551.0 23.2 + 93.150 569.0 23.5 + 93.200 565.0 23.4 + 93.250 553.0 23.3 + 93.300 555.0 23.2 + 93.350 591.0 24.0 + 93.400 598.0 24.2 + 93.450 617.0 24.8 + 93.500 595.0 24.1 + 93.550 719.0 26.9 + 93.600 627.0 25.0 + 93.650 683.0 26.2 + 93.700 653.0 25.6 + 93.750 657.0 25.9 + 93.800 657.0 25.7 + 93.850 582.0 24.5 + 93.900 637.0 25.4 + 93.950 651.0 25.9 + 94.000 557.0 23.9 + 94.050 567.0 24.3 + 94.100 574.0 24.4 + 94.150 526.0 23.5 + 94.200 547.0 23.9 + 94.250 519.0 23.5 + 94.300 537.0 23.8 + 94.350 529.0 23.7 + 94.400 565.0 24.5 + 94.450 568.0 24.6 + 94.500 558.0 24.3 + 94.550 588.0 25.3 + 94.600 551.0 24.2 + 94.650 546.0 24.1 + 94.700 550.0 24.5 + 94.750 583.0 24.9 + 94.800 524.0 23.6 + 94.850 551.0 24.4 + 94.900 600.0 25.2 + 94.950 610.0 25.3 + 95.000 619.0 25.9 + 95.050 632.0 25.7 + 95.100 687.0 26.9 + 95.150 639.0 26.0 + 95.200 750.0 28.0 + 95.250 774.0 28.2 + 95.300 845.0 29.9 + 95.350 852.0 29.4 + 95.400 960.0 31.4 + 95.450 991.0 32.0 + 95.500 1098.0 33.4 + 95.550 1152.0 34.0 + 95.600 1150.0 34.5 + 95.650 1185.0 34.3 + 95.700 1290.0 36.0 + 95.750 1320.0 36.1 + 95.800 1355.0 36.8 + 95.850 1492.0 38.3 + 95.900 1498.0 38.5 + 95.950 1636.0 39.9 + 96.000 1660.0 40.4 + 96.050 1728.0 40.9 + 96.100 1646.0 40.1 + 96.150 1644.0 39.9 + 96.200 1508.0 38.2 + 96.250 1449.0 37.4 + 96.300 1269.0 35.1 + 96.350 1164.0 33.4 + 96.400 1031.0 31.5 + 96.450 944.0 30.1 + 96.500 816.0 28.0 + 96.550 766.0 27.1 + 96.600 687.0 25.7 + 96.650 663.0 25.2 + 96.700 592.0 23.9 + 96.750 589.0 23.8 + 96.800 591.0 23.8 + 96.850 615.0 24.2 + 96.900 606.0 24.1 + 96.950 555.0 23.1 + 97.000 573.0 23.4 + 97.050 576.0 23.4 + 97.100 550.0 23.0 + 97.150 559.0 23.1 + 97.200 569.0 23.3 + 97.250 529.0 22.6 + 97.300 573.0 23.4 + 97.350 568.0 23.3 + 97.400 586.0 23.7 + 97.450 612.0 24.2 + 97.500 587.0 23.6 + 97.550 633.0 24.6 + 97.600 659.0 25.1 + 97.650 633.0 24.5 + 97.700 671.0 25.3 + 97.750 691.0 25.6 + 97.800 813.0 27.8 + 97.850 838.0 28.3 + 97.900 889.0 29.1 + 97.950 914.0 29.5 + 98.000 1062.0 31.9 + 98.050 1164.0 33.3 + 98.100 1322.0 35.5 + 98.150 1420.0 36.7 + 98.200 1512.0 38.0 + 98.250 1562.0 38.4 + 98.300 1584.0 38.7 + 98.350 1560.0 38.5 + 98.400 1516.0 37.8 + 98.450 1470.0 37.2 + 98.500 1409.0 36.6 + 98.550 1238.0 34.1 + 98.600 1162.0 33.0 + 98.650 978.0 30.5 + 98.700 889.0 28.9 + 98.750 808.0 27.7 + 98.800 817.0 27.9 + 98.850 744.0 26.4 + 98.900 657.0 25.0 + 98.950 629.0 24.5 + 99.000 602.0 23.8 + 99.050 660.0 25.0 + 99.100 558.0 23.1 + 99.150 564.0 23.1 + 99.200 576.0 23.4 + 99.250 569.0 23.3 + 99.300 547.0 22.7 + 99.350 573.0 23.5 + 99.400 544.0 22.8 + 99.450 541.0 22.7 + 99.500 543.0 22.8 + 99.550 575.0 23.5 + 99.600 580.0 23.5 + 99.650 546.0 23.1 + 99.700 595.0 23.9 + 99.750 540.0 22.9 + 99.800 564.0 23.5 + 99.850 532.0 22.7 + 99.900 537.0 22.8 + 99.950 552.0 23.4 + 100.000 566.0 23.4 + 100.050 571.0 23.8 + 100.100 596.0 24.3 + 100.150 553.0 23.4 + 100.200 571.0 23.8 + 100.250 609.0 24.8 + 100.300 562.0 23.6 + 100.350 592.0 24.5 + 100.400 607.0 24.7 + 100.450 609.0 24.8 + 100.500 592.0 24.5 + 100.550 591.0 24.6 + 100.600 591.0 24.5 + 100.650 605.0 25.1 + 100.700 574.0 24.3 + 100.750 587.0 24.7 + 100.800 561.0 24.2 + 100.850 534.0 23.5 + 100.900 508.0 22.9 + 100.950 494.0 22.9 + 101.000 508.0 23.0 + 101.050 542.0 23.9 + 101.100 544.0 24.0 + 101.150 519.0 23.4 + 101.200 504.0 23.0 + 101.250 521.0 23.4 + 101.300 523.0 23.5 + 101.350 488.0 22.6 + 101.400 529.0 23.6 + 101.450 547.0 23.9 + 101.500 450.0 21.7 + 101.550 499.0 22.8 + 101.600 509.0 23.1 + 101.650 503.0 22.8 + 101.700 489.0 22.5 + 101.750 514.0 23.0 + 101.800 493.0 22.6 + 101.850 477.0 22.1 + 101.900 470.0 22.0 + 101.950 439.0 21.0 + 102.000 489.0 22.3 + 102.050 502.0 22.4 + 102.100 512.0 22.7 + 102.150 489.0 22.1 + 102.200 476.0 21.8 + 102.250 514.0 22.5 + 102.300 466.0 21.5 + 102.350 481.0 21.7 + 102.400 447.0 21.0 + 102.450 487.0 21.9 + 102.500 489.0 21.9 + 102.550 509.0 22.2 + 102.600 546.0 23.1 + 102.650 499.0 22.0 + 102.700 484.0 21.7 + 102.750 464.0 21.2 + 102.800 481.0 21.6 + 102.850 475.0 21.4 + 102.900 476.0 21.5 + 102.950 468.0 21.2 + 103.000 509.0 22.1 + 103.050 502.0 21.9 + 103.100 479.0 21.5 + 103.150 525.0 22.5 + 103.200 480.0 21.4 + 103.250 502.0 22.0 + 103.300 478.0 21.4 + 103.350 439.0 20.5 + 103.400 511.0 22.2 + 103.450 489.0 21.7 + 103.500 534.0 22.6 + 103.550 534.0 22.7 + 103.600 525.0 22.5 + 103.650 470.0 21.2 + 103.700 478.0 21.4 + 103.750 484.0 21.6 + 103.800 446.0 20.7 + 103.850 501.0 21.9 + 103.900 504.0 22.1 + 103.950 463.0 21.1 + 104.000 507.0 22.0 + 104.050 471.0 21.4 + 104.100 477.0 21.4 + 104.150 505.0 22.0 + 104.200 498.0 22.0 + 104.250 476.0 21.5 + 104.300 523.0 22.4 + 104.350 476.0 21.5 + 104.400 489.0 21.8 + 104.450 498.0 21.9 + 104.500 439.0 20.7 + 104.550 522.0 22.5 + 104.600 495.0 21.8 + 104.650 459.0 21.1 + 104.700 520.0 22.5 + 104.750 480.0 21.6 + 104.800 467.0 21.3 + 104.850 479.0 21.6 + 104.900 479.0 21.5 + 104.950 500.0 22.0 + 105.000 513.0 22.3 + 105.050 490.0 21.8 + 105.100 514.0 22.3 + 105.150 495.0 21.9 + 105.200 542.0 23.0 + 105.250 509.0 22.2 + 105.300 511.0 22.3 + 105.350 497.0 22.0 + 105.400 463.0 21.1 + 105.450 494.0 21.9 + 105.500 488.0 21.8 + 105.550 489.0 21.7 + 105.600 552.0 23.1 + 105.650 504.0 22.1 + 105.700 543.0 22.9 + 105.750 557.0 23.2 + 105.800 548.0 23.0 + 105.850 608.0 24.2 + 105.900 557.0 23.2 + 105.950 587.0 23.9 + 106.000 621.0 24.5 + 106.050 666.0 25.5 + 106.100 670.0 25.5 + 106.150 648.0 25.1 + 106.200 715.0 26.4 + 106.250 734.0 26.8 + 106.300 795.0 27.8 + 106.350 837.0 28.6 + 106.400 919.0 30.0 + 106.450 888.0 29.6 + 106.500 990.0 31.1 + 106.550 1073.0 32.8 + 106.600 1091.0 32.9 + 106.650 1071.0 32.8 + 106.700 1039.0 32.3 + 106.750 1025.0 32.2 + 106.800 975.0 31.3 + 106.850 923.0 30.8 + 106.900 848.0 29.3 + 106.950 856.0 29.6 + 107.000 847.0 29.5 + 107.050 765.0 28.1 + 107.100 755.0 27.8 + 107.150 754.0 28.0 + 107.200 751.0 27.8 + 107.250 765.0 28.2 + 107.300 729.0 27.6 + 107.350 746.0 27.8 + 107.400 755.0 28.0 + 107.450 759.0 28.2 + 107.500 788.0 28.6 + 107.550 769.0 28.5 + 107.600 763.0 28.2 + 107.650 793.0 28.6 + 107.700 741.0 28.0 + 107.750 737.0 27.5 + 107.800 656.0 26.0 + 107.850 677.0 26.6 + 107.900 641.0 25.7 + 107.950 574.0 24.2 + 108.000 584.0 24.7 + 108.050 577.0 24.1 + 108.100 535.0 23.4 + 108.150 587.0 24.5 + 108.200 533.0 23.2 + 108.250 552.0 23.5 + 108.300 495.0 22.4 + 108.350 518.0 22.6 + 108.400 513.0 22.6 + 108.450 575.0 23.9 + 108.500 513.0 22.5 + 108.550 484.0 21.7 + 108.600 517.0 22.6 + 108.650 503.0 22.1 + 108.700 516.0 22.4 + 108.750 535.0 22.8 + 108.800 526.0 22.6 + 108.850 525.0 22.5 + 108.900 554.0 23.1 + 108.950 550.0 22.9 + 109.000 536.0 22.7 + 109.050 567.0 23.2 + 109.100 568.0 23.3 + 109.150 579.0 23.5 + 109.200 559.0 23.1 + 109.250 572.0 23.3 + 109.300 571.0 23.3 + 109.350 588.0 23.6 + 109.400 548.0 22.8 + 109.450 576.0 23.4 + 109.500 588.0 23.6 + 109.550 554.0 22.9 + 109.600 603.0 23.9 + 109.650 599.0 23.9 + 109.700 566.0 23.1 + 109.750 524.0 22.3 + 109.800 531.0 22.5 + 109.850 516.0 22.1 + 109.900 524.0 22.3 + 109.950 532.0 22.5 + 110.000 501.0 21.8 + 110.050 514.0 22.1 + 110.100 509.0 22.0 + 110.150 537.0 22.6 + 110.200 526.0 22.4 + 110.250 563.0 23.2 + 110.300 549.0 22.8 + 110.350 573.0 23.4 + 110.400 559.0 23.1 + 110.450 580.0 23.5 + 110.500 557.0 23.0 + 110.550 579.0 23.6 + 110.600 550.0 22.9 + 110.650 590.0 23.7 + 110.700 590.0 23.8 + 110.750 625.0 24.5 + 110.800 599.0 23.9 + 110.850 648.0 24.9 + 110.900 639.0 24.8 + 110.950 692.0 25.7 + 111.000 771.0 27.2 + 111.050 784.0 27.5 + 111.100 846.0 28.4 + 111.150 953.0 30.3 + 111.200 1002.0 31.0 + 111.250 1106.0 32.5 + 111.300 1178.0 33.7 + 111.350 1284.0 35.2 + 111.400 1377.0 36.3 + 111.450 1428.0 37.0 + 111.500 1451.0 37.5 + 111.550 1485.0 37.8 + 111.600 1503.0 37.9 + 111.650 1453.0 37.5 + 111.700 1434.0 37.1 + 111.750 1327.0 35.7 + 111.800 1278.0 35.2 + 111.850 1148.0 33.4 + 111.900 1045.0 31.6 + 111.950 1046.0 31.9 + 112.000 945.0 30.3 + 112.050 904.0 29.5 + 112.100 853.0 28.8 + 112.150 859.0 28.9 + 112.200 833.0 28.3 + 112.250 851.0 28.8 + 112.300 797.0 27.9 + 112.350 780.0 27.5 + 112.400 822.0 28.3 + 112.450 839.0 28.8 + 112.500 868.0 29.0 + 112.550 839.0 28.7 + 112.600 888.0 29.6 + 112.650 868.0 29.2 + 112.700 924.0 30.1 + 112.750 898.0 30.0 + 112.800 960.0 30.7 + 112.850 870.0 29.5 + 112.900 823.0 28.7 + 112.950 918.0 30.4 + 113.000 851.0 29.2 + 113.050 956.0 31.2 + 113.100 861.0 29.4 + 113.150 976.0 31.6 + 113.200 1039.0 32.5 + 113.250 1052.0 32.9 + 113.300 1073.0 33.1 + 113.350 1173.0 34.8 + 113.400 1272.0 36.1 + 113.450 1300.0 36.7 + 113.500 1312.0 36.8 + 113.550 1431.0 38.7 + 113.600 1362.0 37.6 + 113.650 1448.0 38.8 + 113.700 1444.0 38.8 + 113.750 1400.0 38.3 + 113.800 1359.0 37.6 + 113.850 1214.0 35.7 + 113.900 1163.0 34.9 + 113.950 1016.0 32.6 + 114.000 1004.0 32.5 + 114.050 952.0 31.5 + 114.100 831.0 29.5 + 114.150 779.0 28.4 + 114.200 752.0 28.0 + 114.250 727.0 27.4 + 114.300 667.0 26.3 + 114.350 674.0 26.3 + 114.400 618.0 25.2 + 114.450 640.0 25.5 + 114.500 625.0 25.4 + 114.550 641.0 25.5 + 114.600 612.0 25.0 + 114.650 588.0 24.4 + 114.700 574.0 24.1 + 114.750 626.0 24.9 + 114.800 624.0 25.1 + 114.850 676.0 26.0 + 114.900 663.0 25.7 + 114.950 627.0 24.9 + 115.000 683.0 26.1 + 115.050 692.0 25.9 + 115.100 697.0 26.2 + 115.150 661.0 25.4 + 115.200 770.0 27.4 + 115.250 763.0 27.2 + 115.300 774.0 27.5 + 115.350 781.0 27.4 + 115.400 739.0 26.8 + 115.450 809.0 27.9 + 115.500 743.0 26.7 + 115.550 743.0 26.7 + 115.600 815.0 28.0 + 115.650 820.0 28.0 + 115.700 825.0 28.1 + 115.750 824.0 28.1 + 115.800 835.0 28.3 + 115.850 865.0 28.7 + 115.900 898.0 29.3 + 115.950 872.0 28.9 + 116.000 830.0 28.1 + 116.050 863.0 28.6 + 116.100 890.0 29.2 + 116.150 823.0 27.9 + 116.200 853.0 28.5 + 116.250 848.0 28.5 + 116.300 846.0 28.3 + 116.350 784.0 27.3 + 116.400 807.0 27.8 + 116.450 890.0 29.0 + 116.500 815.0 27.8 + 116.550 898.0 29.3 + 116.600 886.0 29.0 + 116.650 895.0 29.1 + 116.700 870.0 28.9 + 116.750 857.0 28.5 + 116.800 823.0 27.9 + 116.850 800.0 27.6 + 116.900 739.0 26.5 + 116.950 745.0 26.5 + 117.000 760.0 26.9 + 117.050 725.0 26.3 + 117.100 679.0 25.3 + 117.150 709.0 26.0 + 117.200 693.0 25.7 + 117.250 714.0 26.1 + 117.300 592.0 23.7 + 117.350 615.0 24.2 + 117.400 603.0 24.0 + 117.450 558.0 23.1 + 117.500 553.0 23.0 + 117.550 568.0 26.9 + 117.600 501.0 21.9 + 117.650 568.0 23.3 + 117.700 547.0 26.4 + 117.750 521.0 22.4 + 117.800 522.0 22.4 + 117.850 515.0 25.7 + 117.900 546.0 23.0 + 117.950 513.0 22.3 + 118.000 501.0 25.4 + 118.050 509.0 22.2 + 118.100 505.0 22.1 + 118.150 508.0 25.7 + 118.200 507.0 22.2 + 118.250 513.0 22.3 + 118.300 499.0 25.5 + 118.350 473.0 21.5 + 118.400 493.0 21.9 + 118.450 501.0 25.6 + 118.500 516.0 22.4 + 118.550 458.0 21.2 + 118.600 515.0 26.0 + 118.650 500.0 22.1 + 118.700 533.0 22.9 + 118.750 475.0 21.6 + 118.800 524.0 22.6 + 118.850 515.0 22.6 + 118.900 525.0 22.7 + 118.950 480.0 21.9 + 119.000 563.0 23.6 + 119.050 569.0 23.9 + 119.100 595.0 24.3 + 119.150 583.0 24.2 + 119.200 559.0 23.7 + 119.250 575.0 24.1 + 119.300 553.0 23.6 + 119.350 559.0 23.8 + 119.400 555.0 23.7 + 119.450 585.0 24.4 + 119.500 566.0 24.0 + 119.550 534.0 23.4 + 119.600 541.0 23.5 + 119.650 531.0 23.5 + 119.700 575.0 24.3 + 119.750 498.0 22.8 + 119.800 573.0 24.4 + 119.850 523.0 23.4 + 119.900 535.0 23.6 + 119.950 543.0 23.9 + 120.000 512.0 23.1 + 120.050 478.0 22.3 + 120.100 556.0 24.2 + 120.150 503.0 23.0 + 120.200 486.0 22.5 + 120.250 522.0 23.4 + 120.300 454.0 21.9 + 120.350 495.0 22.8 + 120.400 471.0 22.3 + 120.450 489.0 22.6 + 120.500 511.0 23.2 + 120.550 507.0 23.0 + 120.600 500.0 22.8 + 120.650 479.0 22.2 + 120.700 529.0 23.5 + 120.750 493.0 22.5 + 120.800 508.0 22.9 + 120.850 463.0 21.7 + 120.900 489.0 22.4 + 120.950 471.0 21.7 + 121.000 448.0 21.4 + 121.050 528.0 23.0 + 121.100 474.0 21.8 + 121.150 479.0 21.8 + 121.200 526.0 23.0 + 121.250 501.0 22.2 + 121.300 487.0 21.9 + 121.350 500.0 22.1 + 121.400 484.0 21.8 + 121.450 489.0 21.8 + 121.500 508.0 22.3 + 121.550 500.0 21.9 + 121.600 511.0 22.3 + 121.650 508.0 22.2 + 121.700 482.0 21.5 + 121.750 522.0 22.4 + 121.800 540.0 22.8 + 121.850 501.0 21.9 + 121.900 492.0 21.7 + 121.950 465.0 21.1 + 122.000 540.0 22.7 + 122.050 520.0 22.3 + 122.100 516.0 22.3 + 122.150 517.0 22.2 + 122.200 482.0 21.4 + 122.250 585.0 23.7 + 122.300 533.0 22.5 + 122.350 549.0 22.9 + 122.400 521.0 22.3 + 122.450 536.0 22.5 + 122.500 545.0 22.8 + 122.550 498.0 21.8 + 122.600 529.0 22.4 + 122.650 544.0 22.6 + 122.700 574.0 23.4 + 122.750 547.0 22.7 + 122.800 529.0 22.3 + 122.850 527.0 22.4 + 122.900 586.0 23.5 + 122.950 610.0 24.0 + 123.000 645.0 24.8 + 123.050 631.0 24.4 + 123.100 588.0 23.6 + 123.150 643.0 24.8 + 123.200 635.0 24.4 + 123.250 645.0 24.7 + 123.300 678.0 25.4 + 123.350 733.0 26.3 + 123.400 709.0 25.9 + 123.450 711.0 26.1 + 123.500 753.0 26.7 + 123.550 775.0 27.1 + 123.600 810.0 27.8 + 123.650 808.0 27.7 + 123.700 818.0 27.8 + 123.750 847.0 28.5 + 123.800 861.0 28.6 + 123.850 812.0 27.8 + 123.900 855.0 28.6 + 123.950 861.0 28.7 + 124.000 836.0 28.2 + 124.050 840.0 28.3 + 124.100 842.0 28.4 + 124.150 840.0 28.4 + 124.200 873.0 28.8 + 124.250 864.0 28.7 + 124.300 807.0 27.9 + 124.350 816.0 27.9 + 124.400 782.0 27.3 + 124.450 745.0 26.8 + 124.500 781.0 27.3 + 124.550 755.0 26.8 + 124.600 703.0 26.0 + 124.650 641.0 24.7 + 124.700 690.0 25.6 + 124.750 688.0 25.8 + 124.800 666.0 25.2 + 124.850 690.0 25.6 + 124.900 650.0 25.1 + 124.950 641.0 24.8 + 125.000 644.0 24.8 + 125.050 638.0 24.8 + 125.100 625.0 24.4 + 125.150 658.0 25.1 + 125.200 607.0 24.2 + 125.250 593.0 24.0 + 125.300 599.0 24.0 + 125.350 600.0 24.1 + 125.400 589.0 23.9 + 125.450 583.0 23.8 + 125.500 589.0 23.9 + 125.550 564.0 23.5 + 125.600 616.0 24.4 + 125.650 609.0 24.4 + 125.700 642.0 25.0 + 125.750 605.0 24.4 + 125.800 582.0 23.9 + 125.850 546.0 23.2 + 125.900 564.0 23.6 + 125.950 579.0 24.0 + 126.000 562.0 23.6 + 126.050 622.0 25.0 + 126.100 647.0 25.4 + 126.150 594.0 24.4 + 126.200 620.0 25.0 + 126.250 624.0 25.2 + 126.300 651.0 25.6 + 126.350 680.0 26.3 + 126.400 720.0 27.0 + 126.450 725.0 27.2 + 126.500 715.0 27.0 + 126.550 755.0 27.8 + 126.600 802.0 28.6 + 126.650 811.0 28.9 + 126.700 892.0 30.2 + 126.750 926.0 30.8 + 126.800 988.0 31.9 + 126.850 1055.0 32.8 + 126.900 1014.0 32.2 + 126.950 1191.0 34.9 + 127.000 1166.0 34.5 + 127.050 1199.0 34.9 + 127.100 1244.0 35.6 + 127.150 1279.0 36.0 + 127.200 1310.0 36.4 + 127.250 1243.0 35.3 + 127.300 1284.0 36.1 + 127.350 1263.0 35.5 + 127.400 1300.0 36.1 + 127.450 1192.0 34.4 + 127.500 1173.0 34.2 + 127.550 1134.0 33.4 + 127.600 1045.0 32.2 + 127.650 999.0 31.4 + 127.700 1010.0 31.6 + 127.750 945.0 30.4 + 127.800 888.0 29.6 + 127.850 891.0 29.4 + 127.900 811.0 28.2 + 127.950 748.0 27.0 + 128.000 714.0 26.3 + 128.050 674.0 25.5 + 128.100 711.0 26.3 + 128.150 653.0 25.0 + 128.200 685.0 25.7 + 128.250 683.0 25.6 + 128.300 643.0 24.8 + 128.350 598.0 23.9 + 128.400 655.0 25.1 + 128.450 592.0 23.7 + 128.500 595.0 23.8 + 128.550 584.0 23.6 + 128.600 595.0 23.7 + 128.650 629.0 24.4 + 128.700 579.0 23.5 + 128.750 646.0 24.8 + 128.800 606.0 24.0 + 128.850 617.0 24.2 + 128.900 638.0 24.6 + 128.950 635.0 24.5 + 129.000 653.0 24.9 + 129.050 675.0 25.3 + 129.100 689.0 25.5 + 129.150 636.0 24.6 + 129.200 737.0 26.4 + 129.250 750.0 26.6 + 129.300 713.0 26.0 + 129.350 802.0 27.5 + 129.400 822.0 27.8 + 129.450 775.0 27.1 + 129.500 836.0 28.1 + 129.550 886.0 28.8 + 129.600 950.0 30.0 + 129.650 981.0 30.4 + 129.700 1027.0 31.0 + 129.750 1029.0 31.1 + 129.800 1094.0 32.1 + 129.850 1047.0 31.3 + 129.900 1073.0 31.7 + 129.950 1154.0 32.8 + 130.000 1093.0 32.0 + 130.050 1084.0 31.8 + 130.100 1033.0 31.1 + 130.150 1041.0 31.1 + 130.200 993.0 30.5 + 130.250 892.0 28.8 + 130.300 919.0 29.2 + 130.350 821.0 27.6 + 130.400 790.0 27.1 + 130.450 790.0 27.2 + 130.500 735.0 26.1 + 130.550 682.0 25.2 + 130.600 657.0 24.8 + 130.650 589.0 23.4 + 130.700 638.0 24.4 + 130.750 607.0 23.8 + 130.800 609.0 23.8 + 130.850 619.0 24.0 + 130.900 592.0 23.5 + 130.950 560.0 22.8 + 131.000 521.0 22.1 + 131.050 595.0 23.6 + 131.100 561.0 22.9 + 131.150 551.0 22.6 + 131.200 536.0 22.4 + 131.250 560.0 22.8 + 131.300 557.0 22.8 + 131.350 558.0 22.9 + 131.400 601.0 23.6 + 131.450 544.0 22.6 + 131.500 548.0 22.7 + 131.550 555.0 22.8 + 131.600 502.0 21.7 + 131.650 558.0 23.0 + 131.700 540.0 22.5 + 131.750 509.0 22.0 + 131.800 532.0 22.4 + 131.850 511.0 22.0 + 131.900 539.0 22.6 + 131.950 523.0 22.5 + 132.000 546.0 22.7 + 132.050 532.0 22.7 + 132.100 564.0 23.3 + 132.150 546.0 22.9 + 132.200 588.0 23.9 + 132.250 548.0 23.3 + 132.300 580.0 23.7 + 132.350 565.0 23.7 + 132.400 595.0 24.2 + 132.450 601.0 24.4 + 132.500 564.0 23.7 + 132.550 554.0 23.6 + 132.600 601.0 24.4 + 132.650 619.0 25.0 + 132.700 597.0 24.5 + 132.750 642.0 25.5 + 132.800 631.0 25.3 + 132.850 551.0 23.8 + 132.900 612.0 24.9 + 132.950 671.0 26.4 + 133.000 692.0 26.6 + 133.050 721.0 27.2 + 133.100 701.0 27.0 + 133.150 736.0 27.6 + 133.200 787.0 28.5 + 133.250 757.0 28.1 + 133.300 786.0 28.6 + 133.350 804.0 28.7 + 133.400 887.0 30.4 + 133.450 831.0 29.2 + 133.500 875.0 30.0 + 133.550 891.0 30.4 + 133.600 848.0 29.6 + 133.650 871.0 29.8 + 133.700 881.0 30.2 + 133.750 872.0 29.8 + 133.800 810.0 28.7 + 133.850 846.0 29.2 + 133.900 823.0 28.9 + 133.950 804.0 28.2 + 134.000 800.0 28.4 + 134.050 848.0 29.1 + 134.100 852.0 29.1 + 134.150 824.0 28.6 + 134.200 844.0 29.0 + 134.250 798.0 27.9 + 134.300 788.0 28.0 + 134.350 868.0 29.2 + 134.400 867.0 29.0 + 134.450 876.0 29.2 + 134.500 947.0 30.5 + 134.550 923.0 29.8 + 134.600 951.0 30.5 + 134.650 972.0 30.7 + 134.700 967.0 30.5 + 134.750 1013.0 31.3 + 134.800 1003.0 31.2 + 134.850 1025.0 31.2 + 134.900 1068.0 32.2 + 134.950 1075.0 32.2 + 135.000 1120.0 32.7 + 135.050 1137.0 33.2 + 135.100 1175.0 33.7 + 135.150 1162.0 33.3 + 135.200 1241.0 34.6 + 135.250 1202.0 33.9 + 135.300 1202.0 33.8 + 135.350 1227.0 34.3 + 135.400 1223.0 34.2 + 135.450 1180.0 33.5 + 135.500 1167.0 33.5 + 135.550 1068.0 31.9 + 135.600 1135.0 32.9 + 135.650 1081.0 32.1 + 135.700 1097.0 32.3 + 135.750 1044.0 31.5 + 135.800 946.0 30.0 + 135.850 912.0 29.4 + 135.900 884.0 29.0 + 135.950 796.0 27.4 + 136.000 834.0 28.1 + 136.050 791.0 27.3 + 136.100 710.0 25.9 + 136.150 750.0 26.5 + 136.200 693.0 25.6 + 136.250 659.0 24.9 + 136.300 670.0 25.1 + 136.350 661.0 25.0 + 136.400 679.0 25.2 + 136.450 649.0 24.7 + 136.500 636.0 24.5 + 136.550 664.0 24.9 + 136.600 619.0 24.2 + 136.650 683.0 25.4 + 136.700 626.0 24.2 + 136.750 665.0 25.0 + 136.800 680.0 25.3 + 136.850 654.0 24.7 + 136.900 689.0 25.5 + 136.950 668.0 25.1 + 137.000 631.0 24.3 + 137.050 648.0 24.7 + 137.100 656.0 24.8 + 137.150 694.0 25.4 + 137.200 756.0 26.6 + 137.250 786.0 27.3 + 137.300 738.0 26.2 + 137.350 816.0 27.7 + 137.400 859.0 28.5 + 137.450 826.0 27.7 + 137.500 897.0 29.0 + 137.550 915.0 29.4 + 137.600 992.0 30.4 + 137.650 949.0 29.7 + 137.700 963.0 30.1 + 137.750 1030.0 31.0 + 137.800 1029.0 31.0 + 137.850 1062.0 31.8 + 137.900 1078.0 31.7 + 137.950 1116.0 32.4 + 138.000 1083.0 32.1 + 138.050 1101.0 32.3 + 138.100 1036.0 31.2 + 138.150 1095.0 32.6 + 138.200 1052.0 31.6 + 138.250 1042.0 31.5 + 138.300 979.0 30.8 + 138.350 949.0 30.2 + 138.400 967.0 30.4 + 138.450 939.0 30.5 + 138.500 841.0 28.5 + 138.550 895.0 29.6 + 138.600 775.0 27.7 + 138.650 808.0 28.3 + 138.700 747.0 27.1 + 138.750 740.0 27.5 + 138.800 715.0 26.7 + 138.850 752.0 27.6 + 138.900 655.0 25.8 + 138.950 655.0 25.8 + 139.000 659.0 25.8 + 139.050 618.0 25.3 + 139.100 645.0 25.6 + 139.150 605.0 24.9 + 139.200 597.0 24.9 + 139.250 603.0 24.9 + 139.300 598.0 24.7 + 139.350 610.0 25.2 + 139.400 621.0 25.3 + 139.450 560.0 24.1 + 139.500 537.0 23.7 + 139.550 585.0 24.6 + 139.600 564.0 24.2 + 139.650 580.0 24.6 + 139.700 610.0 25.1 + 139.750 586.0 24.6 + 139.800 548.0 23.9 + 139.850 582.0 24.4 + 139.900 555.0 23.9 + 139.950 570.0 24.2 + 140.000 536.0 23.4 + 140.050 542.0 23.4 + 140.100 538.0 23.4 + 140.150 576.0 24.0 + 140.200 569.0 24.0 + 140.250 536.0 23.2 + 140.300 579.0 24.0 + 140.350 550.0 23.4 + 140.400 555.0 23.5 + 140.450 559.0 23.4 + 140.500 516.0 22.7 + 140.550 596.0 24.1 + 140.600 551.0 23.3 + 140.650 608.0 24.4 + 140.700 561.0 23.4 + 140.750 580.0 23.7 + 140.800 573.0 23.6 + 140.850 559.0 23.1 + 140.900 584.0 23.7 + 140.950 574.0 23.4 + 141.000 573.0 23.4 + 141.050 577.0 23.4 + 141.100 583.0 23.6 + 141.150 611.0 24.0 + 141.200 609.0 24.0 + 141.250 625.0 24.3 + 141.300 585.0 23.5 + 141.350 654.0 24.8 + 141.400 630.0 24.5 + 141.450 620.0 24.1 + 141.500 691.0 25.5 + 141.550 621.0 24.1 + 141.600 665.0 25.0 + 141.650 692.0 25.5 + 141.700 746.0 26.4 + 141.750 719.0 26.0 + 141.800 713.0 25.8 + 141.850 698.0 25.5 + 141.900 704.0 25.7 + 141.950 667.0 25.0 + 142.000 672.0 25.0 + 142.050 733.0 26.2 + 142.100 716.0 25.9 + 142.150 710.0 25.8 + 142.200 739.0 26.3 + 142.250 706.0 25.7 + 142.300 696.0 25.5 + 142.350 664.0 24.9 + 142.400 688.0 25.4 + 142.450 649.0 24.6 + 142.500 695.0 25.5 + 142.550 688.0 25.4 + 142.600 593.0 23.5 + 142.650 632.0 24.4 + 142.700 656.0 24.8 + 142.750 620.0 24.0 + 142.800 633.0 24.4 + 142.850 621.0 24.1 + 142.900 601.0 23.7 + 142.950 611.0 23.9 + 143.000 612.0 23.9 + 143.050 565.0 22.9 + 143.100 564.0 23.0 + 143.150 601.0 23.7 + 143.200 570.0 23.1 + 143.250 613.0 23.9 + 143.300 600.0 23.6 + 143.350 604.0 23.8 + 143.400 592.0 23.5 + 143.450 580.0 23.3 + 143.500 626.0 24.2 + 143.550 589.0 23.5 + 143.600 557.0 22.8 + 143.650 584.0 23.4 + 143.700 576.0 23.2 + 143.750 614.0 24.0 + 143.800 570.0 23.2 + 143.850 613.0 23.9 + 143.900 614.0 24.0 + 143.950 611.0 24.1 + 144.000 638.0 24.4 + 144.050 604.0 23.8 + 144.100 609.0 24.0 + 144.150 609.0 24.0 + 144.200 610.0 24.0 + 144.250 619.0 24.3 + 144.300 608.0 23.9 + 144.350 680.0 25.5 + 144.400 648.0 24.9 + 144.450 580.0 23.6 + 144.500 655.0 25.0 + 144.550 639.0 24.9 + 144.600 647.0 24.9 + 144.650 650.0 25.1 + 144.700 664.0 25.4 + 144.750 684.0 25.9 + 144.800 655.0 25.3 + 144.850 708.0 26.4 + 144.900 695.0 26.1 + 144.950 696.0 26.4 + 145.000 727.0 26.8 + 145.050 694.0 26.5 + 145.100 755.0 27.5 + 145.150 763.0 27.8 + 145.200 708.0 26.7 + 145.250 779.0 28.3 + 145.300 733.0 27.3 + 145.350 791.0 28.6 + 145.400 777.0 28.2 + 145.450 822.0 29.2 + 145.500 825.0 29.2 + 145.550 859.0 29.8 + 145.600 847.0 29.6 + 145.650 849.0 29.8 + 145.700 846.0 29.6 + 145.750 877.0 30.3 + 145.800 850.0 29.8 + 145.850 874.0 30.2 + 145.900 927.0 31.2 + 145.950 972.0 31.8 + 146.000 992.0 32.2 + 146.050 976.0 32.0 + 146.100 1039.0 32.9 + 146.150 1018.0 32.4 + 146.200 1032.0 32.9 + 146.250 1117.0 39.4 + 146.300 1158.0 34.6 + 146.350 1167.0 34.6 + 146.400 1245.0 41.5 + 146.450 1310.0 36.5 + 146.500 1262.0 36.0 + 146.550 1405.0 43.3 + 146.600 1523.0 39.3 + 146.650 1408.0 37.5 + 146.700 1488.0 44.6 + 146.750 1497.0 38.6 + 146.800 1607.0 40.1 + 146.850 1581.0 45.3 + 146.900 1571.0 39.5 + 146.950 1619.0 39.8 + 147.000 1558.0 44.9 + 147.050 1654.0 40.1 + 147.100 1601.0 39.6 + 147.150 1583.0 44.7 + 147.200 1537.0 38.6 + 147.250 1474.0 37.6 + 147.300 1504.0 43.5 + 147.350 1521.0 38.0 + 147.400 1468.0 37.5 + 147.450 1398.0 36.3 + 147.500 1409.0 36.6 + 147.550 1378.0 36.1 + 147.600 1300.0 35.0 + 147.650 1289.0 34.8 + 147.700 1233.0 34.1 + 147.750 1345.0 35.4 + 147.800 1313.0 35.2 + 147.850 1287.0 34.9 + 147.900 1268.0 34.4 + 147.950 1314.0 34.9 + 148.000 1344.0 35.7 + 148.050 1386.0 35.9 + 148.100 1332.0 35.2 + 148.150 1418.0 36.5 + 148.200 1374.0 35.8 + 148.250 1461.0 36.8 + 148.300 1525.0 37.9 + 148.350 1527.0 37.7 + 148.400 1612.0 38.6 + 148.450 1675.0 39.7 + 148.500 1653.0 39.2 + 148.550 1670.0 39.4 + 148.600 1712.0 40.2 + 148.650 1829.0 41.3 + 148.700 1810.0 41.0 + 148.750 1884.0 42.2 + 148.800 1788.0 40.8 + 148.850 1868.0 41.6 + 148.900 1951.0 43.0 + 148.950 1895.0 42.2 + 149.000 1910.0 42.1 + 149.050 1917.0 42.4 + 149.100 1892.0 42.2 + 149.150 1890.0 42.0 + 149.200 1825.0 41.4 + 149.250 1944.0 42.7 + 149.300 1858.0 41.6 + 149.350 1835.0 41.5 + 149.400 1768.0 40.7 + 149.450 1724.0 40.2 + 149.500 1769.0 40.7 + 149.550 1762.0 40.6 + 149.600 1756.0 40.6 + 149.650 1633.0 39.1 + 149.700 1636.0 39.1 + 149.750 1609.0 38.9 + 149.800 1584.0 38.5 + 149.850 1474.0 37.2 + 149.900 1503.0 37.6 + 149.950 1486.0 37.2 + 150.000 1459.0 37.0 + 150.050 1409.0 36.3 + 150.100 1376.0 35.8 + 150.150 1386.0 36.2 + 150.200 1320.0 35.2 + 150.250 1269.0 34.4 + 150.300 1194.0 33.6 + 150.350 1213.0 33.8 + 150.400 1145.0 32.6 + 150.450 1175.0 33.3 + 150.500 1135.0 32.7 + 150.550 1131.0 32.5 + 150.600 1095.0 32.1 + 150.650 1024.0 35.9 + 150.700 937.0 29.5 + 150.750 970.0 30.2 + 150.800 891.0 33.4 + 150.850 949.0 30.1 + 150.900 871.0 28.6 + 150.950 898.0 33.4 + 151.000 872.0 28.8 + 151.050 798.0 31.6 + 151.100 824.0 32.0 + 151.150 788.0 27.4 + 151.200 840.0 32.5 + 151.250 823.0 32.4 + 151.300 770.0 27.1 + 151.350 815.0 32.2 + 151.400 790.0 31.7 + 151.450 724.0 26.6 + 151.500 752.0 30.9 + 151.550 722.0 30.7 + 151.600 740.0 26.9 + 151.650 708.0 30.5 + 151.700 726.0 30.8 + 151.750 720.0 26.8 + 151.800 796.0 32.4 + 151.850 706.0 26.4 + 151.900 707.0 26.5 + 151.950 733.0 31.5 + 152.000 755.0 27.3 + 152.050 774.0 27.8 + 152.100 737.0 31.6 + 152.150 703.0 26.7 + 152.200 689.0 26.2 + 152.250 763.0 27.9 + 152.300 739.0 27.4 + 152.350 811.0 28.7 + 152.400 746.0 27.6 + 152.450 781.0 28.2 + 152.500 740.0 27.5 + 152.550 753.0 27.7 + 152.600 736.0 27.4 + 152.650 763.0 27.8 + 152.700 729.0 27.2 + 152.750 801.0 28.4 + 152.800 772.0 27.9 + 152.850 746.0 27.3 + 152.900 766.0 27.8 + 152.950 787.0 28.0 + 153.000 769.0 27.8 + 153.050 793.0 28.0 + 153.100 840.0 28.9 + 153.150 781.0 27.7 + 153.200 790.0 28.0 + 153.250 847.0 28.8 + 153.300 828.0 28.6 + 153.350 817.0 28.2 + 153.400 816.0 28.2 + 153.450 826.0 28.3 + 153.500 790.0 27.7 + 153.550 779.0 27.3 + 153.600 822.0 28.2 + 153.650 825.0 28.0 + 153.700 823.0 28.1 + 153.750 836.0 28.2 + 153.800 771.0 27.1 + 153.850 803.0 27.6 + 153.900 775.0 27.1 + 153.950 792.0 27.2 + 154.000 735.0 26.4 + 154.050 773.0 27.0 + 154.100 709.0 25.8 + 154.150 742.0 26.3 + 154.200 737.0 26.3 + 154.250 731.0 26.1 + 154.300 678.0 25.2 + 154.350 721.0 25.9 + 154.400 728.0 26.0 + 154.450 701.0 25.5 + 154.500 695.0 25.4 + 154.550 628.0 24.0 + 154.600 675.0 25.0 + 154.650 645.0 24.5 + 154.700 621.0 23.9 + 154.750 661.0 24.7 + 154.800 607.0 23.7 + 154.850 628.0 24.0 + 154.900 592.0 23.4 + 154.950 620.0 23.9 + 155.000 658.0 24.5 + 155.050 620.0 24.0 + 155.100 599.0 23.5 + 155.150 645.0 24.3 + 155.200 554.0 22.6 + 155.250 617.0 23.9 + 155.300 615.0 23.7 + 155.350 610.0 23.7 + 155.400 590.0 23.3 + 155.450 581.0 23.0 + 155.500 578.0 23.1 + 155.550 519.0 21.9 + 155.600 530.0 22.0 + 155.650 585.0 23.2 + 155.700 548.0 22.5 + 155.750 584.0 23.1 + 155.800 543.0 22.4 + 155.850 585.0 23.2 + 155.900 574.0 22.9 + 155.950 546.0 22.5 + 156.000 536.0 22.2 + 156.050 558.0 22.7 + 156.100 565.0 22.8 + 156.150 574.0 23.1 + 156.200 551.0 22.5 + 156.250 520.0 21.9 + 156.300 551.0 22.6 + 156.350 543.0 22.4 + 156.400 528.0 22.1 + 156.450 475.0 21.0 + 156.500 519.0 21.9 + 156.550 533.0 22.3 + 156.600 516.0 21.9 + 156.650 529.0 22.2 + 156.700 507.0 21.8 + 156.750 526.0 22.2 + 156.800 495.0 21.5 + 156.850 540.0 22.5 + 156.900 527.0 22.2 + 156.950 548.0 22.7 + 157.000 532.0 22.4 + 157.050 500.0 21.7 + 157.100 514.0 22.0 + 157.150 523.0 22.3 + 157.200 524.0 22.2 + 157.250 549.0 22.9 + 157.300 529.0 22.4 + 157.350 540.0 22.7 + 157.400 514.0 22.2 + 157.450 513.0 22.4 + 157.500 546.0 22.9 + 157.550 489.0 21.9 + 157.600 503.0 22.2 + 157.650 544.0 23.2 + 157.700 512.0 22.4 + 157.750 530.0 23.0 + 157.800 513.0 22.5 + 157.850 514.0 22.7 + 157.900 528.0 23.0 + 157.950 547.0 23.6 + 158.000 493.0 22.3 + 158.050 516.0 23.0 + 158.100 493.0 22.3 + 158.150 480.0 22.2 + 158.200 481.0 22.2 + 158.250 498.0 22.6 + 158.300 491.0 22.5 + 158.350 510.0 23.0 + 158.400 514.0 23.0 + 158.450 486.0 22.5 + 158.500 505.0 22.9 + 158.550 501.0 22.9 + 158.600 558.0 24.1 + 158.650 498.0 22.7 + 158.700 508.0 23.0 + 158.750 516.0 23.2 + 158.800 551.0 23.9 + 158.850 520.0 23.3 + 158.900 497.0 22.8 + 158.950 528.0 23.4 + 159.000 552.0 24.0 + 159.050 504.0 22.8 + 159.100 475.0 22.2 + 159.150 487.0 22.3 + 159.200 560.0 24.0 + 159.250 503.0 22.7 + 159.300 518.0 23.1 + 159.350 501.0 22.6 + 159.400 563.0 24.0 + 159.450 488.0 22.2 + 159.500 510.0 22.8 + 159.550 543.0 23.3 + 159.600 500.0 22.4 + 159.650 546.0 23.2 + 159.700 462.0 21.5 + 159.750 512.0 22.5 + 159.800 545.0 23.2 + 159.850 515.0 22.4 + 159.900 516.0 22.6 + 159.950 535.0 22.8 + 160.000 518.0 22.5 + 160.050 522.0 22.5 + 160.100 509.0 22.3 + 160.150 532.0 22.6 + 160.200 471.0 21.4 + 160.250 507.0 22.1 + 160.300 494.0 21.8 + 160.350 507.0 22.0 + 160.400 504.0 22.0 + 160.450 527.0 22.4 + 160.500 547.0 22.9 + 160.550 542.0 22.7 + 160.600 530.0 22.5 + 160.650 546.0 22.9 + 160.700 529.0 22.4 + 160.750 506.0 21.9 + 160.800 555.0 23.0 + 160.850 549.0 22.8 + 160.900 528.0 22.4 + 160.950 509.0 21.9 + 161.000 530.0 22.5 + 161.050 482.0 21.3 + 161.100 586.0 23.6 + 161.150 520.0 22.2 + 161.200 540.0 22.7 + 161.250 528.0 22.5 + 161.300 511.0 22.1 + 161.350 524.0 22.4 + 161.400 554.0 23.0 + 161.450 575.0 23.5 + 161.500 579.0 23.6 + 161.550 577.0 23.6 + 161.600 564.0 23.4 + 161.650 527.0 22.8 + 161.700 513.0 22.4 + 161.750 552.0 23.4 + 161.800 575.0 23.9 + 161.850 564.0 23.5 + 161.900 537.0 23.3 + 161.950 530.0 23.0 + 162.000 576.0 24.0 + 162.050 522.0 23.3 + 162.100 515.0 23.0 + 162.150 606.0 25.0 + 162.200 521.0 23.3 + 162.250 527.0 23.6 + 162.300 578.0 24.5 + 162.350 542.0 24.0 + 162.400 548.0 24.2 + 162.450 591.0 25.1 + 162.500 534.0 24.1 + 162.550 564.0 25.0 + 162.600 590.0 25.4 + 162.650 592.0 25.9 + 162.700 589.0 25.7 + 162.750 538.0 24.6 + 162.800 563.0 25.4 + 162.850 538.0 24.8 + 162.900 610.0 26.4 + 162.950 508.0 24.3 + 163.000 590.0 26.2 + 163.050 581.0 26.0 + 163.100 603.0 26.5 + 163.150 567.0 26.0 + 163.200 560.0 25.6 + 163.250 536.0 25.3 + 163.300 535.0 25.2 + 163.350 548.0 25.6 + 163.400 619.0 27.3 + 163.450 541.0 25.6 + 163.500 532.0 25.3 + 163.550 530.0 25.6 + 163.600 575.0 26.5 + 163.650 552.0 26.0 + 163.700 536.0 25.8 + 163.750 561.0 26.3 + 163.800 517.0 25.2 + 163.850 548.0 25.8 + 163.900 549.0 26.0 + 163.950 544.0 29.9 + 164.000 536.0 25.5 + 164.050 556.0 30.3 + 164.100 604.0 31.6 + 164.150 532.0 29.1 + 164.200 592.0 31.3 + 164.250 558.0 37.2 + 164.300 532.0 29.2 + 164.350 525.0 36.1 + 164.400 533.0 36.3 + 164.450 559.0 36.2 + 164.500 534.0 36.4 + 164.550 484.0 48.6 + 164.600 532.0 35.1 + 164.650 524.0 50.6 + 164.700 624.0 55.2 + 164.750 547.0 48.8 + 164.800 620.0 55.1 + 164.850 599.0 52.6 + 164.900 576.0 49.9 diff --git a/examples/symmetry-constraints.py b/examples/symmetry-constraints.py new file mode 100644 index 00000000..d4587df5 --- /dev/null +++ b/examples/symmetry-constraints.py @@ -0,0 +1,137 @@ +""" +Joint Refinement Example (Advanced API) + +This example demonstrates a more flexible and advanced usage of the EasyDiffraction +library by explicitly creating and configuring some objects. It is more suitable for +users comfortable with Python programming and those interested in custom workflows. +""" + +#import difflib # for fuzzy matching + +from numpy.testing import assert_almost_equal + + +from easydiffraction import ( + Project, + SampleModel, + Experiment +) + +# Create and configure sample model +model = SampleModel("hs020") +model.space_group.name = "R -3 m" +model.space_group.setting = "h" +model.cell.length_a = 6.9 +model.cell.length_c = 14.1 +model.atom_sites.add("Zn", "Zn", 0, 0, 0.5, wyckoff_letter="b", b_iso=0.5) +model.atom_sites.add("Cu", "Cu", 0.5, 0, 0, wyckoff_letter="e", b_iso=0.5) +model.atom_sites.add("O", "O",0.21, -0.21, 0.06, wyckoff_letter="h", b_iso=0.5) +model.atom_sites.add("Cl", "Cl", 0, 0, 0.197,wyckoff_letter="c", b_iso=0.5) +model.atom_sites.add("H", "2H",0.13, -0.13, 0.08, wyckoff_letter="h", b_iso=0.5) +model.show_as_cif() +model.apply_symmetry_constraints() +model.show_as_cif() + +# Create and configure experiment +expt = Experiment("hrpt", data_path="examples/data/hrpt_HSO20_V6x15_1p89_HI_T_300K.xye") +expt.instrument.setup_wavelength = 1.89 +expt.instrument.calib_twotheta_offset = 0.0 +expt.peak.broad_gauss_u = 0.1 +expt.peak.broad_gauss_v = -0.2 +expt.peak.broad_gauss_w = 0.2 +expt.peak.broad_lorentz_x = 0.0 +expt.peak.broad_lorentz_y = 0 +expt.linked_phases.add("hs020", scale=0.5) +expt.background.add(x=4.4196, y=500) +expt.background.add(x=6.6207, y=500) +expt.background.add(x=10.4918, y=500) +expt.background.add(x=15.4634, y=500) +expt.background.add(x=45.6041, y=500) +expt.background.add(x=74.6844, y=500) +expt.background.add(x=103.4187, y=500) +expt.background.add(x=121.6311, y=500) +expt.background.add(x=159.4116, y=500) +expt.show_as_cif() + +# Create project and add sample model and experiments +project = Project() +project.sample_models.add(model) +project.experiments.add(expt) + +# Set calculator, minimizer and refinement strategy +project.analysis.current_calculator = "cryspy" +project.analysis.current_minimizer = "lmfit (leastsq)" + +# Compare measured and calculated patterns +project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51) + +# ------------ 1st fitting ------------ + +# Define free parameters +model.cell.length_a.free = True +model.cell.length_c.free = True +expt.linked_phases["hs020"].scale.free = True +expt.instrument.calib_twotheta_offset.free = True +project.analysis.show_free_params() + +# Start fitting +project.analysis.fit() +project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51) + +# Compare fit quality +assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 51.57, decimal=1) + +# ------------ 2nd fitting ------------ + +# Define free parameters +expt.peak.broad_gauss_u.free = True +expt.peak.broad_gauss_v.free = True +expt.peak.broad_gauss_w.free = True +expt.peak.broad_lorentz_x.free = True +for point in expt.background: + point.y.free = True +project.analysis.show_free_params() + +# Start fitting +project.analysis.fit() +project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51) + +# Compare fit quality +assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 12.41, decimal=1) + +# ------------ 3rd fitting ------------ + +# Define free parameters +model.atom_sites['O'].fract_x.free = True +model.atom_sites['O'].fract_z.free = True +model.atom_sites['Cl'].fract_z.free = True +model.atom_sites['H'].fract_x.free = True +model.atom_sites['H'].fract_z.free = True +project.analysis.show_free_params() + +# Start fitting +project.analysis.fit() +project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51) + +# Compare fit quality +assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 4.34, decimal=1) + +# ------------ 3rd fitting ------------ + +# Define free parameters +model.atom_sites['Zn'].b_iso.free = True +model.atom_sites['Cu'].b_iso.free = True +model.atom_sites['O'].b_iso.free = True +model.atom_sites['Cl'].b_iso.free = True +model.atom_sites['H'].b_iso.free = True +project.analysis.show_free_params() + +# Start fitting +project.analysis.fit() +project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51) + +project.analysis.show_refinable_params() +project.analysis.show_free_params() + +# Compare fit quality +assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 2.11, decimal=1) diff --git a/src/easydiffraction/analysis/analysis.py b/src/easydiffraction/analysis/analysis.py index 71c5d4be..1b89b4d6 100644 --- a/src/easydiffraction/analysis/analysis.py +++ b/src/easydiffraction/analysis/analysis.py @@ -62,7 +62,8 @@ def show_free_params(self): df = df[valid_cols] try: - print(tabulate(df, headers="keys", tablefmt="fancy_outline", showindex=False)) + #print(tabulate(df, headers="keys", tablefmt="fancy_outline", showindex=False)) + print(tabulate(df, headers="keys", tablefmt="fancy_outline")) except ImportError: print(df.to_string(index=False)) diff --git a/src/easydiffraction/analysis/minimization.py b/src/easydiffraction/analysis/minimization.py index 0ea1aca6..697b1e7e 100644 --- a/src/easydiffraction/analysis/minimization.py +++ b/src/easydiffraction/analysis/minimization.py @@ -62,7 +62,7 @@ def _residual_function(self, engine_params, parameters, sample_models, experimen for expt_id, experiment in experiments._items.items(): y_calc = calculator.calculate_pattern(sample_models, experiment, - called_by_minimizer=True) + called_by_minimizer=True) # True False y_meas = experiment.datastore.pattern.meas y_meas_su = experiment.datastore.pattern.meas_su diff = (y_meas - y_calc) / y_meas_su diff --git a/src/easydiffraction/crystallography/crystallography.py b/src/easydiffraction/crystallography/crystallography.py index d9af91bd..79c4f7f9 100644 --- a/src/easydiffraction/crystallography/crystallography.py +++ b/src/easydiffraction/crystallography/crystallography.py @@ -1,70 +1,29 @@ from sympy import symbols, sympify, simplify -from tabulate import tabulate -from .space_group_database import space_group_database -from .space_group_lookup_tables import ( - lookup_by_hm_ref_index, - lookup_by_hm_alt_index, - lookup_by_hall_symbol_index, -) - - -def normalize_hm_symbol(symbol: str) -> str: - stripped = symbol.replace(" ", "") - lowered = stripped.lower() - return lowered - - -def get_space_group_by_hm_ref(hm_ref: str, - coord_code: str = None): - key = (hm_ref, coord_code) - sg_key = lookup_by_hm_ref_index.get(key) - - if sg_key is None: - fallback_key = (hm_ref, None) - sg_key = lookup_by_hm_ref_index.get(fallback_key) - - if sg_key is None: - return None - - sg_entry = space_group_database.get(sg_key) - return sg_entry - - -def get_space_group_by_hm_alt(hm_alt: str): - norm_input = normalize_hm_symbol(hm_alt) - - for stored_symbol, sg_key in lookup_by_hm_alt_index.items(): - stored_normalized = normalize_hm_symbol(stored_symbol) - - if stored_normalized == norm_input: - sg_entry = space_group_database.get(sg_key) - return sg_entry - - return None - - -def get_space_group_by_hall_symbol(hall_symbol: str): - sg_key = lookup_by_hall_symbol_index.get(hall_symbol) - - if sg_key is None: - return None - sg_entry = space_group_database.get(sg_key) - return sg_entry - - -def get_space_group_by_it_number(it_number: int, - coord_code: str = None): - sg_key = (it_number, coord_code) - sg_entry = space_group_database.get(sg_key) - return sg_entry +from cryspy.A_functions_base.function_2_space_group import ( + get_crystal_system_by_it_number, + get_it_number_by_name_hm_short, + get_it_number_by_name_hm_full, + get_it_number_it_coordinate_system_codes_by_name_hm_extended, + get_symop_pcentr_multiplicity_letter_site_symmetry_coords_xyz_2 +) def apply_cell_symmetry_constraints(cell: dict, - space_group_entry: dict) -> dict: - cs = space_group_entry.get("crystal_system", "unknown").lower() - - if cs == "cubic": + name_hm: str) -> dict: + it_number = get_it_number_by_name_hm_short(name_hm) + if it_number is None: + error_msg = f"Failed to get IT_number for name_H-M '{name_hm}'" + print(error_msg) + return cell + + crystal_system = get_crystal_system_by_it_number(it_number) + if crystal_system is None: + error_msg = f"Failed to get crystal system for IT_number '{it_number}'" + print(error_msg) + return cell + + if crystal_system == "cubic": a = cell["lattice_a"] cell["lattice_b"] = a cell["lattice_c"] = a @@ -72,52 +31,63 @@ def apply_cell_symmetry_constraints(cell: dict, cell["angle_beta"] = 90 cell["angle_gamma"] = 90 - elif cs == "tetragonal": + elif crystal_system == "tetragonal": a = cell["lattice_a"] cell["lattice_b"] = a cell["angle_alpha"] = 90 cell["angle_beta"] = 90 cell["angle_gamma"] = 90 - elif cs == "orthorhombic": + elif crystal_system == "orthorhombic": cell["angle_alpha"] = 90 cell["angle_beta"] = 90 cell["angle_gamma"] = 90 - elif cs in {"hexagonal", "trigonal"}: + elif crystal_system in {"hexagonal", "trigonal"}: a = cell["lattice_a"] cell["lattice_b"] = a cell["angle_alpha"] = 90 cell["angle_beta"] = 90 cell["angle_gamma"] = 120 - elif cs == "monoclinic": + elif crystal_system == "monoclinic": cell["angle_alpha"] = 90 cell["angle_gamma"] = 90 - elif cs == "triclinic": + elif crystal_system == "triclinic": pass # No constraints to apply else: - error_msg = f"Unknown or unsupported crystal system: {cs}" - raise ValueError(error_msg) + error_msg = f"Unknown or unsupported crystal system: {crystal_system}" + print(error_msg) return cell def apply_atom_site_symmetry_constraints(atom_site: dict, - space_group_entry: dict, + name_hm: str, + coord_code, wyckoff_letter: str) -> dict: - x, y, z = symbols("x y z") - - wyckoff_data = space_group_entry.get("Wyckoff_positions", {}) - wyckoff = wyckoff_data.get(wyckoff_letter) - - if wyckoff is None: - error_msg = f"Wyckoff letter '{wyckoff_letter}' not found." - raise ValueError(error_msg) - - first_position = wyckoff["coords_xyz"][0] + it_number = get_it_number_by_name_hm_short(name_hm) + if it_number is None: + error_msg = f"Failed to get IT_number for name_H-M '{name_hm}'" + print(error_msg) + return atom_site + + it_coordinate_system_code = coord_code + if it_coordinate_system_code is None: + error_msg = "IT_coordinate_system_code is not set" + print(error_msg) + return atom_site + + result = get_symop_pcentr_multiplicity_letter_site_symmetry_coords_xyz_2(it_number, it_coordinate_system_code) + letter_list = result[3] + coords_xyz_list = result[5] + + idx = letter_list.index(wyckoff_letter) + coords_xyz = coords_xyz_list[idx] + + first_position = coords_xyz[0] components = first_position.strip("()").split(",") parsed_exprs = [sympify(comp.strip()) for comp in components] @@ -132,8 +102,10 @@ def apply_atom_site_symmetry_constraints(atom_site: dict, } axes = ("x", "y", "z") + x, y, z = symbols("x y z") symbols_xyz = (x, y, z) + for i, axis in enumerate(axes): symbol = symbols_xyz[i] is_free = any(symbol in expr.free_symbols for expr in parsed_exprs) @@ -144,25 +116,3 @@ def apply_atom_site_symmetry_constraints(atom_site: dict, atom_site[f"fract_{axis}"] = float(simplified) return atom_site - - -def show_wyckoff_positions_table(space_group_entry: dict): - wyckoff_data = space_group_entry.get("Wyckoff_positions", {}) - headers = ["Letter", "Multiplicity", "Site Symmetry", "Fractional Coordinates"] - - rows = [] - - for letter, data in sorted(wyckoff_data.items()): - multiplicity = data["multiplicity"] - symmetry = data["site_symmetry"] - coords = ", ".join(data["coords_xyz"]) - - row = [letter, multiplicity, symmetry, coords] - rows.append(row) - - table = tabulate(rows, - headers=headers, - tablefmt="fancy_outline", - numalign="left", - showindex=False) - print(table) \ No newline at end of file diff --git a/src/easydiffraction/sample_models/iterable_components/atom_sites.py b/src/easydiffraction/sample_models/iterable_components/atom_sites.py index e52b8613..5b3f08ab 100644 --- a/src/easydiffraction/sample_models/iterable_components/atom_sites.py +++ b/src/easydiffraction/sample_models/iterable_components/atom_sites.py @@ -11,10 +11,10 @@ class AtomSite(IterableComponentRow): def __init__(self, label: str, type_symbol: str, - wyckoff_letter: str, fract_x: float, fract_y: float, fract_z: float, + wyckoff_letter: str = None, occupancy: float = 1.0, b_iso: float = 0.0, adp_type: str = "Biso"): # TODO: add support for Uiso, Uani and Bani @@ -75,10 +75,10 @@ def cif_category_name(self): def add(self, label: str, type_symbol: str, - wyckoff_letter: str, fract_x: float, fract_y: float, fract_z: float, + wyckoff_letter: str = None, occupancy: float = 1.0, b_iso: float = 0.0, adp_type: str = "Biso"): @@ -87,10 +87,10 @@ def add(self, """ site = AtomSite(label, type_symbol, - wyckoff_letter, fract_x, fract_y, fract_z, + wyckoff_letter, occupancy, b_iso, adp_type) diff --git a/src/easydiffraction/sample_models/sample_models.py b/src/easydiffraction/sample_models/sample_models.py index 8ecf712e..fd5b6039 100644 --- a/src/easydiffraction/sample_models/sample_models.py +++ b/src/easydiffraction/sample_models/sample_models.py @@ -36,12 +36,9 @@ def _apply_cell_symmetry_constraints(self): 'angle_alpha': self.cell.angle_alpha.value, 'angle_beta': self.cell.angle_beta.value, 'angle_gamma': self.cell.angle_gamma.value} - hm_ref = self.space_group.name.value - coord_code = self.space_group.setting.value - sg = ecr.get_space_group_by_hm_ref(hm_ref=hm_ref, - coord_code=coord_code) + space_group_name = self.space_group.name.value ecr.apply_cell_symmetry_constraints(cell=dummy_cell, - space_group_entry=sg) + name_hm=space_group_name) self.cell.length_a.value = dummy_cell['lattice_a'] self.cell.length_b.value = dummy_cell['lattice_b'] self.cell.length_c.value = dummy_cell['lattice_c'] @@ -50,10 +47,8 @@ def _apply_cell_symmetry_constraints(self): self.cell.angle_gamma.value = dummy_cell['angle_gamma'] def _apply_atomic_coordinates_symmetry_constraints(self): - hm_ref = self.space_group.name.value - coord_code = self.space_group.setting.value - sg = ecr.get_space_group_by_hm_ref(hm_ref=hm_ref, - coord_code=coord_code) + space_group_name = self.space_group.name.value + space_group_coord_code = self.space_group.setting.value for atom in self.atom_sites: dummy_atom = {"fract_x": atom.fract_x.value, "fract_y": atom.fract_y.value, @@ -63,7 +58,8 @@ def _apply_atomic_coordinates_symmetry_constraints(self): #raise ValueError("Wyckoff letter is not defined for atom.") continue ecr.apply_atom_site_symmetry_constraints(atom_site=dummy_atom, - space_group_entry=sg, + name_hm=space_group_name, + coord_code=space_group_coord_code, wyckoff_letter=wl) atom.fract_x.value = dummy_atom['fract_x'] atom.fract_y.value = dummy_atom['fract_y'] From 4992cb63a87f58c2202bd7317c2d4c72bdc1b72b Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Mon, 7 Apr 2025 11:24:11 +0200 Subject: [PATCH 13/17] Renamed data files for clarity and consistency --- ...o4_powder_neutron_cw.dat => d1a_pbso4.dat} | 0 ...0_V6x15_1p89_HI_T_300K.xye => hrpt_hs.xye} | 0 examples/data/{hrpt.xye => hrpt_lbco.xye} | 0 .../{pbso4_powder_xray.dat => lab_pbso4.dat} | 0 examples/data/{sepd.xye => sepd_si.xye} | 0 examples/data/{wish.xye => wish_ncaf.xye} | 0 examples/symmetry-constraints.py | 8 +-- .../fitting/test_joint-fit.py | 10 ++-- .../fitting/test_single-fit.py | 50 +++++++++++++------ 9 files changed, 44 insertions(+), 24 deletions(-) rename examples/data/{pbso4_powder_neutron_cw.dat => d1a_pbso4.dat} (100%) rename examples/data/{hrpt_HSO20_V6x15_1p89_HI_T_300K.xye => hrpt_hs.xye} (100%) rename examples/data/{hrpt.xye => hrpt_lbco.xye} (100%) rename examples/data/{pbso4_powder_xray.dat => lab_pbso4.dat} (100%) rename examples/data/{sepd.xye => sepd_si.xye} (100%) rename examples/data/{wish.xye => wish_ncaf.xye} (100%) diff --git a/examples/data/pbso4_powder_neutron_cw.dat b/examples/data/d1a_pbso4.dat similarity index 100% rename from examples/data/pbso4_powder_neutron_cw.dat rename to examples/data/d1a_pbso4.dat diff --git a/examples/data/hrpt_HSO20_V6x15_1p89_HI_T_300K.xye b/examples/data/hrpt_hs.xye similarity index 100% rename from examples/data/hrpt_HSO20_V6x15_1p89_HI_T_300K.xye rename to examples/data/hrpt_hs.xye diff --git a/examples/data/hrpt.xye b/examples/data/hrpt_lbco.xye similarity index 100% rename from examples/data/hrpt.xye rename to examples/data/hrpt_lbco.xye diff --git a/examples/data/pbso4_powder_xray.dat b/examples/data/lab_pbso4.dat similarity index 100% rename from examples/data/pbso4_powder_xray.dat rename to examples/data/lab_pbso4.dat diff --git a/examples/data/sepd.xye b/examples/data/sepd_si.xye similarity index 100% rename from examples/data/sepd.xye rename to examples/data/sepd_si.xye diff --git a/examples/data/wish.xye b/examples/data/wish_ncaf.xye similarity index 100% rename from examples/data/wish.xye rename to examples/data/wish_ncaf.xye diff --git a/examples/symmetry-constraints.py b/examples/symmetry-constraints.py index d4587df5..d5952715 100644 --- a/examples/symmetry-constraints.py +++ b/examples/symmetry-constraints.py @@ -18,7 +18,7 @@ ) # Create and configure sample model -model = SampleModel("hs020") +model = SampleModel("hs") model.space_group.name = "R -3 m" model.space_group.setting = "h" model.cell.length_a = 6.9 @@ -33,7 +33,7 @@ model.show_as_cif() # Create and configure experiment -expt = Experiment("hrpt", data_path="examples/data/hrpt_HSO20_V6x15_1p89_HI_T_300K.xye") +expt = Experiment("hrpt", data_path="examples/data/hrpt_hs.xye") expt.instrument.setup_wavelength = 1.89 expt.instrument.calib_twotheta_offset = 0.0 expt.peak.broad_gauss_u = 0.1 @@ -41,7 +41,7 @@ expt.peak.broad_gauss_w = 0.2 expt.peak.broad_lorentz_x = 0.0 expt.peak.broad_lorentz_y = 0 -expt.linked_phases.add("hs020", scale=0.5) +expt.linked_phases.add("hs", scale=0.5) expt.background.add(x=4.4196, y=500) expt.background.add(x=6.6207, y=500) expt.background.add(x=10.4918, y=500) @@ -70,7 +70,7 @@ # Define free parameters model.cell.length_a.free = True model.cell.length_c.free = True -expt.linked_phases["hs020"].scale.free = True +expt.linked_phases["hs"].scale.free = True expt.instrument.calib_twotheta_offset.free = True project.analysis.show_free_params() diff --git a/tests/functional_tests/fitting/test_joint-fit.py b/tests/functional_tests/fitting/test_joint-fit.py index a2d15c93..4a75adf1 100644 --- a/tests/functional_tests/fitting/test_joint-fit.py +++ b/tests/functional_tests/fitting/test_joint-fit.py @@ -23,7 +23,7 @@ def test_joint_fit_neutron_xray_pd_cwl_pbso4() -> None: # Create and configure experiments # Experiment 1: Neutron powder diffraction - expt1 = Experiment(id="npd", radiation_probe="neutron", data_path="examples/data/pbso4_powder_neutron_cw.dat") + expt1 = Experiment(id="npd", radiation_probe="neutron", data_path="examples/data/d1a_pbso4.dat") expt1.instrument.setup_wavelength = 1.91 expt1.instrument.calib_twotheta_offset = -0.1406 expt1.peak.broad_gauss_u = 0.139 @@ -45,7 +45,7 @@ def test_joint_fit_neutron_xray_pd_cwl_pbso4() -> None: expt1.background.add(x, y) # Experiment 2: X-ray powder diffraction - expt2 = Experiment(id="xrd", radiation_probe="xray", data_path="examples/data/pbso4_powder_xray.dat") + expt2 = Experiment(id="xrd", radiation_probe="xray", data_path="examples/data/lab_pbso4.dat") expt2.instrument.setup_wavelength = 1.540567 expt2.instrument.calib_twotheta_offset = -0.05181 expt2.peak.broad_gauss_u = 0.304138 @@ -84,10 +84,12 @@ def test_joint_fit_neutron_xray_pd_cwl_pbso4() -> None: expt1.linked_phases["pbso4"].scale.free = True expt2.linked_phases["pbso4"].scale.free = True - # Run refinement + # Start fitting project.analysis.fit() + project.analysis.show_meas_vs_calc_chart(expt_id="npd", x_min=62, x_max=66, show_residual=True) + project.analysis.show_meas_vs_calc_chart(expt_id="xrd", x_min=26, x_max=28, show_residual=True) - # Assert results + # Compare fit quality assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 21.1, decimal=1) diff --git a/tests/functional_tests/fitting/test_single-fit.py b/tests/functional_tests/fitting/test_single-fit.py index 027b6c00..14e0e7b3 100644 --- a/tests/functional_tests/fitting/test_single-fit.py +++ b/tests/functional_tests/fitting/test_single-fit.py @@ -21,7 +21,7 @@ def test_single_fit_neutron_pd_cwl_lbco() -> None: model.show_as_cif() # Create and configure experiment - expt = Experiment("npd", data_path="examples/data/hrpt.xye") + expt = Experiment("hrpt", data_path="examples/data/hrpt_lbco.xye") expt.instrument.setup_wavelength = 1.494 expt.instrument.calib_twotheta_offset = 0 expt.peak.broad_gauss_u = 0.1 @@ -47,7 +47,7 @@ def test_single_fit_neutron_pd_cwl_lbco() -> None: project.analysis.current_minimizer = "lmfit (leastsq)" # Compare measured and calculated patterns - project.analysis.show_meas_vs_calc_chart('npd', 65, 68) + project.analysis.show_meas_vs_calc_chart('hrpt', 65, 68) # ------------ 1st fitting ------------ @@ -61,7 +61,7 @@ def test_single_fit_neutron_pd_cwl_lbco() -> None: # Start fitting project.analysis.fit() - project.analysis.show_meas_vs_calc_chart('npd', 65, 68) + project.analysis.show_meas_vs_calc_chart('hrpt', 65, 68) # Compare fit quality assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 5.79, decimal=1) @@ -77,7 +77,7 @@ def test_single_fit_neutron_pd_cwl_lbco() -> None: # Start fitting project.analysis.fit() - project.analysis.show_meas_vs_calc_chart('npd', 65, 68) + project.analysis.show_meas_vs_calc_chart('hrpt', 65, 68) # Compare fit quality assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 4.41, decimal=1) @@ -93,8 +93,12 @@ def test_single_fit_neutron_pd_cwl_lbco() -> None: # Start fitting project.analysis.fit() - project.analysis.show_meas_vs_calc_chart('npd', 65, 68, show_residual=True) - project.analysis.show_meas_vs_calc_chart('npd', 38, 41, show_residual=True) + project.analysis.show_meas_vs_calc_chart('hrpt', 65, 68, show_residual=True) + project.analysis.show_meas_vs_calc_chart('hrpt', 38, 41, show_residual=True) + + # Show parameters + project.analysis.show_refinable_params() + project.analysis.show_free_params() # Compare fit quality assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 1.3, decimal=1) @@ -112,7 +116,7 @@ def test_single_fit_neutron_pd_tof_si() -> None: model.show_as_cif() # Create and configure experiment - expt = Experiment("npd", beam_mode="time-of-flight", data_path="examples/data/sepd.xye") + expt = Experiment("sepd", beam_mode="time-of-flight", data_path="examples/data/sepd_si.xye") expt.instrument.setup_twotheta_bank = 144.845 expt.instrument.calib_d_to_tof_offset = 0.0 expt.instrument.calib_d_to_tof_linear = 7476.91 @@ -140,7 +144,7 @@ def test_single_fit_neutron_pd_tof_si() -> None: project.analysis.current_minimizer = "lmfit (leastsq)" # Compare measured and calculated patterns - project.analysis.show_meas_vs_calc_chart('npd', 23200, 23700) + project.analysis.show_meas_vs_calc_chart('sepd', 23200, 23700) # ------------ 1st fitting ------------ @@ -152,7 +156,7 @@ def test_single_fit_neutron_pd_tof_si() -> None: # Start fitting project.analysis.fit() - project.analysis.show_meas_vs_calc_chart('npd', 23200, 23700) + project.analysis.show_meas_vs_calc_chart('sepd', 23200, 23700) # Compare fit quality assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 66.72, decimal=1) @@ -166,7 +170,7 @@ def test_single_fit_neutron_pd_tof_si() -> None: # Start fitting project.analysis.fit() - project.analysis.show_meas_vs_calc_chart('npd', 23200, 23700, show_residual=True) + project.analysis.show_meas_vs_calc_chart('sepd', 23200, 23700, show_residual=True) # Compare fit quality assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 3.38, decimal=1) @@ -185,7 +189,7 @@ def test_single_fit_neutron_pd_tof_si() -> None: # Start fitting project.analysis.fit() - project.analysis.show_meas_vs_calc_chart('npd', 23200, 23700, show_residual=True) + project.analysis.show_meas_vs_calc_chart('sepd', 23200, 23700, show_residual=True) # Compare fit quality assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 3.21, decimal=1) @@ -198,7 +202,11 @@ def test_single_fit_neutron_pd_tof_si() -> None: # Start fitting project.analysis.fit() - project.analysis.show_meas_vs_calc_chart('npd', 23200, 23700, show_residual=True) + project.analysis.show_meas_vs_calc_chart('sepd', 23200, 23700, show_residual=True) + + # Show parameters + project.analysis.show_refinable_params() + project.analysis.show_free_params() # Compare fit quality assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 3.19, decimal=1) @@ -221,7 +229,7 @@ def test_single_fit_neutron_pd_tof_ncaf() -> None: model.show_as_cif() # Create and configure experiment - expt = Experiment("npd", beam_mode="time-of-flight", data_path="examples/data/wish.xye") + expt = Experiment("wish", beam_mode="time-of-flight", data_path="examples/data/wish_ncaf.xye") expt.instrument.setup_twotheta_bank = 152.827 expt.instrument.calib_d_to_tof_offset = 0.0 expt.instrument.calib_d_to_tof_linear = 20770 @@ -278,7 +286,7 @@ def test_single_fit_neutron_pd_tof_ncaf() -> None: project.analysis.current_minimizer = "lmfit (leastsq)" # Compare measured and calculated patterns - project.analysis.show_meas_vs_calc_chart('npd', 37000, 40000) + project.analysis.show_meas_vs_calc_chart('wish', 37000, 40000) # ------------ 1st fitting ------------ @@ -290,7 +298,7 @@ def test_single_fit_neutron_pd_tof_ncaf() -> None: # Start fitting project.analysis.fit() - project.analysis.show_meas_vs_calc_chart('npd', 37000, 40000) + project.analysis.show_meas_vs_calc_chart('wish', 37000, 40000) # Compare fit quality assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 78.40, decimal=1) @@ -306,7 +314,17 @@ def test_single_fit_neutron_pd_tof_ncaf() -> None: # Start fitting project.analysis.fit() - project.analysis.show_meas_vs_calc_chart('npd', 37000, 40000, show_residual=True) + project.analysis.show_meas_vs_calc_chart('wish', 37000, 40000, show_residual=True) + + # Show parameters + project.analysis.show_refinable_params() + project.analysis.show_free_params() # Compare fit quality assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 15.59, decimal=1) + + +if __name__ == '__main__': + #test_single_fit_neutron_pd_cwl_lbco() + #test_single_fit_neutron_pd_tof_si() + test_single_fit_neutron_pd_tof_ncaf() \ No newline at end of file From e80de4c01538a276bfa046965522e2a19979d545 Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Mon, 7 Apr 2025 11:24:38 +0200 Subject: [PATCH 14/17] Adds sympy dependency --- requirements.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/requirements.txt b/requirements.txt index 5553f067..56c03173 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,6 +4,7 @@ bumps dfo-ls cryspy gemmi +sympy pandas tabulate asciichartpy From e63d66f9dd074c94ea77ee5a8cd334f6f08ddee2 Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Mon, 7 Apr 2025 11:24:50 +0200 Subject: [PATCH 15/17] Adds fitting test with symmetry constraints --- .../fitting/test_fit-with-symmetry.py | 133 ++++++++++++++++++ 1 file changed, 133 insertions(+) create mode 100644 tests/functional_tests/fitting/test_fit-with-symmetry.py diff --git a/tests/functional_tests/fitting/test_fit-with-symmetry.py b/tests/functional_tests/fitting/test_fit-with-symmetry.py new file mode 100644 index 00000000..5dd66d5b --- /dev/null +++ b/tests/functional_tests/fitting/test_fit-with-symmetry.py @@ -0,0 +1,133 @@ +from numpy.testing import assert_almost_equal + +from easydiffraction import ( + Project, + SampleModel, + Experiment +) + + +def test_fit_neutron_pd_cwl_hs() -> None: + # Create and configure sample model + model = SampleModel("hs") + model.space_group.name = "R -3 m" + model.space_group.setting = "h" + model.cell.length_a = 6.9 + model.cell.length_c = 14.1 + model.atom_sites.add("Zn", "Zn", 0, 0, 0.5, wyckoff_letter="b", b_iso=0.5) + model.atom_sites.add("Cu", "Cu", 0.5, 0, 0, wyckoff_letter="e", b_iso=0.5) + model.atom_sites.add("O", "O", 0.21, -0.21, 0.06, wyckoff_letter="h", b_iso=0.5) + model.atom_sites.add("Cl", "Cl", 0, 0, 0.197, wyckoff_letter="c", b_iso=0.5) + model.atom_sites.add("H", "2H", 0.13, -0.13, 0.08, wyckoff_letter="h", b_iso=0.5) + model.show_as_cif() + model.apply_symmetry_constraints() + model.show_as_cif() + + # Create and configure experiment + expt = Experiment("hrpt", data_path="examples/data/hrpt_hs.xye") + expt.instrument.setup_wavelength = 1.89 + expt.instrument.calib_twotheta_offset = 0.0 + expt.peak.broad_gauss_u = 0.1 + expt.peak.broad_gauss_v = -0.2 + expt.peak.broad_gauss_w = 0.2 + expt.peak.broad_lorentz_x = 0.0 + expt.peak.broad_lorentz_y = 0 + expt.linked_phases.add("hs", scale=0.5) + expt.background.add(x=4.4196, y=500) + expt.background.add(x=6.6207, y=500) + expt.background.add(x=10.4918, y=500) + expt.background.add(x=15.4634, y=500) + expt.background.add(x=45.6041, y=500) + expt.background.add(x=74.6844, y=500) + expt.background.add(x=103.4187, y=500) + expt.background.add(x=121.6311, y=500) + expt.background.add(x=159.4116, y=500) + expt.show_as_cif() + + # Create project and add sample model and experiments + project = Project() + project.sample_models.add(model) + project.experiments.add(expt) + + # Set calculator, minimizer and refinement strategy + project.analysis.current_calculator = "cryspy" + project.analysis.current_minimizer = "lmfit (leastsq)" + + # Compare measured and calculated patterns + project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51) + + # ------------ 1st fitting ------------ + + # Define free parameters + model.cell.length_a.free = True + model.cell.length_c.free = True + expt.linked_phases["hs"].scale.free = True + expt.instrument.calib_twotheta_offset.free = True + project.analysis.show_free_params() + + # Start fitting + project.analysis.fit() + project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51) + + # Compare fit quality + assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 51.57, decimal=1) + + # ------------ 2nd fitting ------------ + + # Define free parameters + expt.peak.broad_gauss_u.free = True + expt.peak.broad_gauss_v.free = True + expt.peak.broad_gauss_w.free = True + expt.peak.broad_lorentz_x.free = True + for point in expt.background: + point.y.free = True + project.analysis.show_free_params() + + # Start fitting + project.analysis.fit() + project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51) + + # Compare fit quality + assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 12.41, decimal=1) + + # ------------ 3rd fitting ------------ + + # Define free parameters + model.atom_sites['O'].fract_x.free = True + model.atom_sites['O'].fract_z.free = True + model.atom_sites['Cl'].fract_z.free = True + model.atom_sites['H'].fract_x.free = True + model.atom_sites['H'].fract_z.free = True + project.analysis.show_free_params() + + # Start fitting + project.analysis.fit() + project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51) + + # Compare fit quality + assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 4.34, decimal=1) + + # ------------ 3rd fitting ------------ + + # Define free parameters + model.atom_sites['Zn'].b_iso.free = True + model.atom_sites['Cu'].b_iso.free = True + model.atom_sites['O'].b_iso.free = True + model.atom_sites['Cl'].b_iso.free = True + model.atom_sites['H'].b_iso.free = True + project.analysis.show_free_params() + + # Start fitting + project.analysis.fit() + project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51, show_residual=True) + + # Show parameters + project.analysis.show_refinable_params() + project.analysis.show_free_params() + + # Compare fit quality + assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 2.11, decimal=1) + + +if __name__ == '__main__': + test_fit_neutron_pd_cwl_hs() \ No newline at end of file From 9ad8fa9e91a572e75e5d33e799fd6bab2d361b6f Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Mon, 7 Apr 2025 11:27:28 +0200 Subject: [PATCH 16/17] Clean up --- examples/symmetry-constraints.py | 4 +- .../crystallography/crystallography.py | 3 - .../crystallography/space_group_database.py | 79 ------------------- .../space_group_lookup_tables.py | 17 ---- .../fitting/test_fit-with-symmetry.py | 5 +- .../fitting/test_single-fit.py | 12 --- 6 files changed, 2 insertions(+), 118 deletions(-) delete mode 100644 src/easydiffraction/crystallography/space_group_database.py delete mode 100644 src/easydiffraction/crystallography/space_group_lookup_tables.py diff --git a/examples/symmetry-constraints.py b/examples/symmetry-constraints.py index d5952715..cedef220 100644 --- a/examples/symmetry-constraints.py +++ b/examples/symmetry-constraints.py @@ -128,10 +128,8 @@ # Start fitting project.analysis.fit() -project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51) - project.analysis.show_refinable_params() -project.analysis.show_free_params() +project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51, show_residual=True) # Compare fit quality assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 2.11, decimal=1) diff --git a/src/easydiffraction/crystallography/crystallography.py b/src/easydiffraction/crystallography/crystallography.py index 79c4f7f9..30a87a47 100644 --- a/src/easydiffraction/crystallography/crystallography.py +++ b/src/easydiffraction/crystallography/crystallography.py @@ -3,8 +3,6 @@ from cryspy.A_functions_base.function_2_space_group import ( get_crystal_system_by_it_number, get_it_number_by_name_hm_short, - get_it_number_by_name_hm_full, - get_it_number_it_coordinate_system_codes_by_name_hm_extended, get_symop_pcentr_multiplicity_letter_site_symmetry_coords_xyz_2 ) @@ -105,7 +103,6 @@ def apply_atom_site_symmetry_constraints(atom_site: dict, x, y, z = symbols("x y z") symbols_xyz = (x, y, z) - for i, axis in enumerate(axes): symbol = symbols_xyz[i] is_free = any(symbol in expr.free_symbols for expr in parsed_exprs) diff --git a/src/easydiffraction/crystallography/space_group_database.py b/src/easydiffraction/crystallography/space_group_database.py deleted file mode 100644 index 6f1180a1..00000000 --- a/src/easydiffraction/crystallography/space_group_database.py +++ /dev/null @@ -1,79 +0,0 @@ -space_group_database = { - (62, "cab"): { - "IT_number": 62, - "setting": 3, - "IT_coordinate_system_code": "cab", - "name_H-M_ref": "P n m a", - "name_H-M_full": "P 21/n 21/m 21/a", - "name_H-M_alt": "P b n m", - "name_Hall": "-P 2c 2ab", - "crystal_system": "orthorhombic", - "Wyckoff_positions": { - "d": { - "multiplicity": 8, - "site_symmetry": "1", - "coords_xyz": [ - "(x,y,z)", "(x+1/2,-y+1/2,-z)", "(-x,-y,z+1/2)", "(-x+1/2,y+1/2,-z+1/2)", - "(-x,-y,-z)", "(-x+1/2,y+1/2,z)", "(x,y,-z+1/2)", "(x+1/2,-y+1/2,z+1/2)" - ] - }, - "c": { - "multiplicity": 4, - "site_symmetry": ".m.", - "coords_xyz": [ - "(x,y,1/4)", "(x+1/2,-y+1/2,3/4)", "(-x,-y,3/4)", "(-x+1/2,y+1/2,1/4)" - ] - }, - "b": { - "multiplicity": 4, - "site_symmetry": "-1", - "coords_xyz": [ - "(1/2,0,0)", "(0,1/2,0)", "(1/2,0,1/2)", "(0,1/2,1/2)" - ] - }, - "a": { - "multiplicity": 4, - "site_symmetry": "-1", - "coords_xyz": [ - "(0,0,0)", "(1/2,1/2,0)", "(0,0,1/2)", "(1/2,1/2,1/2)" - ] - } - } - }, - (199, "1"): { - "IT_number": 199, - "setting": 1, - "IT_coordinate_system_code": "1", - "name_H-M_ref": "I 21 3", - "name_H-M_full": "I 21 3", - "name_H-M_alt": "I 21 3", - "name_Hall": "I 2 2 3", - "crystal_system": "cubic", - "Wyckoff_positions": { - "c": { - "multiplicity": 24, - "site_symmetry": "1", - "coords_xyz": [ - "(x,y,z)", "(-x+1/2,-y,z+1/2)", "(-x,y+1/2,-z+1/2)", "(x+1/2,-y+1/2,-z)", - "(z,x,y)", "(z+1/2,-x+1/2,-y)", "(-z+1/2,-x,y+1/2)", "(-z,x+1/2,-y+1/2)", - "(y,z,x)", "(-y,z+1/2,-x+1/2)", "(y+1/2,-z+1/2,-x)", "(-y+1/2,-z,x+1/2)" - ] - }, - "b": { - "multiplicity": 12, - "site_symmetry": "2..", - "coords_xyz": [ - "(x,0,1/4)", "(-x+1/2,0,3/4)", "(1/4,x,0)", - "(3/4,-x+1/2,0)", "(0,1/4,x)", "(0,3/4,-x+1/2)" - ] - }, - "a": { - "multiplicity": 8, - "site_symmetry": ".3.", - "coords_xyz": [ - "(x,x,x)", "(-x+1/2,-x,x+1/2)", "(-x,x+1/2,-x+1/2)", "(x+1/2,-x+1/2,-x)" - ] - } - } - } -} \ No newline at end of file diff --git a/src/easydiffraction/crystallography/space_group_lookup_tables.py b/src/easydiffraction/crystallography/space_group_lookup_tables.py deleted file mode 100644 index 7492dd13..00000000 --- a/src/easydiffraction/crystallography/space_group_lookup_tables.py +++ /dev/null @@ -1,17 +0,0 @@ -lookup_by_hm_ref_index = { - ("P n m a", "cab"): (62, "cab"), - ("P n m a", None): (62, "cab"), - ("I 21 3", "1"): (199, "1"), - ("I 21 3", None): (199, "1"), -} - -lookup_by_hm_alt_index = { - "P b n m": (62, "cab"), - "P n m a": (62, "cab"), - "I 21 3": (199, "1"), -} - -lookup_by_hall_symbol_index = { - "-P 2c 2ab": (62, "cab"), - "I 2 2 3": (199, "1"), -} \ No newline at end of file diff --git a/tests/functional_tests/fitting/test_fit-with-symmetry.py b/tests/functional_tests/fitting/test_fit-with-symmetry.py index 5dd66d5b..9d72632e 100644 --- a/tests/functional_tests/fitting/test_fit-with-symmetry.py +++ b/tests/functional_tests/fitting/test_fit-with-symmetry.py @@ -119,11 +119,8 @@ def test_fit_neutron_pd_cwl_hs() -> None: # Start fitting project.analysis.fit() - project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51, show_residual=True) - - # Show parameters project.analysis.show_refinable_params() - project.analysis.show_free_params() + project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51, show_residual=True) # Compare fit quality assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 2.11, decimal=1) diff --git a/tests/functional_tests/fitting/test_single-fit.py b/tests/functional_tests/fitting/test_single-fit.py index 14e0e7b3..98f5373f 100644 --- a/tests/functional_tests/fitting/test_single-fit.py +++ b/tests/functional_tests/fitting/test_single-fit.py @@ -96,10 +96,6 @@ def test_single_fit_neutron_pd_cwl_lbco() -> None: project.analysis.show_meas_vs_calc_chart('hrpt', 65, 68, show_residual=True) project.analysis.show_meas_vs_calc_chart('hrpt', 38, 41, show_residual=True) - # Show parameters - project.analysis.show_refinable_params() - project.analysis.show_free_params() - # Compare fit quality assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 1.3, decimal=1) @@ -204,10 +200,6 @@ def test_single_fit_neutron_pd_tof_si() -> None: project.analysis.fit() project.analysis.show_meas_vs_calc_chart('sepd', 23200, 23700, show_residual=True) - # Show parameters - project.analysis.show_refinable_params() - project.analysis.show_free_params() - # Compare fit quality assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 3.19, decimal=1) @@ -316,10 +308,6 @@ def test_single_fit_neutron_pd_tof_ncaf() -> None: project.analysis.fit() project.analysis.show_meas_vs_calc_chart('wish', 37000, 40000, show_residual=True) - # Show parameters - project.analysis.show_refinable_params() - project.analysis.show_free_params() - # Compare fit quality assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 15.59, decimal=1) From 8bbadfbe19089511ed632ad60367cfc34e6e79f9 Mon Sep 17 00:00:00 2001 From: Andrew Sazonov Date: Mon, 7 Apr 2025 11:51:29 +0200 Subject: [PATCH 17/17] Clean up [ci skip] --- examples/symmetry-constraints.py | 135 ------------------------------- 1 file changed, 135 deletions(-) delete mode 100644 examples/symmetry-constraints.py diff --git a/examples/symmetry-constraints.py b/examples/symmetry-constraints.py deleted file mode 100644 index cedef220..00000000 --- a/examples/symmetry-constraints.py +++ /dev/null @@ -1,135 +0,0 @@ -""" -Joint Refinement Example (Advanced API) - -This example demonstrates a more flexible and advanced usage of the EasyDiffraction -library by explicitly creating and configuring some objects. It is more suitable for -users comfortable with Python programming and those interested in custom workflows. -""" - -#import difflib # for fuzzy matching - -from numpy.testing import assert_almost_equal - - -from easydiffraction import ( - Project, - SampleModel, - Experiment -) - -# Create and configure sample model -model = SampleModel("hs") -model.space_group.name = "R -3 m" -model.space_group.setting = "h" -model.cell.length_a = 6.9 -model.cell.length_c = 14.1 -model.atom_sites.add("Zn", "Zn", 0, 0, 0.5, wyckoff_letter="b", b_iso=0.5) -model.atom_sites.add("Cu", "Cu", 0.5, 0, 0, wyckoff_letter="e", b_iso=0.5) -model.atom_sites.add("O", "O",0.21, -0.21, 0.06, wyckoff_letter="h", b_iso=0.5) -model.atom_sites.add("Cl", "Cl", 0, 0, 0.197,wyckoff_letter="c", b_iso=0.5) -model.atom_sites.add("H", "2H",0.13, -0.13, 0.08, wyckoff_letter="h", b_iso=0.5) -model.show_as_cif() -model.apply_symmetry_constraints() -model.show_as_cif() - -# Create and configure experiment -expt = Experiment("hrpt", data_path="examples/data/hrpt_hs.xye") -expt.instrument.setup_wavelength = 1.89 -expt.instrument.calib_twotheta_offset = 0.0 -expt.peak.broad_gauss_u = 0.1 -expt.peak.broad_gauss_v = -0.2 -expt.peak.broad_gauss_w = 0.2 -expt.peak.broad_lorentz_x = 0.0 -expt.peak.broad_lorentz_y = 0 -expt.linked_phases.add("hs", scale=0.5) -expt.background.add(x=4.4196, y=500) -expt.background.add(x=6.6207, y=500) -expt.background.add(x=10.4918, y=500) -expt.background.add(x=15.4634, y=500) -expt.background.add(x=45.6041, y=500) -expt.background.add(x=74.6844, y=500) -expt.background.add(x=103.4187, y=500) -expt.background.add(x=121.6311, y=500) -expt.background.add(x=159.4116, y=500) -expt.show_as_cif() - -# Create project and add sample model and experiments -project = Project() -project.sample_models.add(model) -project.experiments.add(expt) - -# Set calculator, minimizer and refinement strategy -project.analysis.current_calculator = "cryspy" -project.analysis.current_minimizer = "lmfit (leastsq)" - -# Compare measured and calculated patterns -project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51) - -# ------------ 1st fitting ------------ - -# Define free parameters -model.cell.length_a.free = True -model.cell.length_c.free = True -expt.linked_phases["hs"].scale.free = True -expt.instrument.calib_twotheta_offset.free = True -project.analysis.show_free_params() - -# Start fitting -project.analysis.fit() -project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51) - -# Compare fit quality -assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 51.57, decimal=1) - -# ------------ 2nd fitting ------------ - -# Define free parameters -expt.peak.broad_gauss_u.free = True -expt.peak.broad_gauss_v.free = True -expt.peak.broad_gauss_w.free = True -expt.peak.broad_lorentz_x.free = True -for point in expt.background: - point.y.free = True -project.analysis.show_free_params() - -# Start fitting -project.analysis.fit() -project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51) - -# Compare fit quality -assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 12.41, decimal=1) - -# ------------ 3rd fitting ------------ - -# Define free parameters -model.atom_sites['O'].fract_x.free = True -model.atom_sites['O'].fract_z.free = True -model.atom_sites['Cl'].fract_z.free = True -model.atom_sites['H'].fract_x.free = True -model.atom_sites['H'].fract_z.free = True -project.analysis.show_free_params() - -# Start fitting -project.analysis.fit() -project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51) - -# Compare fit quality -assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 4.34, decimal=1) - -# ------------ 3rd fitting ------------ - -# Define free parameters -model.atom_sites['Zn'].b_iso.free = True -model.atom_sites['Cu'].b_iso.free = True -model.atom_sites['O'].b_iso.free = True -model.atom_sites['Cl'].b_iso.free = True -model.atom_sites['H'].b_iso.free = True -project.analysis.show_free_params() - -# Start fitting -project.analysis.fit() -project.analysis.show_refinable_params() -project.analysis.show_meas_vs_calc_chart('hrpt', 48, 51, show_residual=True) - -# Compare fit quality -assert_almost_equal(project.analysis.fit_results.reduced_chi_square, 2.11, decimal=1)